Sabtu, 26 November 2011

AutoDock Vina Manual



Accuracy AutoDock Vina significantly improves the average accuracy of the binding mode predictions compared to AutoDock 4, judging by our tests on the training set used in AutoDock 4 development.[*]
Additionally and independently, AutoDock Vina has been tested against a virtual screening benchmark called the Directory of Useful Decoys by the Watowich group, and was found to be "a strong competitor against the other programs, and at the top of the pack in many cases". It should be noted that all six of the other docking programs, to which it was compared, are distributed commercially.
AutoDock Tools Compatibility
For its input and output, Vina uses the same PDBQT molecular structure file format used by AutoDock. PDBQT files can be generated (interactively or in batch mode) and viewed using MGLTools. Other files, such as the AutoDock and AutoGrid parameter files (GPF, DPF) and grid map files are not needed.

Binding mode prediction accuracy on the test set. "AutoDock" refers to AutoDock 4, and "Vina" to AutoDock Vina 1.

Ease of Use
Vina's design philosophy is not to require the user to understand its implementation details, tweak obscure search parameters, cluster results or know advanced algebra (quaternions). All that is required is the structures of the molecules being docked and the specification of the search space including the binding site. Calculating grid maps and assigning atom charges is not needed. The usage summary can be printed with "vina --help". The summary automatically remains in sync with the possible usage scenarios.
Implementation Quality
  • By design, the results should not have a statistical bias related to the conformation of the input structure.
  • Attention is paid to checking the syntactic correctness of the input and reporting errors to the user in a lucid manner.
  • The invariance of the covalent bond lengths is automatically verified in the output structures.
  • Vina avoids imposing artificial restrictions, such as the number of atoms in the input, the number of torsions, the size of the search space, the exhaustiveness of the search, etc.
Flexible Side Chains
Like in AutoDock 4, some receptor side chains can be chosen to be treated as flexible during docking.
Speed AutoDock Vina tends to be faster than AutoDock 4 by orders of magnitude.[*]
Multiple CPUs/Cores
Vina can take advantage of multiple CPUs or CPU cores on your system to significantly shorten its running time.
Given the same binary version of the program, the same input, options and random seed, the results should be reproducible with any value of "cpu".

Average time per receptor-ligand pair on the test set. "AutoDock" refers to AutoDock 4, and "Vina" to AutoDock Vina 1.


AutoDock Vina is released under a very permissive Apache license, with few restrictions on commercial or non-commercial use, or on the derivative works. The text of the license can be found here.


If you have never used AutoDock Vina before, please study the Video Tutorial before attempting to use it.
This video tutorial demonstrates molecular docking of imatinib using Vina with AutoDock Tools and PyMOL

Frequently Asked Questions

