Skip to main content

VASCo: computation and visualization of annotated protein surface contacts



Structural data from crystallographic analyses contain a vast amount of information on protein-protein contacts. Knowledge on protein-protein interactions is essential for understanding many processes in living cells. The methods to investigate these interactions range from genetics to biophysics, crystallography, bioinformatics and computer modeling. Also crystal contact information can be useful to understand biologically relevant protein oligomerisation as they rely in principle on the same physico-chemical interaction forces. Visualization of crystal and biological contact data including different surface properties can help to analyse protein-protein interactions.


VASCo is a program package for the calculation of protein surface properties and the visualization of annotated surfaces. Special emphasis is laid on protein-protein interactions, which are calculated based on surface point distances. The same approach is used to compare surfaces of two aligned molecules. Molecular properties such as electrostatic potential or hydrophobicity are mapped onto these surface points. Molecular surfaces and the corresponding properties are calculated using well established programs integrated into the package, as well as using custom developed programs. The modular package can easily be extended to include new properties for annotation. The output of the program is most conveniently displayed in PyMOL using a custom-made plug-in.


VASCo supplements other available protein contact visualisation tools and provides additional information on biological interactions as well as on crystal contacts. The tool provides a unique feature to compare surfaces of two aligned molecules based on point distances and thereby facilitates the visualization and analysis of surface differences.


Knowledge on protein-protein interactions is essential for understanding many processes in living cells. These interactions are mediated through the respective molecular surfaces and are governed by the properties of the amino acid residues and atoms, which form these surfaces, as well as more distributed properties such as hydrophobicity and electrostatic potential. Structural data from crystallographic analyses deposited in the Protein Data Bank (PDB) [1, 2] contain a vast amount of information on protein-protein contacts, including "biological" contacts which are also present in solution as well as contacts necessary for crystal formation. Several programs are available which allow the calculation and analysis of surface properties, e.g. to predict hotspots for protein interaction [35]. However, these programs are not designed to calculate, analyze and visualize actual protein-protein contact patches. Various reviews describe investigations about statistical analyses of protein-protein interaction, characterization of different interface properties [612] and the identification of contact patches especially focused on the distinction between biological interactions and crystal contacts [1315]. Other studies describe specific properties used to discriminate between interfaces and non-interfaces like shape and geometric parameter complementarities, accessible surface comparison at multimerization as well as physicochemical properties, conservation scores and interface residue preferences and clusters [16]. Despite the fact that this information is very useful for the identification and analysis of biological contacts, it lacks a convenient visual representation of information especially for crystal contact surfaces and their properties. A plethora of macromolecular visualization tools exist, which are either web-based or stand alone programs (see the "The World Index of Molecular Visualization Resources" [17] for an overview). Most of them also provide structural analysis tools or are part of different databases which contain all sorts of organized structural annotation information like the GPSSServer [18], the Mark-Us server [19], the POLYVIEW-3D utility [20], or the program PocketPicker [21]. There are also databases which are mainly focused on protein contacts or interfaces like the SCOWLP [22]. This database is based on the SCOP [23] classification and provides interaction information on domain interfaces and uses Jmol [24] for visualization. Web based visualization tools like Jmol are very useful to give an overview of the structure including of the different provided information. However, they are less powerful than stand-alone programs like the Swiss-PDB Viewer [25] or PyMOL [26]. Not all of these tools provide sufficient surface representation features or the surface representation is generated on the fly. Consequently, the actual surface points are not accessible directly for annotation or calculation purposes. Software packages which do provide contact interaction information most often make use of atom to atom distances and atom coordinates instead of surface point coordinates. Many programs also do not take into account crystal symmetry. Therefore, we devised VASCo a program package enabling the annotation and visualization of surface properties and contact patches. Specifically we aimed at (i) identifying contact patches in protein crystal structures including contacts generated by crystal symmetry, (ii) annotating these patches according to different surface properties and (iii) analysing surface patches of proteins in contact with RNA, DNA or ligands. Additional aims were the convenient representation of annotated surfaces and the development of a distance calculation for the surface points in contact regions. For visualization we chose PyMOL because of its wide spread within the structural biology community and its broad functionality and expandability.


