Manual

Content

  1. Molecule preparation
    1. Molecular dynamics run
    2. Atom radius preparation
    3. Atom types preparation
  2. Configuration of CAVER
    1. Grid cell resolution
    2. Name of file with radii
    3. Name of file with atomic types
    4. Name of file with trajectory
    5. Trajectory traversing
    6. Specification of starting point
    7. Cropping number
  3. CAVER running
    1. Stand alone
    2. PyMol plugin
  4. Results postprocessing and visualisation
    1. Graphs and results


1. Molecule preparation

Dynamical behaviour of macromolecules can be studied by many different mathematical-physical models. One of them is a classical molecular dynamics (MD). MD producess trajectory via integrating Newton equation of motion (F=m.a) where the force (F) is calculated as gradient on potential energy (F=-grad E) evaluated by molecular mechanics (MM). MM is based on clear approximation outgoing from Born-Oppenheimer approximation. All atoms are considered to be heavy charged balls with defined radius, bonds and bond angles behave like harmonic strings. Similar approximation is used for dihedral angles. Program package AMBER,CHARM,GROMOS and many others can be used for MD simulation.



1.1. Molecular dynamics run

Molecular dynamic simulation can be performed via program SANDER or PMEMD (of AMBER). Some basic information and tutorials for MD simulation can be found in AMBER tutorial. Atom's coordinates of the trajectory are usually stored in *.trj file.

Trajectory file (*.trj) is used as CAVER input.

An example of trajectory file simulation.trj can be seen below (detailed information about the file format can be found here).

rdparm example trajectory
-9.303 -26.112   2.297 -10.054 -25.926   1.649  -9.228 -25.330   2.932  -9.505
-26.933   2.850  -8.034 -26.269   1.572  -7.228 -26.379   2.298  -8.031 -27.506
0.670  -8.861 -27.470  -0.035  -7.100 -27.535   0.104  -8.124 -28.764   1.536
.
:
  
			  


1.2. Atom radius preparation

CAVER considers molecule as a group of ball-shaped atoms. Therefore, radius of every atom type has to be specified. The van der Waals radii (in A) are used for this purpose. An example of atom radius file named radius.dat can be seen below.

H 0.6000
HP 1.1000
HA 1.4590
C 1.9080
CA 1.9080
CD1 1.9080
CE2 1.9080
CE3 1.9080
CG2 1.9080
CH2 1.9080
.
:
			  


1.3. Atom types preparation

Atom type is necessary for appropriate assignement of atom radius. Types are specified in the file types.dat. The first line specifies a number of atoms in a molecule. This file can be easily generated from PDB using gawk.

gawk 'ATOM {print $3}' your.pdb > extracted.types
			  

An example of atom types file named types.dat can be seen below.

4696
N
H1
H2
H3
CA
HA
CB
HB2
HB3
CG
HG2
HG3
.
:
			  



2. Configuration of Caver

CAVER options are specified in a file named config.dat. An example of config.dat file is shown below.

0.8
radius.dat
types.dat
simulation.trj
20 1 0 2
3 3 1652 1667 2285
4
			  

Following options are stored.



2.1. Grid cell resolution

CAVER approximates the protein on a grid. The length of a grid cell (a distance between two nodes) is specified in Grid size value written in config.dat. Usual value is about 0.5 - 1.0 A. Lower values generate finer grid, but the calculation will take more time. Higher values allow quick processing, however the result will be less accurate.



2.2. Name of a file with radii.

Appropriate van der Waals radii for miscellaneous atom types are usually stored in the file named radius.dat



2.3. Name of file with atom types.

Atom types file format is specified above. Atom types are stored in the file named types.dat



2.4. Name of a file with trajectory.

The example of MD trajectory file is given here. In our example, the name of a file is simulation.trj



2.5. Trajectory traversing

This line in config.dat contains 4 numbers.



2.6. Specification of starting point