How accurate is AutoDock Vina?
See Features
It should be noted that the predictive accuracy varies a lot depending on the target, so it makes sense to evaluate AutoDock Vina against your particular target first, if you have known actives, or a bound native ligand structure, before ordering compounds. While evaluating any docking engine in a retrospective virtual screen, it might make sense to select decoys of similar size, and perhaps other physical characteristics, to your known actives.
What is the difference between AutoDock Vina and AutoDock 4?
AutoDock 4 (and previous versions) and AutoDock Vina were both developed in the Molecular Graphics Lab at The Scripps Research Institute. AutoDock Vina inherits some of the ideas and approaches of AutoDock 4, such as treating docking as a stochastic global opimization of the scoring function, precalculating grid maps (Vina does that internally), and some other implementation tricks, such as precalculating the interaction between every atom type pair at every distance. It also uses the same type of structure format (PDBQT) for maximum compatibility with auxiliary software.
However, the source code, the scoring funcion and the actual algorithms used are brand new, so it's more correct to think of AutoDock Vina as a new "generation" rather than "version" of AutoDock. The performance was compared in the original publication [*], and on average, AutoDock Vina did considerably better, both in speed and accuracy. However, for any given target, either program may provide a better result, even though AutoDock Vina is more likely to do so. This is due to the fact that the scoring functions are different, and both are inexact.
What is the difference between AutoDock Vina and AutoDock Tools?
AutoDock Tools is a module within the MGL Tools software package specifically for generating input (PDBQT files) for AutoDock or Vina. It can also be used for viewing the results.
Can I dock two proteins with AutoDock Vina?
You might be able to do that, but AutoDock Vina is designed only for receptor-ligand docking. There are better programs for protein-protein docking.
Will Vina run on my 64-bit machine?
Yes. By design, modern 64-bit machines can run 32-bit binaries natively.
Why do I get "can not open conf.txt" error? The file exists!
Oftentimes, file browsers hide the file extension, so while you think you have a file "conf.txt", it's actually called "conf.txt.txt". This setting can be changed in the control panel or system preferences.
You should also make sure that the file path you are providing is correct with respect to the directory (folder) you are in, e.g. if you are referring simply to conf.txt in the command line, make sure you are in the same directory (folder) as this file. You can use ls or dir commands on Linux/MacOS and Windows, respectively, to list the contents of your directory.
Why do I get "usage errors" when I try to follow the video tutorial?
The command line options changed somewhat since the tutorial has been recorded. In particular, "--out" replaced "--all".
Why is my docked conformation different from what you get in the video tutorial?
The docking algorithm is non-deterministic. Even though with this receptor-ligand pair, the minimum of the scoring function corresponds to the correct conformation, the docking algorithm sometimes fails to find it. Try several times and see for yourself. Note that the probability of failing to find the mininum may be different with a different system.
My docked conformation is the same, but my energies are different from what you get in the video tutorial. Why?
The scoring function changed since the tutorial has been recorded, but only in the part that is independent of the conformation: the ligand-specific penalty for flexibility changed.
Why do my results look weird in PyMOL?
PDBQT is not a standard molecular structure format. The version of PyMOL used in the tutorial (0.99rc6) happens to display it well (because PDBQT is somewhat similar to PDB). This might not be the case for newer versions of PyMOL.
Any other way to view the results?
You can also view PDBQT files in PMV (part of MGL Tools), or convert them into a different file format (e.g. using AutoDock Tools, or with "save as" in PMV)
How big should the search space be?
As small as possible, but not smaller. The smaller the search space, the easier it is for the docking algorithm to explore it. On the other hand, it will not explore ligand and flexible side chain atom positions outside the search space. You should probably avoid search spaces bigger than 30 x 30 x 30 Angstrom, unless you also increase "--exhaustiveness".
Why am I seeing a warning about the search space volume being over 27000 Angstrom^3?
This is probably because you intended to specify the search space sizes in "grid points" (0.375 Angstrom), as in AutoDock 4. The AutoDock Vina search space sizes are given in Angstroms instead. If you really intended to use an unusually large search space, you can ignore this warning, but note that the search algorithm's job may be harder. You may need to increase the value of the exhaustiveness to make up for it. This will lead to longer run time.
The bound conformation looks reasonable, except for the hydrogens. Why?
AutoDock Vina actually uses a united-atom scoring function, i.e. one that involves only the heavy atoms. Therefore, the positions of the hydrogens in the output are arbitrary. The hydrogens in the input file are used to decide which atoms can be hydrogen bond donors or acceptors though, so the correct protonation of the input structures is still important.
What does "exhaustiveness" really control, under the hood?
In the current implementation, the docking calculation consists of a number of independent runs, starting from random conformations. Each of these runs consists of a number of sequential steps. Each step involves a random perturbation of the conformation followed by a local optimization (using the Broyden-Fletcher-Goldfarb-Shanno algorithm) and a selection in which the step is either accepted or not. Each local optimization involves many evaluations of the scoring function as well as its derivatives in the position-orientation-torsions coordinates. The number of evaluations in a local optimization is guided by convergence and other criteria. The number of steps in a run is determined heuristically, depending on the size and flexibility of the ligand and the flexible side chains. However, the number of runs is set by the exhaustiveness parameter. Since the individual runs are executed in parallel, where appropriate, exhaustiveness also limits the parallelism. Unlike in AutoDock 4, in AutoDock Vina, each run can produce several results: promising intermediate results are remembered. These are merged, clustered and sorted automatically to produce the final result.
Why do I not get the correct bound conformation?
It can be any of a number of things:
  • If you are coming from AutoDock 4, a very common mistake is to specify the search space in "points" (0.375 Angstrom), instead of Angstroms.
  • Your ligand or receptor might not have been correctly protonated.
  • Bad luck (the search algorithm could have found the correct conformation with good probability, but was simply unlucky). Try again with a different seed.
  • The minimum of the scoring function correponds to the correct conformation, but the search algorithm has trouble finding it. In this case, higher exhaustiveness or smaller search space should help.
  • The minimum of the scoring function simply is not where the correct conformation is. Trying over and over again will not help, but may occasionally give the right answer if two wrongs (inexact search and scoring) make a right. Docking is an approximate approach.
  • Related to the above, the culprit may also be the quality of the X-ray or NMR receptor structure.
  • If you are not doing redocking, i.e. using the correct induced fit shape of the receptor, perhaps the induced fit effects are large enough to affect the outcome of the docking experiment.
  • The rings can only be rigid during docking. Perhaps they have the wrong conformation, affecting the outcome.
  • You are using a 2D (flat) ligand as input.
  • The actual bound conformation of the ligand may occasionally be different from what the X-ray or NMR structure shows.
  • Other problems