VASCo itself is a Python [27] based command line tool which makes use of the VASCo modules (also written in Python) to calculate properties and run external programs. The programs PatchCalc and HydroCalc, written in C, are used to calculate hydrophobicity as well as contact patches and distance values. The external programs MSMS [28] for surface calculation and DelPhi [29, 30] for electrostatics calculations are separately available and licensed but included in the program package. The VASCo package integrates the calculation of molecular surfaces of proteins, the computation of different properties (such as hydrophobicity and electrostatic potential), the identification of contact patches, and a flexible visualization module. For the latter task we use the program PyMOL [26] representing molecular surfaces as "compiled graphic objects" (CGO), a PyMOL specific format allowing the generation of three-dimensional objects from building blocks such as spheres, cylinders and triangles. We developed a plug-in, which reads the VASCo surface file and generates CGOs based on the provided information. This Phython-based plug-in provides a convenient interface to visualize the surface output.

Results and discussion

VASCo is a program package for the calculation of protein surface properties and the visualization of annotated surfaces. Our software uses a unique surface point based approach where each of these points can be directly annotated by different properties. The surfaces and interaction patches are visualized in PyMOL using a custom-made plug-in.

Surface points are defined by the solvent excluded surface (SES) of a protein. In addition, it identifies contact patches between protein molecules based on a point distance cutoff, considering also symmetry equivalent molecules in a crystal. Thus, surface points are separated into contact and non-contact areas allowing separate analysis. The current set of properties contains the electrostatic potential, the hydrophobicity and the contact distance and is easily extendable due to the modular structure of the program package. The different modules and programs are integrated into an analysis pipeline to allow fast and efficient analysis of the protein structures. Special emphasis was given to the visualization of crystal contact patches and surfaces which is especially important for the analysis of this kind of data. We do not distinguish between biological and crystal contact patches automatically, yet the patch information with the mapped properties may help to differentiate them visually. Our software can serve as a supplement to other available visualisation tools and provides additional information on protein-protein contacts which are relevant for structural biologists and crystallographers as well.

Another strength of the VASCo program is the possibility to compare molecular surfaces of biomolecules. To that end, a PDB file has to be generated containing two superimposed structures (e.g. a homology model and its template, two homologues from different organisms or an apo- protein with its substrate bound form.). By neglecting the symmetry information one is able to annotate surfaces with a surface difference value which corresponds to the minimum distance of a particular surface point in one molecule to any surface point in the other molecule. These calculations can be used to identify regions on those surfaces which differ significantly from each other or to investigate the influence of mutations on surface shape.

Calculation Pipeline

The Python based command line program called, reads a PDB file (or a list of PDB files for the analysis of a larger number of structures) and in turn calls the various modules and programs performing the necessary calculations (Fig. 1). The output of the program is a GZIP-compressed text file containing information on the surface itself (coordinates of surface vertices, list of triangles) as well as on the calculated properties, which can be visualized in PyMOL using the VASCo surface viewer plug-in (see below). Reasonable default parameters (especially for DelPhi) and libraries (such as HC values, atomic radii, partial charges, and space group symmetry) are provided, but can easily be changed for particular purposes.

Figure 1
figure 1

Overview of the VASCo pipeline. The chain, the unit and the partition sections are marked with corresponding colours (red for chain, yellow for unit and green for partition sections). Gray boxes represent programs; green boxes indicate input and output files. Blue arrows represent the flow of the different calculated properties. White arrows show the main program path, whereas dotted arrows indicate "many-to-one" relationships within the pipeline.

Surface determination

