Visual Molecular Dynamics (VMD)
VMD is a powerful and intuitive molecular modelling and visualization computer program designed for the modeling, visualization, and analysis of biological systems such as proteins, nucleic acids, lipid bilayer assemblies, and others. VMD can read standard Protein Data Bank (.pdb) files to view more general molecules and display the contained structure. Given its open source nature and its broad system compatibility (runs on Unix, Apple Mac macOS, and Windows), VMD is widely used and highly regarded for viewing and analyzing the results of molecular dynamics simulations. It also includes tools for working with volumetric data, sequence data, and arbitrary graphics objects.
VMD provides simple methods for rendering and coloring molecules for example: simple points and lines, CPK spheres and cylinders, licorice bonds, backbone tubes and ribbons, cartoon drawings, etc. Molecular scenes can be exported to external rendering tools such as POV-Ray, RenderMan, Tachyon, Virtual Reality Modeling Language (VRML), and many others. Users can run their own Tcl and Python scripts within VMD as it includes embedded Tcl and Python interpreters. Also, what makes VMD a powerful tool, is that it acts as a graphical front end for external MD programs such as NAMD, GROMACS, AMBER, etc.
Key Features of VMD Include:
- Support for all major computer platforms
- Support for GPU acceleration
- Support for multicore processors
- Active vibrant research and development community
- Zero limit on the number of molecules, atoms, residues or trajectory frames, (limited by available memory)
- Multiple molecular rendering and coloring methods
- Stereo display capability
- Extensive atom selection syntax (includes boolean operators, regular expressions) for choosing subsets of atoms for display
- Support for over 60 molecular file formats via an extensive library of built-in file reader/writer plugins and translators
- Multiple sequence alignment plugin, a unified bioinformatics analysis environment that allows one to organize, display, and analyze both sequence and structure data for proteins and nucleic acids
- Export displayed graphics files with compatibility with a number of popular ray tracing and rendering packages, including POV-Ray, Rayshade, Raster3D, and Tachyon
- User-extensible GUI and text-based interfaces, built-on standard Tcl/Tk and Python scripting languages (see below)
- Extensions to Tcl language
- Modular, extensible source code
- Integration with the program NAMD
- Works favorably with projected display systems
- Can be used to concurrently display and interact with a running NAMD simulation
Multi-core CPU and GPU Acceleration
VMD takes advantage of multi-core processors and multi GPU accelerated systems. Multi-core CPUs accelerate features including interactive molecular dynamics, bond determination, “within” atom selections and derivatives, so-called streamline or field line visualizations, radial distribution functions, and high quality renderings using the built-in Tachyon and OSPRay ray tracing engines.
VMD supports GPU acceleration using CUDA1
VMD is able to take advantage of both multi-16 core CPUs and GPUs for:
- acceleration of electrostatics (i.e. “volmap coulomb”, and “volmap coulombmsm”)
- implicit ligand sampling (i.e. “volmap ils”)
- computation of radial distribution functions
- quality-of-fit cross correlation calculation for hybrid fitting methods
- trajectory clustering analyses
- computation and rendering of molecular orbitals and molecular surfaces
- GPU-accelerated batch
- interactive versions of the Tachyon ray tracing engine based on NVIDIA OptiX and CUDA
Source: John Stone, et al, "Using VMD", University of Illinois at Urbana-Champaign Beckman Institute for Advanced Science and Technology Theoretical and Computational Biophysics Group Computational Biophysics Workshop, 2017
Parallel Computing on Clusters and Supercomputers1
VMD supports large scale batch mode parallel analysis and visualization on clusters and supercomputers when it has been compiled with MPI support. When running VMD on clusters and parallel computers it is possible to run one MPI rank per CPU core, or more likely, one MPI rank for several CPU cores, or one MPI rank for an entire compute node. If running more than one VMD instance per compute node, it is typically necessary to set environment variables to limit which CPU cores and/or GPUs each VMD instance attempts to use to prevent performance anomalies from arising due to resource contention.
Data Analysis & Inter-process Communication using VMD and Tcl scripting
VMD is also a powerful tool for data analysis, mainly for structures and trajectories. Various analytical tools are available under the VMD Main Menu item: "Extensions --> Analysis". Furthermore, VMD developers and users often use custom-written scripts to analyze properties of the simulations.
VMD has the ability to communicate with other programs via Tcl/Tk. Tcl scripting capabilities are very extensive, and provide multiple opportunities for analysis. Tcl scripting allows the development of several external plugins that works together with VMD.
VMD PLUGINS DEVELOPED USING TCL/TK: (FROM WWW.KS.UIUC.EDU) VMD provides simple methods for rendering and coloring molecules.
electrostatic force calculation and visualization
identify dominant electron transfer pathways and estimate donor-to-acceptor electronic tunneling
checks and helps select best orientation and protonation state for Asn, Gln, and His side chains
caches MSMS calculations to speedup the animation of a sequence of rames
Interactive visualization of essential dynamics
Improved version of autoionize for highly charged systems
Development version of RMSD plugin for trajectories
Visualize clusters of conformations of a structure
interactive Trajectory Comparison tool
Atomic coordinate swapping for improved RMSD alignment
Protein-Protein interface extraction and display
Measure surface area and volume of proteins
Plugin for computing RMSD, RMSF, SASA, and other time-varying quantities
A VMD plugin to handle QM and ONIOM calculations using the gaussian software
John Stone, et al, "Using VMD", University of Illinois at Urbana-Champaign Beckman Institute for Advanced Science and Technology Theoretical and Computational Biophysics Group Computational Biophysics Workshop, 2017