Why don't I get as many binding modes as I specify with "--num_modes"?
This option specifies the maximum number of binding modes to output. The docking algorithm may find fewer "interesting" binding modes internally. The number of binding modes in the output is also limited by the "energy_range", which you may want to increase.
Why don't the results change when I change the partial charges?
AutoDock Vina ignores the user-supplied partial charges. It has its own way of dealing with the electrostatic interactions through the hydrophobic and the hydrogen bonding terms. See the original publication [*] for details of the scoring function.
I changed something, and now the docking results are different. Why?
Firstly, had you not changed anything, some results could have been different anyway, due to the non-deterministic nature of the search algorithm. Exact reproducibility can be assured by supplying the same random seed to both calculations, but only if all other inputs and parameters are the same as well. Even minor changes to the input can have an effect similar to a new random seed. What does make sense discussing are the statistical properties of the calculations: e.g. "with the new protonation state, Vina is much less likely to find the correct docked conformation".
How do I use flexible side chains?
You split the receptor into two parts: rigid and flexible, with the latter represented somewhat similarly to how the ligand is represented. See the section "Flexible Receptor PDBQT Files" of the AutoDock4.2 User Guide (page 14) for how to do this in AutoDock Tools. Then, you can issue this command: vina --config conf --receptor rigid.pdbqt --flex side_chains.pdbqt --ligand ligand.pdbqt. Also see this write-up on this subject.
How do I do virtual screening?
Please note that a variety of docking management applications exist to assist you in this task.
Could you do docking or virtual screening for me?
We probably could, but for lack of time, we generally don't. If you are interested in finding collaborators or hiring help, you may want to check the AutoDock Vina forum
Why didn't you reply to my question?
If you sent your question by email, you probably got a reference to the forum. If you asked your question in the forum, and it didn't get an answer, please understand that the forum exists to allow the members of the user community to interact with each other.
How can I increase the chances of my question getting answered in the forum?
Consider starting with "Hi everyone, I've helped many of you with advice on how to install/start/use/interpret/script/compile/modify Vina in the past...", assuming this is true. If you haven't helped anyone, consider answering two questions for every one you ask.

Platform Notes and Installation



Vina is expected to work on Windows XP and newer systems.


Double-click the downloaded MSI file and follow the instructions


Open the Command Prompt and, if you installed Vina in the default location, type
"\Program Files\The Scripps Research Institute\Vina\vina.exe" --help
If you are using Cygwin, the above command would instead be
/cygdrive/c/Program\ Files/The\ Scripps\ Research\ Institute/Vina/vina --help
See the Video Tutorial for details. Don't forget to check out Other Software for GUIs, etc.



Vina is expected to work on x86 and compatible 64-bit Linux systems.


tar xzvf autodock_vina_1_1_2_linux_x86.tgz
Optionally, you can copy the binary files where you want.


./autodock_vina_1_1_2_linux_x86/bin/vina --help
If the executable is in your PATH, you can just type "vina --help" instead. See the Video Tutorial for details. Don't forget to check out Other Software for GUIs, etc.



Vina is expected to work on Mac OS X 10.4 (Tiger) through 10.6 (Snow Leopard), both Intel and PowerPC.


tar xzvf autodock_vina_1_1_2_mac.tgz
Optionally, you can copy the binary files where you want.


./autodock_vina_1_1_2_mac/bin/vina --help
If the executable is in your PATH, you can just type "vina --help" instead. See the Video Tutorial for details. Don't forget to check out Other Software for GUIs, etc.

Building from Source

Attention: Building Vina from source is NOT meant to be done by regular users!

Step 1: Install a C++ compiler suite

On Windows, you may want to install Visual Studio; on OS X, Xcode; and on Linux, the GCC compiler suite.

Step 2: Install Boost

Install Boost. (Version 1.41.0 was used to compile the official binaries. With other versions, your luck may vary) Then, build and run one of the example programs, such as the Regex example, to confirm that you have completed this step. If you can't do this, please seek help from the Boost community.

Step 3: Build Vina

If you are using Visual Studio, you may want to create three projects: lib, main and split, with the source code from the appropriate subdirectories. lib must be a library, that the other projects depend on, and main and split must be console applications. For optimal performance, remember to compile using the Release mode.
On OS X and Linux, you may want to navigate to the appropriate build subdirectory, customize the Makefile by setting the paths and the Boost version, and then type
make depend

Other Software

Disclaimer: This list is for information purposes only and does not constitute an endorsement.
  • Tools specifically designed for use with AutoDock Vina (in no particular order):
    • MGLTools, which includes AutoDock Tools (ADT) and Python Molecular Viewer (PMV). ADT is required for generating input files for AutoDock Vina, and PMV can be used for viewing the results
    • PyRx can be used to set up docking and virtual screening with AutoDock Vina and to view the results
    • The new Autodock/Vina plugin for PyMOL can be used to set up docking and virtual screening with AutoDock Vina and to view the results
    • Computer-Aided Drug-Design Platform using PyMOL is another plugin for PyMOL that also integrates AMBER, Reduce and SLIDE.
    • AutoGrow 2 uses AutoDock Vina in its rational drug design procedure
    • NNScore will re-score Vina results using an artificial neural network trained on Binding MOAD and PDBBind
    • A Vina GUI layer for Windows by Biochem Lab Solutions can be used to facilitate virtual screening with AutoDock Vina
    • VSDK can be used to faciliate virtual screening with AutoDock Vina
    • PaDEL-ADV can be used to facilitate virtual screening with AutoDock Vina
    • Docking@UTMB allows you to do virtual screening with AutoDock Vina through their web site
    • NBCR CADD Pipeline provides access to virtual screening with AutoDock Vina on NBCR computers
    • MOLA is a bootable, self-configuring system for virtual screening using AutoDock4/Vina on computer clusters
    • Off-Target Pipeline is a platform intended to carry out secondary target identification and docking
    • AUDocker can be used to facilitate virtual screening with AutoDock Vina
  • Other tools that you are likely to find useful while docking or virtual screening with AutoDock Vina:
    • PyMOL is one of the most popular programs for molecular visualization and can be used for viewing the docking results
    • OpenBabel can be used to convert among various structure file formats, assign the protonation states, etc.
    • ChemAxon Marvin can be used to visualize structures, convert among various structure file formats, assign the protonation states, etc.