Molecular surface points are determined by MSMS (Michel Sanner's Molecular Surface) version 2.5.5 [28] using the SES (solvent excluded surface) definition, a probe radius of 1.4 Å and a vertex density of 1.0. There are other surface calculation programs available including NACCESS [31], Surface Racer [32], ASC [33, 34], or the Molecular Surface Package [35]. We chose the program MSMS because it provides surface point files with additional information such as triangulation and normal vectors which can be used directly for visualization.


The command line program HydroCalc was developed to calculate hydrophobicity values at each surface point. A library of atomic hydrophobic contribution values (HC) was created based on the values derived by Ghose et al. [36] and newer calculations of Viswanadhan and Ghose et al. [37, 38]. These HC values [see Additional file 1] can be seen as fragmental increments (fi) to the total lipophilicity of the molecule. Andry et al. have created a distance dependent function for a so called molecular lipophilicity potential (MLP) [39] the applicability of which has been proven for small molecules. Due to its unsuitability for large molecules another form of the MLP definition was used [40] (formula 1).

M L P = i = 1 N f i g ( d i ) i = 1 N g ( d i ) MathType@MTEF@5@5@+=feaagaart1ev2aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacPC6xNi=xI8qiVKYPFjYdHaVhbbf9v8qqaqFr0xc9vqFj0dXdbba91qpepeI8k8fiI+fsY=rqGqVepae9pg0db9vqaiVgFr0xfr=xfr=xc9adbaqaaeGaciGaaiaabeqaaeqabiWaaaGcbaGaemyta0KaemitaWKaemiuaaLaeyypa0tcfa4aaSaaaeaadaaeWbqaaiabdAgaMnaaBaaabaGaemyAaKgabeaacqGHflY1cqWGNbWzcqGGOaakcqWGKbazdaWgaaqaaiabdMgaPbqabaGaeiykaKcabaGaemyAaKMaeyypa0JaeGymaedabaGaemOta4eacqGHris5aaqaamaaqahabaGaem4zaCMaeiikaGIaemizaq2aaSbaaeaacqWGPbqAaeqaaiabcMcaPaqaaiabdMgaPjabg2da9iabigdaXaqaaiabd6eaobGaeyyeIuoaaaaaaa@4F3B@

Formula 1: Molecular lipophilicity potential (MLP). fi is the partial lipophilicity of the i-th fragment of a molecule. di is the distance of the surface point from the center of the fragment i. N is the amount of fragments considered for the calculation and g(di) is the distance function for the i-th fragment.

The program uses a Fermi-type distance function [40] (formula 2) to calculate the contribution of a particular atom to the molecular lipophilicity potential (MLP) at a certain surface point. The empirical drop-off parameters C1 and C2 were set to standard values (C1= 1 Å-1, C2 = 4 Å). The Fermi-function simulates the decrease of hydrophobic influence of distant atoms to avoid false assignments within protein molecules.

g ( d ) = e C 1 C 2 + 1 e C 1 ( d C 2 ) + 1 MathType@MTEF@5@5@+=feaagaart1ev2aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacPC6xNi=xI8qiVKYPFjYdHaVhbbf9v8qqaqFr0xc9vqFj0dXdbba91qpepeI8k8fiI+fsY=rqGqVepae9pg0db9vqaiVgFr0xfr=xfr=xc9adbaqaaeGaciGaaiaabeqaaeqabiWaaaGcbaGaem4zaCMaeiikaGIaemizaqMaeiykaKIaeyypa0tcfa4aaSaaaeaacqWGLbqzdaahaaqabeaacqGHsislcqWGdbWqdaWgaaqaaiabigdaXaqabaGaem4qam0aaSbaaeaacqaIYaGmaeqaaaaacqGHRaWkcqaIXaqmaeaacqWGLbqzdaahaaqabeaacqWGdbWqdaWgaaqaaiabigdaXaqabaGaeiikaGIaemizaqMaeyOeI0Iaem4qam0aaSbaaeaacqaIYaGmaeqaaiabcMcaPaaacqGHRaWkcqaIXaqmaaaaaa@4610@

Formula 2: Fermi-type distance function. C1 and C2 are empirical drop-off parameters. d is the distance of a certain surface point from the center of the fragment.

Compared to other algorithms to assign hydrophobicity values to surface points, this approach has the advantage that the hydrophobicity calculation can be carried out with distance dependent atomic contributions on every surface point separately. This is in contrast to other strategies where whole amino acid hydrophobicity scores are used and mapped onto the surface [41]. Our calculation is clearly more time consuming but has the advantage that the hydrophobicity is smoothly distributed over the surface. Due to its distance dependent character it accounts for the three dimensional arrangement of the atoms and their contributions to the hydrophobicity on each surface point.

Electrostatic potential

The program DelPhi [29, 30] is used to calculate the electrostatic potential at the molecular surface points. As default parameters we used a grid spacing of 1 Å with the macromolecule taking up 60% of the calculation box. Internal and external dielectric constants were set to 4 and 80 respectively. An ion exclusion radius of 2 Å and a salt concentration of 0.145 mol l-1 were applied. The probe radius for the surface calculation is the same as used for MSMS (1.4 Å). All parameters can be changed by the user, if necessary. DelPhi requires the positions of (selected) hydrogen atoms. As most of the structure files deposited in the PDB miss this information, we calculate hydrogen atom positions using a modified version of the program Protonate, which is part of the AMBER program package [42]. We consider only backbone and N-terminal hydrogen atoms and assign charges only to fully charged amino acids as well as backbone atoms. Histidines are assigned a total charge of +0.5. The DelPhi output file contains the electrostatic potential at the given coordinates (surface point coordinates produced by MSMS) in units of kT/e (1 kT/e = 25.6 mV/e = 0.593 kcal/mol/e), where k is the Boltzmann-constant and the temperature T is set to 300 K.

Contact patch calculation

The program PatchCalc was developed to calculate interaction patches based on a distance cutoff involving surface points. This includes interactions between different unit surfaces as well as interactions between symmetry related surface points. We define a "unit" as an assembly of protein chains (plus heterocomponents) for which surface points and corresponding properties will be calculated. By default each protein chain forms a separate unit, but one can combine several chains to a larger unit, e.g. to an oligomer. The combination of all thus defined units forms the so called "partition". The command line program PatchCalc calculates all the contact patches of each unit within a partition (also including crystal symmetry). A surface point contact is assumed, when the distance between surface points is below a certain threshold, which is 1.5 Å by default but can be changed by the user. In order to utilize crystal symmetry the program requires information on the unit cell (to calculate fractional coordinates) and on the space group, which is both provided automatically within the VASCo-program. Atomic cartesian coordinates are transformed to fractional coordinates [43]. Space group symmetry is provided as library of transformation matrices and vectors (converted from data available in the CCP4 package [44]) which are applied to the fractional coordinates. Nearest neighbors of a particular surface point are identified taking translational symmetry into account. The final output contains the point to point distance as well as unit and symmetry information which are used to annotate the different contact patches.


A PyMOL plug-in was developed for displaying the surface properties calculated by the VASCo program. Each identified surface contact patch can be viewed and analyzed separately. The user can freely define colours and transparency levels of the different surfaces. The minimum and maximum values for a colour ramp describing a certain property are calculated automatically, but can as well be set manually (Fig. 2). To speed up loading of the surface representation the user can select to view just those annotated surfaces, which are the current focus of interest. After loading of the surfaces one can switch fast and easily between the annotated surfaces by using the standard function keys. Because PyMOL's internal ray-tracing routine also works for the additional properties calculated by the program package, it can be used to create high-resolution, publication quality figures. The plug-in configures itself depending on the available surface properties in the input file and is therefore flexible to show different properties depending on the currently active surface file. This feature will be especially useful when new surface properties will be provided in later versions of the VASCo program package.

Figure 2
figure 2

Example of visualization of VASCo results loaded with PyMOL plug-in. Molecular surfaces represented by PyMOL-CGOs. Patches representing contacts to symmetry equivalent molecules are coloured according to contact distance values. The loader is integrated in the plug-in dropdown menu of PyMOL. Dependent on the input surface file different properties can be shown and analyzed. Once the selected properties of interest are loaded one can switch easily between them using the associated function keys


Surface property visualization

The VASCo program can be used to visualize surface interaction patches between different units (defined by chains) as well as to analyse crystal contact patches calculated with crystal symmetry information. The structure of a GUN4 homolog [PDB:1Y6I] [45] was chosen as an example. The asymmetric unit of this structure consists of a single polypeptide chain with a length of 233 amino acid residues. As the structure comprises only one chain, this chain forms the only unit. Figure 3 shows the molecular surface coloured according to hydrophobicity (3a) and electrostatic potential (3b) employing the default colour ramp. Figures 3c and 3d contain information on interactions with symmetry related molecules (space group P212121). Interaction patches are coloured according to contact distances (Fig. 3c) and to patch types (Fig. 3d). The latter are defined by the interacting unit and the applied symmetry operation.

Figure 3
figure 3

Visualization of VASCo results for PDB-entry1Y6I. Molecular surfaces represented by PyMOL-CGOs and coloured according to hydrophobicity (a), electrostatic potential (b). Patches representing contacts to symmetry equivalent molecules coloured according to contact distance values (c) and according to patch type (d). This figure was generated using the VASCo PyMOL plug-in.

Another example of the results of contact patch calculation is shown in Figure 4. The antizyme inhibitor (AzI) which regulates cellular polyamine homestasis is compared with the highly homologous orithine decarboxilase (ODC) which is in contrast to AzI enzymatically active [46]. Figures 4a and 4b show all contact patches for chain A of AzI [PDB:3PTN] [46] and chain A of ODC [PDB:7ODC] [47], respectively. In the case of ODC two protein chains are present in the asymmetric unit, but a very similar "dimer" of AzI is generated by crystal symmetry (Fig. 4). A visual comparison of the proposed dimer interfaces reveals a significantly smaller surface contact size in the case of AzI (Fig. 4a -red surface patch) as well as a more compact contact surface in the case of ODC (Fig. 4b – blue surface patch). This analysis suggests that this interface in AzI could be an artefact of crystal formation and nonphysiological. Biochemical studies indeed showed that AzI exists as a monomer in solution while ODC is dimeric [46]. In addition, the "hydrophobic zipper" [46] can easily be seen on the ODC dimer interface (Fig. 4b – hydrophobicity) which is missing in case of the AzI (Fig. 4a – hydrophobicity). Thus, VASCo can be very helpful in getting a first visual impression of the interfaces and their properties.

Figure 4
figure 4

Comparison of the dimer interfaces of antizyme inhibitor (AzI) and orithine decarboxylase (ODC). Surface contact patches generated with VASCo. a) AzI crystal contact patches and dimer interface patch (red). b) ODC interface including crystal contact patches for chain A and dimer interface patch (blue). On the right site the interface patches are coloured by hydrophobicity.

