README file for VMD 1.9 --------------------------------------------------------------------------- What is VMD? See also http://www.ks.uiuc.edu/Research/vmd/ --------------------------------------------------------------------- VMD is designed for the visualization and analysis of biological systems such as proteins, nucleic acids, lipid bilayer assemblies, etc. It may be used to view more general molecules, as VMD can read standard Protein Data Bank (PDB) files and display the contained structure. VMD provides a wide variety of methods for rendering and coloring molecule. VMD can be used to animate and analyze the trajectory of molecular dynamics (MD) simulations, and can interactively manipulate molecules being simulated on remote computers (Interactive MD). VMD has many features, which include: o No limit on the number of molecules, atoms, residues or number of trajectory frames, except available memory. o Many molecular and volumetric rendering and coloring methods. o Extensive atom selection language with boolean and algebraic operators, regular expressions, distance based selections, and more. o Extensive graphical and text interfaces to Tcl, Tk, and Python to provide powerful scripting and analysis capabilities. o High-quality on-screen rendering using OpenGL programmable shading on advanced graphics accelerators. o Stereoscopic display with shutter glasses, autostereoscopic flat panels, anaglyph stereo glasses, and side-by-side stereo viewing. o 3-D interactive control through the use of joysticks, Spaceballs, haptic devices and other advanced input devices, with support for Virtual Reality Peripheral Network (VRPN). o An extensible plugin-based file loading system with support for popular formats such as AMBER, CHARMM, Gromacs, NAMD, PDB, X-PLOR, and many others, as well as automatic conversion through Babel. o Export displayed scene to external rendering formats including POV-Ray, Raster3D, RenderMan, Gelato, Tachyon, Wavefront, as well as STL or VRML2 files for 3-D printing. o Integration of multiple sequence alignment and evolutionary analysis tools, in the form of the Multiseq plugin and its related toolset. o Perform interactive molecular dynamics (IMD) simulations using NAMD, Protomol, or other programs as simulation back-ends. o Integration with the program NAMD, a fast, parallel, and scalable molecular dynamics program developed in conjunction with VMD. See the NAMD page for details: http://www.ks.uiuc.edu/Research/namd o Integration with the BioCoRE collaborative research environment. VMD can "publish" molecular graphics scripts to BioCoRE, so that collaborators can work together over the internet. See the BioCoRE page for details: http://www.ks.uiuc.edu/Research/biocore What's new in VMD 1.9? ---------------------- User documentation updates o Minor improvements and corrections to the VMD User's Guide, added documentation for new commands and environment variables. Performance Improvements o The "Orbital" representation can now utilize multiple GPUs to greatly accelerate rendering. o New CUDA-based multi-GPU radial distribution function calculation, with the "measure rdf" command. o Added initial support for OpenCL accelerated molecular orbital rendering (source-based distributions of VMD). o Added initial support for OpenCL accelerated electrostatic potential calculations for "volmap coulomb" (source-based distributions of VMD). General Improvements o Added "tooltip" mouse-over help and tips to all of the VMD graphical user interface controls. o Global label properties are now located in a new tab within the labels window. New rendering and display features o Updated default representation resolutions for modern era GPUs, depth cueing is now enabled by default on platforms that support it. o New and updated stereoscopic display support: The left and right eyes can now be swapped in any stereo mode, so the old "Reverse" mode names have now been eliminated. Anaglyph stereo no longer requires a GPU with support for quad-buffered stereo. Added support for column-interleaved and checkerboard stereo modes. Reorganized stereo controls in the VMD display menu. o The "display resize" and "display reposition" commands are now implemented on all platforms. o Increased interactive molecular dynamics force arrow scaling constant by a factor of 3. o Added a new angle-modulated transparency material property that works similarly to the way Raster3D renders transparent surfaces. The angle-modulated material property is supported in the VMD OpenGL Window, and in Raster3D and Tachyon renderings. o Added new "thickness" controls for atom label text and for user-defined text drawn using the "graphics" or "draw" commands. Added code to draw points at font stroke vector endpoints, to prevent "cracks" from appearing when larger line widths are used. o VMD atom labels and text are now exported to most scene formats including Gelato, Raster3D, POV-Ray, RenderMan, Tachyon, VRML2/VRML97, and X3D. o Several of the scene file formats exported by VMD now take advantage of more efficient triangle mesh storage methods that reduce file sizes to less than half of their previous size, and in some cases reduce file sizes by a factor of ten. The scene file formats that benefit from these improvements include RenderMan .rib, VRML2/VRML97 .wrl, Wavefront .obj files, and X3D .x3d files. o The format of VMD scenes exported to the RenderMan .RIB format has been updated for the latest versions of PIXAR Photorealistic RenderMan, and have also been tested with Aqsis, an open source RenderMan compatible renderer. o Added support for the XML-encoded form of X3D files (.x3d) which are a modernized form of VRML2/VRML97 scenes. Added support for gradient backgrounds to VRML2/VRML97 and X3D scenes using an infinite sky sphere. Both formats now export point and line geometry as well as solid geometry. o POV-Ray renderings now support gradient backgrounds for perspective views using the POV-Ray sky sphere feature. VMD scenes using orthographic views or those containing depth cueing will not show the background gradient due to limitations in POV-Ray itself. o Tachyon renderings now support gradient backgrounds for both perspective and orthographic views, and have been updated to more faithfully implement all of the VMD depth cueing modes. o Added export of representation group hiearchy and material properties to Wavefront .obj files. Added export of material properties to a matching Wavefront .mtl file by default. Corrected the polygon winding order for spheres and cylinders, needed for correct two-sided lighting in Maya. New and improved analysis commands o New "measure rdf" command provides fast GPU-accelerated calculation of radial distribution functions. o New "measure cluster" command implements a cluster analysis using the quality threshold (OT) algorithm. The implementation is multi-threaded and optimized for determining a small number of the largest clusters for very long trajectories. o The "volmap coulombmsm" command now supports both periodic and non-periodic simulation cells (both are also GPU-accelerated). o New "parallel" commands enable MPI-based compilations of VMD to perform batch mode parallel analysis jobs on distributed memory clusters and supercomputers. The "parallel" commands also exist within non-MPI versions of VMD, so that any analysis script can be written to automatically adapt to parallel execution. Parallel collective operations (allgather, allreduce, barrier) make it possible for parallel analysis jobs to process results without using hand-written message passing code and without exchanging data through the filesystem. Other features and improvements o Depth cueing is now enabled by default on platforms that support it. o The Save Coordinates menu default to the PDB file type. o The Label menu accepts several new format specifiers to add the atom coordinates, molecule name or index, trajectory frame, trajectory timestep physical time, user-applied force magnitude, and conformation identifier. o The VMD "stage" object can now be made arbitrarily large or small by the user, and can be repositioned by the Mouse in "move molecule" mode, in the same way that the Axes can be. The Stage is now drawn with lighting enabled, and will pick up shadows and ambient occlusion lighting, making it much useful as a backdrop for high quality molecular renderings. o Enabled a much broader range of keycodes in the OpenGL graphics window, allowing VMD user-defined hotkeys to be associated with the 12 function keys, keypad arrows, page-up/down, home, end, insert, and delete. o Enable mirror specular reflections for Tachyon renderings when the environment variable VMDTACHYONMIRRORSPECULAR is set. Implemented a user-definable threshold for enabling mirror reflection in Tachyon renderings when the Phong exponent goes beyond a specified limit. The VMDTACHYONPHONGSPECTHRESH variable can be set to choose a different threshold for enabling mirror reflection. o Added VMDCUDADEVICEMASK environment variable to give the user explicit control over the subset of GPUs that VMD is allowed to use. o Added VMDNOCUDA environment variable to allow the user to prevent VMD from using GPUs for non-rendering purposes. o If .vmdsensors file VRPN device names contains @tcp, we enforce tcp-only connections which can be easily punched through firewalls and tunneled with ssh. o Changed the default behavior of X-Windows based VMD builds to automatically run VMD in text mode if the DISPLAY environment variable is unset. o Updated VMD to support Tcl 8.6 API changes. o Updated VMD to support FLTK 1.1.10 o Updated VMD to support CUDA 3.x, and 4.0 New and improved plugins and extensions o autoimd: Added support for the new chirality and cispeptide plugins. o autoionize: Added ion placement modes to neutralize the system or set a salt concentration. Added support for all ions in the CHARMM force field. Automatically set segname of ions to be placed to avoid duplicated segments. o autopsf: Corrected the behaviour of "reset autopsf". Removed the ability to use -nofailedguess. o chirality: New plugin for identifying, visualizing, fixing, and preventing chirality errors in molecular dynamics simulations. o cispeptide: New plugin for identifying, visualizing, fixing, and preventing cis peptide bonds in molecular dynamics simulations. o clonerep: bug fix enabling use of atom selections containing perl regular expressions. o colorscalebar: Maintains current views of all molecules when the scale bar is added. New GUI option to select molecule and representation to use with the autoscale option. o gofrgui: add checkbox to gofr GUI to allow selecting the CUDA version. o hbonds: added warning about overlapping selections in measure hbonds. o idatm: modified molefacure and runante to be able to run geometry optimisations using sqm. o ilstools: Bug fix for package require ordering problem, misc graphical interface improvements. o mdffplugin: New plugin that implements the Molecular Dynamics Flexible Fitting (MDFF) simulation preparation and analysis tools for docking all-atom structures with Cryo-EM density maps. o membrane: added the option to build CHARMM36 bilayers. o molefacture: Update molefacture to use the new ambertools version of antechamber. Added a button to the main molefacture UI that allows the user to set the segname, resname and chain for the current molecule. Separated the commands for assigning atom-types and bond orders with those that assign charges and calculate optimised geometries. Molefacture tries to find antechamber and sqm upon loading and disables menu options that require them if they aren't found. Added build menu options to run geometry optimisations with SQM (requires modified SQM). Added build menu options to calculate and assign charges using antechamber+SQM (requires modified sqm & antechamber). Added a settings menu option to specify which atomtype definition file to use for atom-typing (requires modified antechamber). Modified the .top writing function so that the user is notified that duplicate atom names are present and is asked whether she wants molefacture to automatically fix this. Added charmmified OPLS atom types and typing rules. The total charge is now modifiable with a new set total charge button. This makes geometry optimisations possible when molefacture incorrectly guesses the formal charges (due to fractional bond orders). New command in file menu to write psf and pdb files for the molecule (only generates the correct impropers if OPLS atom types are assigned). If you provide a parameter file, this command can also search it to produce a smaller file containing only the required parameters for the molecule. This is required for OPLS to reduce the 20MB parameter file to something manageable. o multiplot: Applied Toni Giorgino's patch to allow the user to export the dataset to simple ASCII files, either as a sequence of datasets, or in a "wide" matrix format (if the X vectors are the same). o multiseq: Support for the multiple sequence alignment tool MAFFT which offers fast multiple alignment methods and can be used anywhere within MultiSeq that clustalw is used. The desired title shown for a sequence can now be changed from simply 'Sequence Name' to a variety of options including Scientific Name, Common Name, Domain of Life, and many others. RMSD and Q calculations work for RNA as well as DNA. Numerous memory footprint reductions and speed improvements particularly beneficial for loading large numbers (e.g. 100,000) of sequences. Lines can now be chosen as a rep type for a given sequence or for highlighting. MultiSeq can load dot-bracket notation files for a given sequence and they can be viewed in the main window. o namdgui: Fixed menubutton behavior for MacOS X. o nanotube: Automatically assign bond types and make certain that bonds are written out. Now uses topotools plugin instead of writing temporary files. Bug fixes and strict parameter checking. Merged the graphene plugin with nanotube plugin. Added support for building full topology files through topotools. o pbctools: New compound options for 'pbc join': fragment, connected. Alternate joining algorithm based on bondlists. slower, but can handle arbitrarily long molecules. The 'pbc box' command now allows the drawing material to be set. Several bug fixes. o plumed: Added PLUMED-based collective variable analysis plugin contributed by Toni Giorgino. o psfgen: Added "psfcontext mixedcase" and "psfcontext allcaps" commands to allow files to be read in a case-preserving manner. Fixed bug in writing patches to psf file after deleting atoms. o qmtool: Fixed menubutton behavior for MacOS X. o readcharmmtop: New CHARMM topology for lipids. o readcharmmpar: New CHARMM topology for lipids. o rnaview: Now ships with external program RNAView that calculates base pairing information from nucleic acid structures (used by the ssrestraints plugin). Applied Axel's patch to correct output formatting. o runante: Scale CM1 charges by 1.14 (Jorgensen's recommendation) Checks for antechamber using exectool and with the AMBERHOME environment variable. Fixed the AM1BCC charge calculation and modified exec commands to catch the output from antechamber. o solvate: Fixed a bug that could lead to incomplete overage of the solute. o ssrestraints: Fixed parsing of -hbonds option. Added support for Amber RNA residue names. o symmetrytool: Fixed menubutton behavior for MacOS X. o timeline: Much faster startup, especially improved for large trajectories. Improved printing outputs complete display (axes, threshold graphs, labels, highlight details, optional cursor highlight) to encapsulated Postscript (.eps) files. Added colorbar scale, coloring range autoscaling, and choice between grayscale and rainbow color scales. Additional built-in analysis (RMSF, RMSD, SASA) methods, and analysis parameter entry from GUI. Added live threshold count (updates as selection highlight moves). New mouse control scheme for easier use with trackpads and 2-button mice. Added proper handlng of molecule segment names. Option to restrict analysis/display to part of a molecule using selection string. Improvements to data file format. Can handle data files with more data frames than loaded trajectory frames (useful for long trajectories). Various improvements to GUI, including timebar and 3D structure highlight. o topotools: many bugfixes from version 1.0. Determination of angle, dihedral and (some) improper definitions (with adjustable tolerance) from bond topology data. Heuristic determination of atom properties based on other information (e.g. element from mass, mass from element, element from name, radius from element, etc). Support for reading and writing of xmol/xyz style trajectories with a varying number of atoms (when bonds are not displayed). Support for writing synthetic gromacs topology files for use with gromacs analysis tools for non-gromacs trajectories. Support for reading data files containing non-orthogonal cells. Stricter checking for CGCMM extensions to the LAMMPS data file format. Encode the intended atom_style setting in data file header. Parse and compare - if present - against requested atom style on reading. - write commented out Coeff sections to data files to provide hints on which coefficients need to be set. o vdna: Updated with Tom Bishop's latest version. Fixed uninitialized data preventing the "plot parameters" button from being used before drawing the DNA. o viewchangerender: Plugin version of the popular VMD script for making movies that contain complex transitions. The plugin includes both text and graphical interfaces, and can be used in concert with the vmdmovie plugin. o viewmaster: Updated handling of material properties for new features. o vmddebug: New plugin and its first submodule, atomselect, for helping script developers catch atom selection "leaks" and similar bugs. o vmdmovie: Added support for both MPEG-1 and MPEG-2 formats using mencoder. Added support for current ffmpeg 0.5.x encoder on Unix platforms. Added 4 new FFMPEG encoding targets including MPEG-1, MPEG-2, and both NTSC and PAL forms of MPEG-2 DVD profiles. Fixed ppmtompeg frame counters to handle movie sequences with up to 100000 frames. o volutil: New plugin for processing Cryo-EM volumetric density map files, used by the MDFF plugin. New and improved file import and export o Abinit plugin: Added Rob Lahaye's VMD plugin for reading ABINIT files. o CAR plugin: Fixed potential memory corruption on .car files with more than 9 molecules. o AMBER CRD plugin: corrected formatting of box dimensions when writing CRD files from VMD. o CHARMM COR plugin: prevent uninitialized variables on some platforms. o DCD plugin: Detect and works around bugs in DCD files written by older versions of Vega ZZ which generated incorrectly formatted DCD trajectories. o DMS plugin: New plugin for reading DMS files, provided by DESRES. o DTR plugin: Misc bug fixes, latest version provided by DESRES. o HOOMD plugin: Added support for new acceleration field. The HOOMD plugin is now compiled by default on Linux and MacOS X. o LAMMPS plugin: allow remapping of fields via an environment variable. Added read support for triclinic simulation cells. Improved precision of PBC box angle computation. Improved support for reading of atoms sorted by their atom id. Added support for writing trajectory files of non-orthogonal cells. o MAEFF plugin: Latest version of Maestro plugin from DESRES. This version adds support for Smiles strings. o MDF plugin: handle MDF files containing more than 9 molecules, catch and gracefully handle any problems with bond parsing. o Molden plugin: Fixed memory leak, and improved documentation. Enable splitting SP-shells into one S- and one P-shell. o PSF plugin: Added preliminary parsing of CHARMM PSF files constructed for the Drude polarizable forcefield. Gracefully handle PSF files that contain missing or incorrect bond information. o PQR plugin: now handles HETATM records correctly, and gracefully handles some varations in file structure Bug Fixes o Fixed a MacOS X CUDA library redistribution issue that was preventing many MacOS X users from being able to use CUDA if they didn't have a driver version identical to that used in the VMD compilation. o The latest version 1.1.10 of the FLTK GUI toolkit used by VMD fixes a number of GUI bugs that previously affected the MacOS X platform. o Fixed "measure dipole" when the "-masscenter" flag is used. Was dividing by total mass times the number of selected atoms, but should have only been dividing by total mass. o The Python global interpreter lock (GIL) is held when callbacks are invoked to prevent problems with Tk events come in. o Fixed incorrect material property tags for Python materials interface. o Fixed a potential memory corruption problem in "within" selections on systems with fewer atoms than CPU cores. o Fixed the polygon winding order for two-radius cones for polygonal renderers. o Updated atom picking logic to take into account clipping of displayed geometry (and thus associated pick points) against both the view frustum and the active set of user-defined clipping planes. o Fixed a case where wireframe Surf renderings were leaving the linestyle and line width unspecified. o Fixed "sticky" coloring behavior of the "Solvent" representation that would result in the displayed color not tracking the GUI settings in certain cases o Catch NULL pointers, which can (very rarely) be returned by OpenGL drivers if certain types of catastrophic errors occur. o Fix memory leak when defining angles, dihedrals and impropers via ' molinfo set angles'. o Excluded old Cygwin-based builds of the "intersurf" plugin that encounter problems with recent Cygwin installations. o VMD scenes with depth cueing enabled are now correctly exported or rendered even when running in -dispdev text mode with no OpenGL display. Known bugs ---------- Visit the VMD page for information on known bugs, workarounds, and fixes: http://www.ks.uiuc.edu/Research/vmd/ Cost and Availability --------------------- VMD is produced by the The Theoretical and Computational Biophysics Group, an NIH Resource for Macromolecular Modeling and Bioinformatics, that develops and distributes free, effective tools (with source code) for molecular dynamics studies in structural biology. For more information, see: http://www.ks.uiuc.edu/Research/biocore/ http://www.ks.uiuc.edu/Research/namd/ http://www.ks.uiuc.edu/Research/vmd/ http://www.ks.uiuc.edu/Development/biosoftdb/ http://www.ks.uiuc.edu/Development/MDTools/ The VMD project is funded by the National Institutes of Health (grant number P41-RR005969). Disclaimer and Copyright ------------------------ VMD is Copyright (c) 1995-2011 the Board of Trustees of the University of Illinois and others. The terms for using, copying, modifying, and distributing VMD are specified in the file LICENSE. The authors request that any published work which utilizes VMD includes a reference to the VMD web page: http://www.ks.uiuc.edu/Research/vmd/ and/or the following reference: Humphrey, W., Dalke, A. and Schulten, K., "VMD - Visual Molecular Dynamics", J. Molec. Graphics, 1996, vol. 14, pp. 33-38. Documentation ------------- The VMD Installation Guide, User's Guide, and Programmer's Guide are available which describe how to install, use, and modify VMD. All three guides are available from the main web site. Online help may be accessed via the "Help" menu in the main VMD window or by typing help in the VMD command window. This will bring up the VMD quick help page in a browser, and will lead you to several other VMD help files and manuals. Quick Installation Instructions ------------------------------- Detailed instructions for compiling VMD from source code can be found in the programmer's guide. The Windows version of VMD is distributed as a self-extracting archive, and should be entirely self explanatory. The native MacOS X version of VMD is packaged as a disk image and is extracted by opening the disk image, and dragging the "VMD" application contained inside into an appropriate directory. For quick installation of the binary distribution for Unix do the following: 1) Uncompress and untar the distribution into a working directory. In this working directory, there are several subdirectories such as bin, src, doc, data, as well as this README and a configure script. Change to this working directory after the unpacking is complete. 2) Edit the file 'configure'; change the values for the $install_library_dir and $install_bin_dir to a directory in which vmd data files and executables should be installed, be sure that you installing into a clean target directory and not overwriting an existing version of VMD (which would otherwise give problems): $install_bin_dir is the location of the startup script 'vmd'. It should be located in the path of users interested in running VMD. $install_library_dir is the location of all other VMD files. This included the binary and helper scripts. It should not be in the path. 3) A Makefile must be generated based on these configuration variables by running "./configure". 4) After configuration is complete, cd to the src directory, and type "make install". This will install VMD in the two directories listed above. Note that running "make install" twice will print error messages because you are attempting to overwrite some read-only files. Similarly, if you have incorrectly specified the target installation directories or attempt to overwrite an existing VMD installation, you will get error messages. 5) When installed, type 'vmd' to start (make sure the $install_bin_dir directory is in your path). Required Libraries ------------------ VMD requires several libraries and programs for various of its functions. In particular, it uses GL or OpenGL based 3-D rendering, and will require that you have the appropriate GL or OpenGL libraries on your system. Other programs are required by some of VMD's optional features. Please visit the VMD web site for more information: http://www.ks.uiuc.edu/Research/vmd/ For problems, questions, or suggestions, send e-mail to 'vmd@ks.uiuc.edu'. VMD Development Team Theoretical and Computational Biophysics Group University of Illinois and Beckman Institute 405 N. Matthews Urbana, IL 61801 TBG: http://www.ks.uiuc.edu/ VMD: http://www.ks.uiuc.edu/Research/vmd/ README for VMD; last modified March 14, 2011 by John E. Stone