The usage summary can be obtained with "vina --help":
  --receptor arg        rigid part of the receptor (PDBQT)
  --flex arg            flexible side chains, if any (PDBQT)
  --ligand arg          ligand (PDBQT)

Search space (required):
  --center_x arg        X coordinate of the center
  --center_y arg        Y coordinate of the center
  --center_z arg        Z coordinate of the center
  --size_x arg          size in the X dimension (Angstroms)
  --size_y arg          size in the Y dimension (Angstroms)
  --size_z arg          size in the Z dimension (Angstroms)

Output (optional):
  --out arg             output models (PDBQT), the default is chosen based on 
                        the ligand file name
  --log arg             optionally, write log file

Misc (optional):
  --cpu arg                 the number of CPUs to use (the default is to try to
                            detect the number of CPUs or, failing that, use 1)
  --seed arg                explicit random seed
  --exhaustiveness arg (=8) exhaustiveness of the global search (roughly 
                            proportional to time): 1+
  --num_modes arg (=9)      maximum number of binding modes to generate
  --energy_range arg (=3)   maximum energy difference between the best binding 
                            mode and the worst one displayed (kcal/mol)

Configuration file (optional):
  --config arg          the above options can be put here

Information (optional):
  --help                display usage summary
  --help_advanced       display usage summary with advanced options
  --version             display program version

Configuration file

For convenience, some command line options can be placed into a configuration file.
For example:
receptor = hsg1/rigid.pdbqt
ligand = ligand.pdbqt

center_x =  2
center_y =  6
center_z = -7

size_x = 25
size_y = 25
size_z = 25

energy_range = 4
In case of a conflict, the command line option takes precedence over the configuration file one.

Search space

The search space effectively restricts where the movable atoms, including those in the flexible side chains, should lie.


With the default (or any given) setting of exhaustiveness, the time spent on the search is already varied heuristically depending on the number of atoms, flexibility, etc. Normally, it does not make sense to spend extra time searching to reduce the probability of not finding the global minimum of the scoring function beyond what is significantly lower than the probability that the minimum is far from the native conformation. However, if you feel that the automatic trade-off made between exhaustiveness and time is inadequate, you can increase the exhaustiveness level. This should increase the time linearly and decrease the probability of not finding the minimum exponentially.



The predicted binding affinity is in kcal/mol.


RMSD values are calculated relative to the best mode and use only movable heavy atoms. Two variants of RMSD metrics are provided, rmsd/lb (RMSD lower bound) and rmsd/ub (RMSD upper bound), differing in how the atoms are matched in the distance calculation:
  • rmsd/ub matches each atom in one conformation with itself in the other conformation, ignoring any symmetry
  • rmsd' matches each atom in one conformation with the closest atom of the same element type in the other conformation (rmsd' can not be used directly, because it is not symmetric)
  • rmsd/lb is defined as follows: rmsd/lb(c1, c2) = max(rmsd'(c1, c2), rmsd'(c2, c1))

Hydrogen positions

Vina uses a united-atom scoring function. As in AutoDock, polar hydrogens are needed in the input structures to correctly type heavy atoms as hydrogen bond donors. However, in Vina, the degrees of freedom that only move hydrogens, such as the hydroxyl group torsions, are degenerate. Therefore, in the output, some hydrogen atoms can be expected to be positioned randomly (but consistent with the covalent structure). For a united-atom treatment, this is essentially a cosmetic issue.

Separate models

All predicted binding modes, including the positions of the flexible side chains are placed into one multimodel PDBQT file specified by the "out" parameter or chosen by default, based on the ligand file name. If needed, this file can be split into individual models using a separate program called "vina_split", included in the distribution.

Advanced Options

AutoDock Vina's "advanced options" are intended to be primarily used by people interested in methods development rather than the end users. The usage summary including the advanced options can be shown with vina --help_advanced.
The advanced options allow
  • scoring without minimization
  • performing local optimization only
  • randomizing the input with no search (this is useful for testing docking software)
  • changing the weights from their default values (see the paper[*] for what the weights mean)
  • displaying the individual contributions to the intermolecular score, before weighting (these are shown with "--score_only"; see the paper[2] for what the terms are)