Visualization of surface differences

The comparison of molecular surfaces of biomolecules is an additional strength of the VASCo program. A specific example of a surface comparison involving two homologous RNA binding proteins is shown in Figure 5 highlighting surface differences between signal recognition particle 19 (SRP19) from H. sapiens[48] and Methanococcus jannaschii[49].

Figure 5
figure 5

Structural differences of SRP19 from M. jannaschii (a) and H sapiens (b). The surfaces are coloured according to VASCo-surface difference values. The colour ramp goes from white (no difference) to either green or red (+/- 7 Å).

Another example shows the active site of two old yellow enzyme (OYE) homologues (Fig. 6). These two enzymes (OPR1 and OPR3) exhibit opposite enantioselectivity in the reduction of a nitroalkene substrate, which is supposed to be caused by subtle structural differences [50]. The differences in the surface topography around the active sites of OPR1 [PDB:1ICP] [51] and OPR3 [PDB:2HSA] [52] are shown in Figure 6 by mapping minimum point distances onto the respective molecular surfaces. In this example, red areas indicate surface indentations which are not present in the other molecule, whereas green areas indicate convexities. Specifically, the red area close to the flavin cofactor in OPR1 emphasizes a deep pocket missing in OPR3, which, however, is important for the proper binding of the substrate (Fig. 6a). The lack of this pocket in OPR3 necessitates a different binding mode of the substrate thereby yielding the opposite enantiomer. Our tools provide a convenient way to visualize such differences and to analyze their biological significance.

