|
VMD (Visual Molecular Dynamics) 1.7 Reviewed by |
|
| |
| Overall scores | ||
| Installation | Easy, but installing optional modules requires some technical expertise with the operating system | |
| Learning curve (beginner who can Web surf and word process) | Shallow | |
| Technical support | Good, for free software | |
| Features | Excellent | |
| Customizability | Excellent | |
| Utility to biologists | Very good | |
| Value for money | Excellent | |
Overview
Amazing, simply amazing. I can think of no better way to start to describe this software from the Theoretical Biophysics Group at the University of Illinois. Trivially simplified, VMD (Visual Molecular Dynamics) is a program for visualizing molecular structures. There's nothing particularly surprising about that, but I've just spent an hour on the show floor at ACM's SIGGraph conversing with one of the program's authors, and playing with the software. The demonstration? Dragging sodium ions back and forth, through a transmembrane protein transport channel in "real time", while a dynamics simulation engine recalculated the protein and associated waters at about 15 frames per second.
Every person who walked by the demonstration, myself included, had the same response - "That's a precalculated simulation playing back - that can't be running in real-time!" VMD, however, does more than just display the results of molecular dynamics (MD) calculations, it lets you interact with them. The proof was in a haptic device (haptic input devices provide "realistic" feedback to the sense of touch), in this case, a controller for a virtual pin. With the virtual pin, one could spear the sodium ion and tug it down the transport channel, watching the channel deform and waters bump out of the way as they collided with the ion. For anyone who's ever run a molecular minimization or dynamics simulation that took several weeks to calculate what amounted to a few seconds of animation, getting to interact with the calculations as they occur is a real treat.
Even without a molecular dynamics calculator running behind it, however (VMD, again, is a visualization component), VMD offers many benefits to the researcher wishing to visualize molecular structures. These range from a nice interface for manipulation of the on-screen molecule (a stunningly intuitive interface, if you're lucky enough to have a supported haptic device), to a very flexible set of options for configuring the on-screen molecular representation, to stereo display, to the ability to write out control files for a number of high-quality graphics engines for rendering molecular images for publication. In addition, VMD can perform some display-related molecular statistics calculations, such as for molecular mass, radius of gyration, and the root-mean-square fit between two structures.
Available platforms | Several Unix platforms (Mac OS X, Sun Solaris 2, Sun Solaris 0x86, IBM AIX 4, HPUX 10 and 11, IRIX 6, Linux 0x86, Linux PPC, Linux Alpha, Compaq TRU64) Windows (95, 98, NT) |
System requirements | A machine that can run one of the listed operating systems and roughly 15 Mb free drive space to unpack and install, depending on the platform. VMD, like most Unix software, can run on platforms that no reasonable person would want to run it on. It's entirely possible to run the software on hardware dating to the early 1990s, but the user will be much more satisfied with the results when running it on more modern hardware. The most definite indicator of performance on a particular machine will be that machine's OpenGL performance. For reference, the real-time simulation with which I was interacting was running on a 24-processor Sun Fire 6800, and the visualization was running on a Sparc Blade 1000. |
Test platforms | SGI Indigo, Indy, and O2 platforms with OSes ranging from 5.3 to 6.5 and Intel Linux on a PII, 200 |
Price | Free |
How Long Did It Take to Learn to Use It Productively?
The interface to the basic visualization functionality is simple enough that a novice could start the program and begin productively viewing a molecule immediately. The program, however, has sufficient complexity in its range of rendering options that it is easy to lose track of the setting given to a particular option and of where that option is configured. Learning to get around the more complex parts of the interface without "hunting and clicking" will probably take several days of regular use. Thankfully, the program lends itself to exploratory learning, and the process of learning where the options reside is not an unpleasant one.
Product Quality
| Ease of installation | Good - precompiled binaries available for the listed operating systems; source available for installation on other platforms |
| User friendliness | Fair to good |
| Interface | Fair - considerable advanced functionality requires use of command-line interface |
| Intuitiveness of design | Fair to good |
Customizability
Most of the interface is graphical, but there is also a command-line interface. From the graphical user interface (GUI), the user can perform minor interface customizations such as palette organization, but more complex customization of the interface requires use of the command line. Because of the integration of Tcl/Tk (a scripting language with special features for GUI construction), the ability for those with programming experience to extend and customize the interface is almost limitless.
Ability to Program in Scripts, Add Extension Modules, etc.
The software is highly programmable, allowing the user to script both display and calculation aspects. The software supports Tcl/Tk, as well as Python for programmatic control.
Ability to Import and Export in Different File Formats
Without the use of an external translator library, VMD can import the following file formats: X-PLOR style protein structure files, PDB, DCD (CHARMM), and AMBER structure files with associated CRD files.
VMD also supports the use of the Babel library for file import. If this optional library is installed, VMD supports these additional file formats:
| Alchemy | AMBER PREP | Ball and Stick |
| Biosym .CAR | Boogie | Cacao Cartesian |
| Cambridge CADPAC | CHARMM | Chem3D Cartesian 1 |
| Chem3D Cartesian 2 | CSD CSSR | CSD FDAT |
| CSD GSTAT | Free Form Fractional | GAMESS Output |
| Gaussian Z-Matrix | Gaussian Output | Hyperchem HIN |
| MacMolecule | Macromodel | MicroWorld |
| MM2 Input | MM2 Ouput | MM3 |
| MMADS | MDL MOLfile | MOLIN |
| Mopac Cartesian | Mopac Internal | Mopac Output |
| ShelX | Sybyl Mol | Sybyl Mol2 |
| XYZ |
For output, VMD can render RGB images on the display, write PostScript format output for the display, and generate stereo lithography descriptions of the molecular surfaces.
VMD can also write input files describing the display for the following rendering engines and formats: Raster3D, ART, Rayshade, POV-Ray, Radiance, Tachyon, and VRML.
To visualize molecular dynamics (MD) simulations, VMD must be paired with an MD calculation program. It currently supports: AMBER (PARM/CRD files), CHARMM (PSF/DCD files), GROMOS (ASCII .GRO files), NAMD (PSF/DCD files), and X-PLOR (PSF/DCD files).
Useful or Unusual Features
It's difficult to pick a part of VMD to describe as useful or unusual - VMD is a well-written proper Unix application, and has essentially one function - displaying molecular structures - which it does particularly well. In today's world of "everything including the kitchen sink" programs, this in and of itself is a useful and unusual feature. If VMD were a component of a molecular construction program such as Quanta, VMD would be the unusual feature.
Notwithstanding this difficulty, the ability to interact with a dynamics calculation in "real time" (providing the engine calculating your dynamics is powerful enough), is very nice, and will be a welcome change for those used to running their simulations in batch.
The integration of haptic feedback, while initially seeming inapplicable to molecular display and interaction, turned out to create, in my experience with the software, a unique and very intuitive interface for the manipulation of the molecules on-screen.
For users without the fast MD calculation engine or the haptic interface to support realtime interactive feedback, two of the more interesting features of VMD will be its ability to be programatically controlled via the scripting interface, and its ability to record sequential renderings of the molecule as a movie for later presentation.
The Tcl/Tk and Python interfaces to VMD provide access to a range of VMD functions, from the simulation of user-input, to the calculation of molecular statistics, to control of settings in the user interface. Using these tools it is possible to script the motions of a molecule so that it rotates and translates through a predetermined series of motions in a self-playing demonstration. Since Tcl/Tk contains user-interface building functions, it's also possible to do things like construct a palette of buttons that perform collections of complex actions or calculations with a single click. Because the full power of the programming languages is available, it is even possible to construct a script that can link two VMD sessions running on different machines together (note that conceptually this requires nothing more than capturing parameters in one session, and sending them to a remote machine, where the scripting interface simulates those user-events back into the VMD session running there), so that remote researchers can more easily collaborate. In fact, such a script has already been written and is provided as one of the many scripts available from the VMD public script library.
The ability to capture movies consisting of sequential rotational, translational, or simulation timestep motions for later standalone playback, while initially perhaps more obviously interesting than scripting to the non-programmer, is actually a consequence of the scripting functionality. Since the scripting system has almost complete access to the interface, it is a simple matter to script any desired collection of changes to a molecular representation, whether they be motions, or rendering style changes, and to instruct the software to save images at each of a number of points along the way. These images can then be compressed into any digital movie format that your system understands, and used for later playback of the animation. Again, a number of scripts to generate movies from VMD are already available from the VMD public script library.
Limitations
VMD is a visualization tool. It does not perform molecular dynamics functions itself. This is not actually a limitation, but rather good software design, but the paradigm may be unfamiliar to those not used to the Unix way of doing things. VMD provides visualization and rendering tools, and can be layered on top of a number of other engines that perform MD calculations.
Comparisons with Similar Software
VMD has little with which to be compared. The most obvious comparisons, however, will be to RasMol (or Protein Explorer), and to built-in molecular visualization tools such as the molecular renderers in HyperChem and Quanta. For pure molecular structure presentation purposes, VMD and RasMol achieve similar goals, with RasMol presenting features oriented more toward researchers needing labeling control, and VMD leaning toward photorealistic presentation instead. VMD's ability to visualize and interact with a live MD simulation is, however, novel. Built-in renderers do not have the range of customization options available in VMD, nor can they be scripted and customized to nearly the same extent.
Technical Support and Documentation
The online documentation is good, allowing the user to start to work in the program almost immediately. This software is created and supported, however, by a research group operating out of the University of Illinois. Thus, there is no tech-support hotline or other form of organized technical support. Most assistance is derived from the Internet mailing list. There is also a VMD FAQ.
Target Users
VMD is targeted at users who need to visualize and present molecular structures - structures that potentially vary over time, such as those derived from a molecular dynamics simulation. The software is simple enough for a novice to use to begin exploring a molecular surface, and powerful enough to be used to create animations for presentation, or "photo-realistic" renderings for publication.
Publisher information |
Theoretical Biophysics Group Email: vmd@ks.uiuc.edu |
Pricing structure | Free |
Software class | Data analysis and visualization |
William C. Ray is a mathematician turned computer scientist turned biophysicist, who is now living as a postdoctoral fellow developing bioinformatics tools for sequence annotation.


RasMol 2.7
Canvas 8.01
LifeSeq Public Bioinformatics Tool
OmniGraffle 1.0.1
Biotechnix 3d 1.0.0
Mac OS X