Virtual Screening

You may want to choose some of the tools listed under Other Software to perform virtual screening. Alternatively, if you are familiar with shell scripting, you can do virtual screening without them.
The examples below assume that Bash is your shell. They will need to be adapted to your specific needs.
To perform virtual screening on Windows, you can either use Cygwin and the Bash scripts below, or, alternatively, adapt them for the Windows scripting language.
Linux, Mac
Suppose you are in a directory containing your receptor receptor.pdbqt and a set of ligands named ligand_01.pdbqt, ligand_02.pdbqt, etc.
You can create a configuration file conf.txt, such as
receptor = receptor.pdbqt

center_x =  2
center_y =  6
center_z = -7

size_x = 25
size_y = 25
size_z = 25

num_modes = 9
And dock all ligands with
for f in ligand_*.pdbqt; do
    b=`basename $f .pdbqt`
    echo Processing ligand $b
    mkdir -p $b
    vina --config conf.txt --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
PBS Cluster
If you have a Linux Beowulf cluster, you can perform the individual dockings in parallel.
Continuing with our example, instead of executing the body of the above loop, we will write it into a series of *.job files and use qsub (a PBS command) to schedule them to be executed by the cluster:
for f in ligand_*.pdbqt; do
    b=`basename $f .pdbqt`
    echo Processing ligand $b
    mkdir -p $b
    echo "#! /bin/bash" > $j
    echo "cd $d" >> $j
    echo "vina --config conf.txt --cpu 1 --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt > ${b}/stdout 2> ${b}/stderr" >> $j
    chmod +x $j
    qsub -l cput=00:30:00 -l nodes=1:ppn=1 -l walltime=00:30:00 -l mem=512mb $j
Once the jobs have been scheduled, you can monitor their status with
qstat -u `whoami`
Selecting Best Results
If you are on Unix and in a directory that contains PDBQT files, all of which are Vina results, you may find the following script useful for selecting the top results. Run it as: 10
to get the file names of the top 10 hits, which can then be easily copied. The correct indentation matters, since the script is in Python.
#! /usr/bin/env python

import sys
import glob

def doit(n):
    file_names = glob.glob('*.pdbqt')
    everything = []
    for file_name in file_names:
        file = open(file_name)
        lines = file.readlines()
        line = lines[1]
        result = float(line.split(':')[1].split()[0])
        everything.append([result, file_name])
    everything.sort(lambda x,y: cmp(x[0], y[0]))
    part = everything[:n]
    for p in part:
        print p[1],

if __name__ == '__main__':


Brief summaries of changes between versions can be found here.


Getting Help

Follow this link to the user forum.

Reporting Bugs

AutoDock Vina strives to be free of bugs at all times. Therefore, potential bug reports are greatly appreciated, even if you are not exactly sure if they are bugs.

Likely bugs:

  • Early termination
  • Failure to terminate
  • Changes of the covalent lengths or of the invariant angles in the output
  • "Obviously wrong" clashes (check your "search space" though)
  • Disagreement with the documentation

Likely not bugs:

  • Anything that happens before you run Vina or after it finished
  • Occasional disagreement with the experiment


You can send your report by email with the subject line "Possible Vina Bug". The reproducibility of the problem you are witnessing may be vital, so please remember to include all of the following in your report:
  • the exact error message (if any) or description of the problem,
  • your version of the program,
  • the type of computer system you are running it on,
  • all command line options,
  • configuration file (if used)
  • ligand file as PDBQT
  • receptor file as PDBQT
  • flexible side chains file as PDBQT (if used)
  • output file as PDBQT (if any)
  • random seed the program used (this is printed when the program starts).

Senin, 21 November 2011

A tutorial on using PyMOL to generate publication quality figures.