Figure 6
figure 6

Surface difference comparison of the active site of two enoate reductases. The active site surfaces are coloured according to surface difference values (red -3 Å, green +3 Å, yellow no difference). a) OPR1 active site surface difference to OPR3. b) OPR3 active site surface difference to OPR1.


The VASCo package provides convenient tools for the representation of annotated surfaces. It allows the facile inclusion of new properties (such as conservation scores) for surface mapping. The calculated surface is always divided into patch and non-patch surfaces allowing separate visual analysis of these regions. The tool also provides a unique point distance approach for the analysis and visualization of surface differences between two structures. By using the common protein representation and visualization tool PyMOL as environment for the plug-in, the annotated surfaces can be visualized. The plug-in automatically accommodates additional surface properties provided in the input file. We expect that VASCo will expand and grow over time especially by integrating new surface properties and property calculations.

Availability and requirements

Project name: VASCo

Project home page:

Operating systems: Windows, Unix

Programming Languages: Python, C

Software packages: Python 2.4 or higher, PyMOL 0.95 or higher

Hardware requirements: Processor: 3 GHz Pentium 4 or similar, Memory: 1 GB RAM Video Card: 3D OpenGL compatible graphics accelerator card with 256 MB RAM

License: The VASCo program is free for academic use but includes third party programs like the MSMS program for surface calculation and the DelPhi v. 4.0 program for electrostatic calculations which have to be registered (free of charge for academic use). For more information about licensing see

Any restrictions to non-academics:

If you are interested in a commercial use license for VASCo, please send your name, address, fax and telephone numbers and email address to: Commercial versions of MSMS and DelPhi have to be obtained from .Michel F. Sanner and .Raquel Norel respectively.


  1. Berman H, Henrick K, Nakamura H, Markley JL: The worldwide Protein Data Bank (wwPDB): ensuring a single, uniform archive of PDB data. Nucleic Acids Res 2007, 35: D301-D303.

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  2. Berman HM, Battistuz T, Bhat TN, Bluhm WF, Bourne PE, Burkhardt K, Feng Z, Gilliland GL, Iype L, Jain S, et al.: The Protein Data Bank. Acta Crystallogr D Biol Crystallogr 2002, 58: 899–907.

    Article  PubMed  Google Scholar 

  3. Darnell SJ, Page D, Mitchell JC: An automated decision-tree approach to predicting protein interaction hot spots. Proteins 2007, 68(4):813–823.

    Article  CAS  PubMed  Google Scholar 

  4. Franzot G, Carugo O: Computational approaches to protein-protein interaction. J Struct Funct Genomics 2003, 4: 245–255.

    Article  CAS  PubMed  Google Scholar 

  5. Shazman S, Celniker G, Haber O, Glaser F, Mandel-Gutfreund Y: Patch Finder Plus (PFplus): a web server for extracting and displaying positive electrostatic patches on protein surfaces. Nucleic Acids Res 2007, 35: W526–530.

    Article  PubMed Central  PubMed  Google Scholar 

  6. Ofran Y, Rost B: Analysing six types of protein-protein interfaces. Journal of Molecular Biology 2003, 325: 377–387.

    Article  CAS  PubMed  Google Scholar 

  7. Russell RB, Alber F, Aloy P, Davis FP, Korkin D, Pichaud M, Topf M, Sali A: A structural perspective on protein-protein interactions. Current Opinion in Structural Biology 2004, 14: 313–324.

    Article  CAS  PubMed  Google Scholar 

  8. Wodak SJ, Janin J: Structural basis of macromolecular recognition. Advances in Protein Chemistry 2002, 61: 9–73.

    Article  PubMed  Google Scholar 

  9. Valencia A, Pazos F: Computational methods for the prediction of protein interactions. Current Opinion in Structural Biology 2002, 12: 368–373.

    Article  CAS  PubMed  Google Scholar 

  10. Smith GR, Sternberg MJE: Prediction of protein-protein interactions by docking methods. Current Opinion in Structural Biology 2002, 12: 28–35.

    Article  PubMed  Google Scholar 

  11. Jones S, Marin A, Thornton JM: Protein domain interfaces: Characterization and comparison with oligomeric protein interfaces. Protein Engineering 2000, 13: 77–82.

    Article  CAS  PubMed  Google Scholar 

  12. Jones S, Thornton JM: Analysis of protein-protein interaction sites using surface patches. Journal of Molecular Biology 1997, 272: 121–132.

    Article  CAS  PubMed  Google Scholar 

  13. De S, Krishnadev O, Srinivasan N, Rekha N: Interaction preferences across protein-protein interfaces of obligatory and non-obligatory components are different. BMC Structural Biology 2005., 5:

    Google Scholar 

  14. Bahadur RP, Chakrabarti P, Rodier F, Janin J: A Dissection of Specific and Non-specific Protein-Protein Interfaces. Journal of Molecular Biology 2004, 336: 943–955.

    Article  CAS  PubMed  Google Scholar 

  15. Henrick K, Thornton JM: PQS: A protein quaternary structure file server. Trends in Biochemical Sciences 1998, 23: 358–361.

    Article  CAS  PubMed  Google Scholar 

  16. Brinda KV, Vishveshwara S: Oligomeric protein structure networks: Insights into protein-protein interactions. BMC Bioinformatics 2005., 6:

    Google Scholar 

  17. The World Index of Molecular Visualization Resource[]

  18. Global Protein Surface Survey[]

  19. Mark-Us: A Function Annotation Server[]

  20. Porollo A, Meller J: Versatile annotation and publication quality visualization of protein complexes using POLYVIEW-3D. BMC bioinformatics 2007, 8: 316.

    Article  PubMed Central  PubMed  Google Scholar 

  21. Weisel M, Proschak E, Schneider G: PocketPicker: Analysis of ligand binding-sites with shape descriptors. Chemistry Central Journal 2007., 1:

    Google Scholar 

  22. Teyra J, Doms A, Schroeder M, Pisabarro MT: SCOWLP: A web-based database for detailed characterization and visualization of protein interfaces. BMC Bioinformatics 2006., 7:

    Google Scholar 

  23. Murzin AG, Brenner SE, Hubbard T, Chothia C: SCOP: A structural classification of proteins database for the investigation of sequences and structures. Journal of Molecular Biology 1995, 247: 536–540.

    CAS  PubMed  Google Scholar 

  24. Jmol: an open-source Java viewer for chemical structures in 3D[]

  25. Guex N, Peitsch MC: SWISS-MODEL and the Swiss-PdbViewer: An environment for comparative protein modeling. Electrophoresis 1997, 18: 2714–2723.

    Article  CAS  PubMed  Google Scholar 

  26. The PyMOL Molecular Graphics System[]

  27. Python Programming Language[]

  28. Sanner MF, Olson AJ, Spehner J-C: Reduced surface: an efficient way to compute molecular surfaces. Biopolymers 1996, 38: 305–320.

    Article  CAS  PubMed  Google Scholar 

  29. Honig B, Nicholls A: Classical electrostatics in biology and chemistry. Science 1995, 268: 1144–1149.

    Article  CAS  PubMed  Google Scholar 

  30. Nicholls A, Honig B: A rapid finite difference algorithm, utilizing successive over-relaxation to solve the Poisson-Boltzmann equation. J Comput Chem 1991, 12: 435–445.

    Article  CAS  Google Scholar 

  31. Naccess V2.1.1 – Atomic Solvent Accessible Area Calculations[]

  32. Tsodikov OV, Thomas Record M Jr, Sergeev YV: Novel computer program for fast exact calculation of accessible and molecular surface areas and average surface curvature. Journal of Computational Chemistry 2002, 23: 600–609.

    Article  CAS  PubMed  Google Scholar 

  33. Eisenhaber F, Lijnzaad P, Argos P, Sander C, Scharf M: The double cubic lattice method: Efficient approaches to numerical integration of surface area and volume and to dot surface contouring of molecular assemblies. J Comput Chem 1995, 16: 273–284.

    Article  CAS  Google Scholar 

  34. Eisenhaber F, Argos P: Improved strategy in analytic surface calculation for molecular systems: Handling of singularities and computational efficiency. J Comp Chem 1993, 14: 1272–1280.

    Article  CAS  Google Scholar 

  35. Connolly ML: The molecular surface package. Journal of Molecular Graphics 1993, 11: 139–141.

    Article  CAS  PubMed  Google Scholar 

  36. Ghose AK, Crippen GM: Atomic physicochemical parameters for three-dimensional structure-directed quantitative structure-activity relationships. I. Partition coefficients as a measure of hydrophobicity. J Comput Chem 1986, 7: 565–577.

    Article  CAS  Google Scholar 

  37. Ghose AK, Viswanadhan VN, Wendoloski JJ: Prediction of Hydrophobic (Lipophilic) Properties of Small Organic Molecules Using Fragmental Methods: An Analysis of ALOGP and CLOGP Methods. J Phys Chem A 1998, 102: 3762–3772.

    Article  CAS  Google Scholar 

  38. Viswanadhan VN, Ghose AK, Revankar GR, Robins RK: Atomic physicochemical parameters for three dimensional structure directed quantitative structure-activity relationships. 4. Additional parameters for hydrophobic and dispersive interactions and their application for an automated superposition of certain naturally occurring nucleoside antibiotics. J Chem Inf Comput Sci 1989, 29: 163–172.

    Article  CAS  Google Scholar 

  39. Audry E, Dubost JP, Colleter JC, Dallet P: A new approach of structure activity relationships: The 'potential of molecular lipophilicity'. European Journal of Medicinal Chemistry 1986, 21: 71–72.

    CAS  Google Scholar 

  40. Heiden W, Moeckel G, Brickmann J: A new approach to analysis and display of local lipophilicity/hydrophilicity mapped on molecular surfaces. J Comput Aided Mol Des 1993, 7: 503–514.

    Article  CAS  PubMed  Google Scholar 

  41. Zviling M, Leonov H, Arkin IT: Genetic algorithm-based optimization of hydrophobicity tables. Bioinformatics 2005, 21: 2651–2656.

    Article  CAS  PubMed  Google Scholar 

  42. Pearlman DA, Case DA, Caldwell JW, Ross WS, Cheatham TE III, DeBolt S, Ferguson D, Seibel G, Kollman P: "AMBER", a package of computer programs for applying molecular mechanics, normal mode analysis, molecular dynamics and free energy calculations to stimulate the structural and energetic properties of molecules. Comput Phys Commun 1995, 91: 1–42.

    Article  CAS  Google Scholar 

  43. Giacovazzo C, Monaco HL, Viterbo D, Scordari F, Gilli G, Zanoti G, Catti M: Fundamentals of crystallography. IUCr Texts on Crystallography No 2 1995., 2:

    Google Scholar 

  44. The CCP4 suite: Programs for protein crystallography Acta Crystallogr D Biol Crystallogr 1994, 50(Pt 5):760–763.

  45. Verdecia MA, Larkin RM, Ferrer J-L, Riek R, Chory J, Noel JP: Structure of the Mg-chelatase cofactor GUN4 reveals a novel hand-shaped fold for porphyrin binding. PLoS Biol 2005, 3: e151.

    Article  PubMed Central  PubMed  Google Scholar 

  46. Albeck S, Dym O, Unger T, Snapir Z, Bercovich Z, Kahana C: Crystallographic and biochemical studies revealing the structural basis for antizyme inhibitor function. Protein Science 2008, 17: 793–802.

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  47. Kern AD, Oliveira MA, Coffino P, Hackert ML: Structure of mammalian ornithine decarboxylase at 1.6 Å resolution: Stereochemical implications of PLP-dependent amino acid decarboxylases. Structure 1999, 7: 567–581.

    Article  CAS  PubMed  Google Scholar 

  48. Kuglstatter A, Oubridge C, Nagai K: Induced structural changes of 7SL RNA during the assembly of human signal recognition particle. Nat Struct Biol 2002, 9: 740–744.

    Article  CAS  PubMed  Google Scholar 

  49. Oubridge C, Kuglstatter A, Jovine L, Nagai K: Crystal structure of SRP19 in complex with the S domain of SRP RNA and its implication for the assembly of the signal recognition particle. Mol Cell 2002, 9: 1251–1261.

    Article  CAS  PubMed  Google Scholar 

  50. Hall M, Stueckler C, Ehammer H, Pointner E, Oberdorfer G, Gruber K, Hauer B, Stuermer R, Kroutil W, Macheroux P, Faber K: Asymmetric bioreduction of C = C bonds using enoate reductases OPR1, OPR3 and YqjM: Enzyme-based stereocontrol. Advanced Synthesis and Catalysis 2008, 350: 411–418.

    Article  CAS  Google Scholar 

  51. Breithaupt C, Strassner J, Breitinger U, Huber R, Macheroux P, Schaller A, Clausen T: X-ray structure of 12-Oxophytodienoate reductase 1 provides structural insight into substrate binding and specificity within the family of OYE. Structure 2001, 9: 419–429.

    Article  CAS  PubMed  Google Scholar 

  52. Breithaupt C, Kurzbauer R, Lilie H, Schaller A, Strassner J, Huber R, Macheroux P, Clausen T: Crystal structure of 12-oxophytodienoate reductase 3 from tomato: Self-inhibition by dimerization. Proceedings of the National Academy of Sciences of the United States of America 2006, 103: 14337–14342.

    Article  PubMed Central  CAS  PubMed  Google Scholar 