Starting point of the calculation, typically an active site, should be specified by one of 3 ways. The way of specification is chosen by the first number (1 or 2 or 3).

  1. The starting point is computed from atom positions as the average point from atoms centers. The number of atoms forming the site is to be specified, then atom numbers follow [atoms are counted (numbered) as (1., 2., 3., ...)]

    If 3 atoms are used for the center computation and atom indices are (123,324,50), the resulting line is:

    1 3 123 324 50
    If the calculated starting point collides with a protein, the algorithm will not start.

  2. In the second way, the starting point is specified by XYZ-coordinates.

    If active site is near the point [23.4, -19.3, 20.5], the line is

    2  23.4  -19.3  20.5

  3. In the third way, the starting point is computed from atoms positions as the average point from atoms centers similarly to option 1. The difference is that the searching algorithm tries to find a starting point outside the protein interior (in case of starting point inside the protein). The number of atoms forming the site is to be specified, then atom numbers follow [the atoms are counted as (1., 2., 3., ...)]

    If 3 atoms are used for the center computation and atom indices are (123,324,50), the resulting line is:

    3 3 123 324 50



2.7. Cropping number

This number written in the file named config.dat specifies number of points that are cut (off) from the beginning of the path. First few points are very close to the protein surface so they must be excluded for the statistics i.e. an average protein tunnel width estimation.

For better understanding of the term ,,Cropping number'', see this graph.



3. CAVER running

CAVER can be used as stand alone application which is designed for analysis of MD trajectories or pyMOL plug-in which allows analysis of MD trajectory as well as X-ray structure and direct visualisation of results.



3.1. Stand alone application

caver [-h | --help] [-o <filename>] [-e | --enable-output-trajectory]

options
  -h  --help                      Display this help screen.
  -i file  --input file           Reads file with configuration (default config.dat)
  -e  --enable-output-trajectory  Outputs PDB trajectory of shortest way 
                                  for PYMOL output, and for GNUPLOT output.
  --enable-output-vmd             Outputs for VMD visualization.
  -o file  --output file          Writes resulting table of radiuses.
  -d dir  --output-dir dir        Set directory for output files.
  -t num --tun num 			Tries to find num tunnels from active site. (for 0.99.2 version and higher)
		      
    	              

CAVER configuration is stored in config.dat and must be present in the working directory.
Examples can be downloaded from here.



3.2. PyMol plugin

Proccessing CAVER via PyMol plugin:

  1. Load your PDB structure
  2. Run CAVER plug-in
  3. Set grid resolution, in case of very fine grid (<0.4 A) is the calculation very slow
  4. Check or setup CAVER bin location; the proper directory with qconvex.exe (qhull package) must be set in PATH system variable
  5. Select appropriate atoms or residues to setup starting point for path finding. PyMol will assign some name like '(sel01)'
  6. Write '(sel01)' in a selection list (or you can use directly pyMol notation e.g. /dhaa///ASP`106/OD1 etc.)
    - to see the starting point - click on "Show starting point" button
    - you can change starting point position also using three scrolls
    - to ignore water molecules - check Ignore water (HOH, WAT, H2O)
    - in case of presence of ligand or ions in your structure, remove them
  7. Run CAVER and wait (calculation can take from a few seconds to several minutes depending on your PC and Grid resolution)
  8. The results appear in pyMol: crisscross (starting point), tunnel (tunnel profile represented by a mesh), movie (escape of a probe) can be viewed by clicking on the play button of pyMol window
  9. Some examples can be find here



4. Results post-processing and Visualization

CAVER generates following result files:



4.1. Graphs and results

CAVER post-processing

Changes in a gorge radius in time for three different haloalkane dehalogenases (DhlA, LinB, and DhaA). This plot was generated from result.dat file using the program xmgrace programm.

LEFT: Changes in a gorge tunnel radius (black) and mean tunnel radius (red) in time of three different haloalkane dehalogenases (DhlA, LinB and DhaA). RIGHT: Changes in mean cost function during in time. This plot was generated from result.dat file using the program xmgrace.



Escape trajectory showing the low cost path in 3D space without surrounding protein. This plot was generated from path_xxx.pdb and path_xxx.dat using the program gnuplot.



Tunnel profile visualized by connected points and spline curve. This plot was generated from path_xxx.pdb and path_xxx.dat using the program gnuplot.