[return to KB Wong's home page]

Through this tutorial, you will be able to generate the following figures:

You can download the files for the tutorials here.
Files included:
1w2i.pdb - crystal structure of PH acylphosphatase (PDB: 1W2I) (Cheung et al, Biochemistry, 44:4601-4611.) - electron density map from CNS/XPLOR (The map file name should include the .xplor extension)
1w2i_nowat.pdb -The water and ligand molecules from 1w2i.pdb have been removed (for electrostatics calculation). Since PH Acylphosphatase exists as a monomer in solution, only chain A is included. - the template APBS input file for electrostatics calculation
pymol.dx - the calculated electrostatics map

PyMOL can be download from
Remember, if you make figures for publication, please remember to cite:
DeLano, W.L. The PyMOL Molecular Graphics System (2002) DeLano Scientific, San Carlos, CA, USA.

1. Figure showing Electron Density Map

You will be able to generate the following figure after this tutorial:

1. Loading PDB file
File -> Open -> 1w2i.pdb

2. Load the map file
File -> Open ->
It takes a while to load the map file.

3. Zoom in the active site
PyMOL> select active, (resi 14-20,38) and chain A
PyMOL> zoom active
PyMOL> hide all
PyMOL> show stick, active

4. Locate and Display the active site water
We know that the amide group of Asn38 is h-bond to an active water.
PyMOL> select active_water, ( (resi 38 and name ND2 and chain A) around 3.5) and (resn HOH)
The above command select any water molecules that is/are around 3.5A of the ND2 atom of resi 38 in chain A
PyMOL> show spheres, active_water
Well the Oxygen atom is now shown in its vdw radius. We can reduce the size of the sphere to 0.5A by:
PyMOL> alter active_water, vdw=0.5
PyMOL> rebuild

5. Display the electron density around the active site atoms at sigma level=1.0
PyMOL> isomesh mesh1,, 1.0, (resi 14-20,38 and chain A), carve=1.6
Because the residue atoms were previously defined as "active", you can simply type:
PyMOL> isomesh mesh1,, 1.0, active, carve=1.6

6. You can change the color of the map by:
PyMOL> color grey, mesh1

7. Normally you want to set the background color to white for publication
PyMOL> bg_color white

8. Publication quality figures
To render a figure with the default resolution (640x480)
PyMOL> ray
You will be able to preview the low resolution figures on screen. If you have done everything right, you should be able to see this:

To render a figure with high resolution
PyMOL> ray 2400,2400
Well, it takes a while to produce it. Then you can save the figures in PNG by
File -> Save Image

9. You can save the session by:
File -> Save Session
The saved session will be a .pse extension. You can reload it by double-click the .pse file in Windows.

2. Cartoon representation and surface

You will be able to generate the following figures after this tutorial:

1. Load the PDB file
File -> Open -> 1w2i.pdb

2. Hide everything and then show protein cartton
PyMOL> hide everything, all
PyMOL> show cartoon, all

3. Color the helix, sheet, and loop
PyMOL> color purple, ss h
PyMOL> color yellow, ss s
PyMOL> color green, ss ""

4. Color chain A and B
PyMOL> color red, chain A
PyMOL> color blue, chain B

5. Create a surface display for chain A
PyMOL> create obj_a, chain A
PyMOL> show surface, obj_a
You can set the surface to be partially transparent.
PyMOL> set transparency=0.5
PyMOL> set transpareny=0.1

6. Color the active site residue
PyMOL> select active, (resi 14-20,38 and chain A)
PyMOL> color yellow, active
Try to rotate the molecule. Do you see a hole around the yellow surface? That's the active site craddle for binding phosphate.

If you haven't rotated the molecule, you can rotate it using the following commands to get a better view of the cradle:
PyMOL> turn y, -60; turn x, -20
PyMOL> zoom active

7. Locate and display the bound formate ion in the active site.
PyMOL> select ligand, active around 3.5 and resn FMT
PyMOL> show sticks, ligand
PyMOL> show spheres, ligand
PyMOL> alter ligand, vdw=0.5
PyMOL> rebuild
PyMOL> set transparency=0.25

8. Rendering and output
PyMOL> bg_color white
PyMOL> ray
File -> Save Image

9. Display the side-chain of active site residues on top of the cartoon representation
PyMOL> hide surface
PyMOL> select sidechain, not (name c+n+o)
PyMOL> show sticks, (active and sidechain)
PyMOL> color blue, name n*
PyMOL> color red, name o*
PyMOL> color white, name c*

10. Display and measure distances
Wizard -> Measurement -> Distance
Click two atoms to obtain the distance between these two atoms clicked.
Use this to measure the distance between the arginine N atoms and the oxygen atoms of formate ion.
When you are finished, press the 'Done' button

You can also measure the distance between two atoms by:
PyMOL> distance resi 20 and name NH2 and chain A, resi 1092 and name O2 and chain A

You can hide the distance label by
PyMOL> hide labels

11. create the figure
PyMOL> ray
File -> Save Image

3. Using APBS and PyMOL to display the electrostatics surface

You will be able to generate the following figure after this tutorial:

You need to remove the water and ligands molecule from 1w2i.pdb.

1w2i_nowat.pdb -The water and ligand molecules from 1w2i.pdb have been removed (for electrostatics calculation). Since PH Acylphosphatase exists as a monomer in solution, only chain A is included. - the template APBS input file for electrostatics calculation
pymol.dx - the calculated electrostatics map

A. Using APBS to calculate the electrostatics map
We assume you have install APBS and PDB2PQR in a linux machine.
1. Use PDB2PQR to convert the PDB format to PQR format
> --ff=amber --apbs-in 1w2i_nowat.pdb pymol.pqr
The PQR file will be output to pymol.pqr.

2. Use to determine the grid dimensions for APBS calculation
> pymol.pqr
You should be able to see the following results:

Center = 37.468 x 31.798 x 12.177 A
Coarse grid dims = 53.011 x 58.568 x 65.807 A
Fine grid dims = 51.183 x 54.452 x 58.710 A
Num. fine grid pts. = 97 x 97 x 97

Take a note on these parameters.

3. Edit the
You need to enter the following parameters:

    cgcent 37.468 31.798 12.177           # Grid Center
    fgcent 37.468 31.798 12.177           # Grid Center

    cglen   53.011 58.568 65.807          # coarse mesh lengths (A)
    fglen   51.183 54.452 58.710          # fine mesh lengths (A)

    dime    97 97 97                      # Grid Points

4. Run APBS
> apbs
After a while, it will create an electrostatics map called "pymol.dx".

B. Using PyMOL to visualize the electrostatics map

1. Open the PDB and the pymol.dx files.
File -> Open -> 1w2i_nowat.pdb
File -> Open -> pymol.dx

2. Display the electrostatics surface
Plugin -> APBS Tools -> Visualization

Press the "Show" Button in the Molecular Surface menu.
The default setting is: Blue surface: +1 kT  Red surface: -1 kT

Now change the default setting to -10 and +10, and press the "Show" button again.
Can you find a craddle with blue surface (i.e. positively charged) on the protein molecule? That's is the active site of PH acylphosphatase that binds a negatively charged substrate.

4. Create a series of PNG files for animated GIF movie

1. Setting up the movie


PyMOL> orient
PyMOL> hide everything, all
PyMOL> show cartoon, all
PyMOL> color purple, ss h; color yellow, ss s; color green, ss ""

PyMOL> mset 1 x60
This command creates a movie with 60 frames
PyMOL> util.mrock 1,60,180
This command rocks the protein molecule +/- 180 degree in 60 frames
PyMOL> mplay
This command plays the movie

2. Now try this:
PyMOL> util.mroll 1,60
This command rotates the protein molecule 360 deg in 60 frames
Type "mstop" to stop the animation

3. Saving frames in PNG format
PyMOL> mpng frame
This will create frame0001.png frame0002.png, etc ...

If you want ray-traced rendering for all the frames, you can:
PyMOL> set ray_trace_frames=1
PyMOL> mpng frame
Very good quality animation but very slow to produce all the PNG files!!

4. You can convert these PNG files in a batch to GIF using the program XnView, and then combine these GIF files to create an animated GIF using UnFREEz:

5. Structural alignment of two homologous proteins

In this tutorial, you are going to align PH acylphosphatase and bovine acylphosphatase (2ACY.pdb)
File -> Open -> 1w2i_nowat.pdb
File -> Open -> 2ACY.pdb

PyMOL> align 1w2i_nowat, 2ACY
You should see the following in the text window:
 ExecutiveAlign: 446 atoms aligned.
 ExecutiveRMS: 23 atoms rejected during cycle 1 (RMS=0.86).
 ExecutiveRMS: 20 atoms rejected during cycle 2 (RMS=0.63).
 Executive: RMS =    0.541 (403 to 403 atoms)
In this case, the RMSD is 0.541 A.

More often, people will report Ca RMSD values, which can be determined by:
PyMOL> align 1w2i_nowat and name ca, 2ACY and name ca

Selasa, 11 Oktober 2011

ABINIT on Nanohub

             ABINIT on Nanohub

ABINIT can now be run, by anybody, on a virtual facility in the USA, called Nanohub
Nanohub is an NSF sponsored project to make HPC and educational resources available to the general public. After registering you can run a variety of ab initio and other softwares, directly on the cluster behind the web interface. There is also a lot of teaching material, tutorials and courses.
Execution times are fairly limited, but you will get direct access (e.g. along with a class of your students) to an efficient computational infrastructure, with a graphical tool to set up, run, and analyze ABINIT calculations. Cool!

Main ABINIT code, input variables:

Main ABINIT code, input variables:

Complete list.

This document lists the names (keywords) of all input variables to be used in the main input file of the abinit code.
The new user is advised to read first the new user's guide, before reading the present file. It will be easier to discover the present file with the help of the tutorial.
When the user is sufficiently familiarized with ABINIT, the reading of the ~abinit/doc/users/tuning file might be useful. For response-function calculations using abinit, please read the response function help file
Copyright (C) 1998-2011 ABINIT group (DCA,XG,RC) 
This file is distributed under the terms of the GNU General Public License, see ~abinit/COPYING or
For the initials of contributors, see ~abinit/doc/developers/contributors.txt .

Files which describe the input variables:
  • Basic variables, VARBAS
  • Developpement variables, VARDEV
  • Files handling variables, VARFIL
  • Geometry builder + symmetry related variables, VARGEO
  • Ground-state calculation variables, VARGS
  • GW variables, VARGW
  • Internal variables, VARINT
  • Parallelisation variables, VARPAR
  • Projector-Augmented Wave variables, VARPAW
  • Response Function variables, VARRF
  • Structure optimization variables, VARRLX
  • Wannier90 interface variables, VARW90
See also the Space group table

Alphabetical list of all input variables and some internal variables.

(Keywords with a % sign are internal variables contained in the dtset array - whose description is useful for the user, but to which no direct access is provided in the input files)
A. accesswff   acell   algalch   amu   angdeg   atvshift   awtr  
B. bandpp   bdberry   bdeigrf   bdgw   berryopt   berrystep   bfield   bmass   boxcenter   boxcutmin   brvltt   bxctmindg  
E. ecut   ecuteps   ecutsigx   ecutsm   ecutwfn   effmass   efield   elph2_imagden   enunit   eshift   esmear   etsfgroups   etsfmain   exchn2n3d   exchmix  
I. iatcon   iatfix   iatfixx   iatfixy   iatfixz   iatsph   iboxcut   icoulomb   icutcoul   idyson   ieig2rf   ikhxc   inclvkb   intexact   intxc   imgmov   ionmov   iprcch   iprcel   iprctfvw   iprcfc   iqpt   irdddk   irdden   ird1den   irdqps   irdkss   irdscr   irdsuscep   irdwfk   irdwfq   ird1wf   iscf   isecur   istatr   istatshft   istwfk   ixc   ixcpositron  
J. jdtset   jellslab   jpawu  
K. kberry   kpt   kptbounds   kptgw   kptnrm   %kptns   kptopt   kptrlatt   kptrlen   kssform  
L. ldgapp   lexexch   localrdwf   lpawu  
M. macro_uj   maxnsym   %mband   mdftemp   mditemp   mdwall   mffmem   %mgfft   %mgfftdg   mixalch   mkmem   mkqmem   mk1mem   %mpw   mqgrid   mqgriddg  
N. natcon   natfix   natfixx   natfixy   natfixz   natom   %natpawu   natrd   natsph   natvshift   nband   nbandkss   nbandsus   nbdblock   nbdbuf   nberry   nconeq   nctime   ndivk   ndivsm   ndtset   ndyson   %ndynimage   %nelect   %nfft   %nfftdg   nfreqim   nfreqre   nfreqsp   nfreqsus   ngfft   ngfftdg   ngkpt   ngqpt   ngroup_rf   nimage   nkpt   nkptgw   nline   nloalg   nnos   nnsclo   nobj   nomegasf   nomegasi   nomegasrd   normpawu   noseinert   npband   npfft   npimage   npkpt   npsp   %npspalch   npulayit   npweps   npwkss   npwsigx   npwwfn   nqpt   nqptdm   nscforder   nsheps   nshiftk   nshiftq   nshsigx   nshwfn   nspden   nspinor   nsppol   nstep   nsym   ntime   ntimimage   ntypalch   ntypat   %ntyppure   nwfshist  
P. papiopt   paral_kgb   paral_rf   pawcpxocc   pawecutdg   pawfatbnd   pawlcutd   pawlmix   pawmixdg   pawnhatxc   pawnphi   pawntheta   pawnzlm   pawovlp   pawoptmix   pawprtden   pawprtdos   pawprtvol   pawprtwf   pawprt_b   pawprt_k   pawspnorb   pawstgylm   pawujat   pawujrad   pawujv   pawusecp   pawxcdev   pitransform   positron   posnstep posocc postoldfe postoldff ppmfrq   ppmodel   prepanl   prepgkk   prepscphon   prtbbb   prtbltztrp   prtcml   prtcif   prtden   prtdensph   prtdipole   prtdos   prtdosm   prtefg   prteig   prtelf   prtfc   prtfsurf   prtgden   prtgeo   prtgkk   prtkden   prtkpt   prtlden   prtnabla   prtnest   prtposcar   prtpot   prtspcur   prtstm   prtvha   prtvhxc   prtvol   prtvxc   prtwant   prtwf   prtxangst   prtxcart   prtxml   prtxred   prt1dm   ptcharge   %ptgroupma  
Q. qmass   qprtrb   qpt   qptdm   %qptn   qptnrm   qptopt   qptrlatt   quadmom  
R. random_atpos   ratsph   recefermi   recgratio   recnpath   recnrec   recptrott   recrcut   rectesteg   rectolden   restartxf   rfasr   rfatpol   rfddk   rfdir   rfelfd   rfmeth   rfphon   rfstrs   rfuser   rf1atpol   rf1dir   rf1elfd   rf1phon   rf2atpol   rf2dir   rf2elfd   rf2phon   rf3atpol   rf3dir   rf3elfd   rf3phon   rhoqpmix   rprim   %rprimd  
T. td_maxene   td_mexcit   tfkinfunc   timopt   tl_nprccg   tl_radius   tnons   toldfe   toldff   tolimg   tolmxf   tolrff   tolsym   tolvrs   tolwfr   tphysel   tsmear   typat  
V. vaclst   vacnum   vacuum   vacwidth   vcutgeo   vel   vis   vdw_supercell   vdw_nfrag   vdw_typfrag   vdw_xc   vprtrb  
X. xangst   xcart   %xclevel   xred   xyzfile  
Z. zcut   zeemanfield   %ziontypat   znucl