Voronoi tessellation has proved to be a useful tool in protein structure analysis. But a versatile, public-domain tool for calculating and visualizing tessellations at various levels of granularities is not available. To meet this requirement, we developed PROVAT, a set of Python scripts, which integrate freely available specialized software (Qhull, Gromacs, Pymol etc.) into a pipeline that can be easily manipulated at command-line or web-server.
A major feature of the tool is flexible definition of sites required as input to tessellation calculation. With PROVAT, it is easy to specify one site per amino acid residue or one site each for mainchain and sidechain, or a site for any other arbitrary atom-group. For each site, it is possible to specify a physicochemical character which is later used for coloring Voronoi faces. If 3 atoms are specified for determining local reference frame for a site, PROVAT can compute orientations of each Voronoi neighbour in that frame. Site-specific information is read from an XML file, hence it is easy to experiment with different tessellation strategies by using different XML specifications. Solvation of a system, vital for reasonable tessellation at the solvent-exposed surface, can be done with Gromacs or by a cubic grid paramterized on protein-solven and solvent-solvent interatomic distance. The calculation component extracts sites according to XML specification, computes Voronoi polyhedra and neighbour lists, and stores this as a text file and python pickle file. Various styles of text files are provided. The visualization component, a Pymol plug-in, offers a GUI to render the pickle file and enables visual exploration of tessellation. It is possible to visualize individual polyhedra colored according to their neighbours, solvent-exposed surfaces and interfaces between protein and other protein/ligand/DNA.