Download references


This work was supported by the Austrian Federal Ministry of Science and Research through the GEN-AU project BIN II (Bioinformatics Integration Network II) and by the Research Centre Applied Biocatalysis. We want to acknowledge Markus C. Jorde who was involved in parts of the coding of HydroCalc and PatchCalc and Daniel Friedl who helped to write the installation manual as well as Gustav Oberdorfer who provided the docked nitroalkene structures. We would also like to thank Michel F. Sanner (MSMS) and Raquel Norel (DelPhi) for allowing us to integrate and distribute their programs along with VASCo.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Georg Steinkellner.

Additional information

Authors' contributions

GS designed and implemented the software and drafted the manuscript. RR was involved in software design and testing. GGT contributed to the draft of the manuscript, webpage creation and coordination of software packaging and licensing. KG participated in the design and implementation of HydroCalc and PatchCalc and helped to draft the manuscript. General scientific advice was given by CK and KG. All authors read and approved the final manuscript.

Electronic supplementary material


Additional file 1: Calculated HC values for amino acids. The data table provided contains the calculated hydrophobic contribution values for the standard amino acids. (PDF 227 KB)

Authors’ original submitted files for images

Rights and permissions

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and Permissions

About this article

Cite this article

Steinkellner, G., Rader, R., Thallinger, G.G. et al. VASCo: computation and visualization of annotated protein surface contacts. BMC Bioinformatics 10, 32 (2009).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • Protein Data Bank
  • Electrostatic Potential
  • Surface Point
  • Molecular Surface
  • Contact Patch