An Adaptive Poisson-Boltzmann Solver Graphic User Interface for the Python Molecule Viewer (APBS GUI for PMV) a.k.a. APBSCommand

Version 2/13/2004
Authors: Hovig Bayandorian, Jessica Swanson, Sophie Coon, Michel F. Sanner

Introduction

APBS (Adaptive Poisson-Boltzmann Solver), available at http://agave.wustl.edu/apbs/ is software for the numerical solution of the Poisson-Boltzmann partial differential equation, which models the electrostatic potential of charges in an ionic solution at equilibrium. PMV (Python Molecule Viewer), available at http://www.scripps.edu/~sanner/python/, is a molecule visualization suite. APBSCommand is a GUI that runs on top of PMV allowing users to prepare configuration files for APBS while visualizing their input grids. It minimizes text editing and provides default parameters based on the loaded molecule. Finally, it allows users to save their grid and system setup for future use or alteration.

The current APBSCommand is in testing and is not considered complete. Future versions of the APBSCommand will include electrostatic potential visualization, PDB to PQR conversion, and APBS run progress reporting.

Installation

Install APBS and a version of PMV released after 12/29/2003.
Download a new version of the APBSCommand and replace the current version in $PMV_HOME/share/lib/python2.3/site-packages/Pmv/

If you wish APBSCommand to load every time PMV loads:
In UNIX:
1. Copy the $PMV_HOME/share/lib/python2.3/site-packages/Pmv/_pmvrc file to your home directory or change its permissions:
chmod 664 _pmvrc
2. Open the _pmvrc in a text editing program (such as emacs or vi), and add the line (preferably immediately above the line reading "# load the DejaVu Macros":
self.browseCommands("APBSCommand")
In Windows:
1. In the Pmv subdirectory of site-packages (likely being C:\Python23\Lib\site-packages\Pmv), right click on _pmvrc, click Open, then Select the program from a list, and select Wordpad.
2. Immediately above the line reading "# load the DejaVu Macros", add the following (and save the file):
self.browseCommands("APBSCommand")
If you want to load APBSCommand for a single session of PMV:
In PMV, click File, then Browse Commands, then select the PMV package, and then the APBSCommand Module. Click Load Module, and then Dismiss.

Tutorial

In this section, we walk through the determination of the electrostatic potential of a protein selected from the PDB.

Suppose we are interested in Rubredoxin, PDB ID 1CAA. APBS requires the charge and radius information for every atom so currently APBSCommand requires that a pqr file be loaded. To get this go to http://agave.wustl.edu/pdb2pqr/, and provide the PDB ID (or upload your PDB of interest), select the AMBER, CHARMM, or PARSE parameter set and click Submit. It should be noted that although the PARSE [Sitkoff et al., 1994] parameters have been optimized for continuum calculations (see Further Reading for more details) the 0 radii contained therein are currently incompatible with the cubic spline surfaces (srfm=2). The molecular or harmonic smoothed surfaces (srfm=0/1) should be used with PARSE. Save the returned file to an appropriate name such as 1caa.pqr, and take note of where you put it. We are now prepared to set up an APBS calculation.

Open PMV and click APBS, Setup, Calculation. There are three windows in the APBSCommand GUI.

The Calculation Window
The calculation window sets the calculation type and conditions, selects the molecule, and specifies the output. Click Select Molecule 1..., Load Molecule, select 1caa.pqr from the folder you saved it to, then OK. All of the files created in the APBS run will be stored in the Project folder; unique project folders within the current working directory are automatically used if no others are specified. By default, the electrostatic potential and solvent accessible surface files will be created in OpenDX format in the project folder. This can be changed by clicking on Output files but these will be sufficient for our purposes as will the parameters in the Mathematics section. Note that you can save the Grid, Physics and Mathematics settings for future calculations or load settings from previous calculations.

The Grid Window
The grid window allows the user to specify the grid dimensions, resolution, and center while visualizing the grid. Click on Show Coarse/Fine Grid then Autocenter and Autosize. If you have the psize script in your path you can click on Psize Auto Params to generate the recommended grid parameters. Be sure that the coarse grid always extends significantly beyond the molecule in all dimensions and that the coarse grid is at least 1 Å larger than the fine grid. Since Rubredoxin is so small you will need to adjust one of your grids after using Psize Auto Params. Also be sure that the machine you are working on has enough memory to work with the grid you are interested in. For the best performance, you should have a bit more physical memory free than the Memory to be allocated indicated at the bottom of the Grid tab (otherwise your operating system will use your hard disk as extra memory, slowing down the calculation).

The Physics Window
The physics window allows the user to set additional physical parameters and to add ions to their calculation. It is important to note that quantitative results (e.g., solvation and binding energies) will depend sensitively on the protein dielectric, and the surface definition. The commonly used solvent probe radius is 1.4 Å for solvent and 0.0 Å for vacuum calculations. The solution is by default ion-free. To add ions, click Add, and then specify the properties of your ion. Make sure your solution is neutral. We have finished setting up the calculation.

Return to the Calculation tab. You can save an APBS profile by clicking Save Profile. To run the calculation click Write APBS Parameter file, Run APBS, (or just click Run APBS--this will automatically write the APBS Parameter file). Open a shell (in Windows, click Start, Run, then type in cmd.exe and click Ok) and paste the line of text that appears after clicking Run APBS. It can be helpful to pipe the output to a file for future inspection. The execution will be automated in future versions.

GUI Description

The relevant APBS input arguments are in italics and link to the APBS documentation. All calculations are run under the mg-auto set-up

Calculation

Calculation type
Three types are available: electrostatic energy, solvation energy, and binding energy. Electrostatic energy calculations are useful for visualizing the electrostatic potential surrounding a molecule or mapped onto a molecular surface. The resulting total electrostatic energy is not quantitatively meaningful for a number of reasons including charge and surface discretizations. Therefore one should always compare a difference of the total energy with respect to a reference state.1 This is done for the solvation and binding energies. A solvation energy calculation returns the difference in energy between solvated and vacuum calculations. The user defines the parameters for the solvated calculation (i.e., sdiel=80, pdiel=1, ions/no-ions). In the vacuum calculation the solvent dielectric is set to 1 and the ion concentration to 0 (i.e., sdiel=1, pdiel=1, no-ions). Binding energy calculations subtract the total electrostatic energy of two molecules from that of the complex. The user must specify all three molecules. For meaningful results the two free molecules should be in the exact same conformations as they are in the complex so that cancellation of self energies will occur. A slight variation on this procedure results in more accurate quantitative results (see below for details). This functionality will be added to future releases.

In all cases, the energy can be found in the shell at the end of the APBS run.

Poisson-Boltzmann equation type
Two choices are available:linear and non-linear PB npbe/lpbe. The linearized Poisson-Boltzmann equation is less accurate, but much faster to solve than the nonlinear form and recommended for most calculations.

Boundary conditions
Three choices are available: Zero E, Single Debye-Hückel,and Multiple-Debye-Hückel bcfl 0/1/2, The latter is much slower so Zero E or Single Debye-Hückel are recommended.

Charge discretization
Two methods are available: tri-linear hat and cubic spline chgm 0/1 Cubic spline is recommended for use with spline-based surface definitions. (See Surface-based coefficients)

Surface-based coefficients
There are three ways to define the dielectric and ion boundaries: with no smoothing, harmonic-averaged smoothing, and spline-based smoothing srfm 0/1/2. Harmonic smoothing is recommended UNLESS the input radii have been parameterized for use with a spline-based surface [Nina et al., 1999]. Spline based surfaces increase the calculation efficiency and decrease sensitivity to grid placement.

Select Molecule
You may select molecules from files or molecules currently loaded into PMV, provided the molecule was loaded from a PQR file. When multiple molecules may be selected, each must be unique. See mol pqr path

Energy output
Two options: None outputs no energy, Total outputs only the total energy, and Total and Individual outputs the total energy, and the per-atom energies.See calcenergy 0/1

Output files
The output files are all stored in the Project folder, and named according to their content.See write type format stem

Save/Load Profile
APBS natively supports a more general input format than what the GUI allows for, so two formats for saving APBS configurations are used: the Profile, which APBSCommand may save to and load from, and the APBS Parameter file, which APBSCommand exports to APBS. Once the APBS Parameter file is written the user can easily change it outside of PMV. See APBS user documentation for more information.

Write APBS Parameter File
This saves a parameter file that APBS can read, but that the GUI cannot load from (See Save/LoadProfile).

Run APBS
In the future, this will be replaced with a fancier interface. Paste the line in the window that appears into a shell to execute APBS. In Windows, click Start, Run, type cmd.exe and click Ok.

Grid

Psize Auto Params
If the psize script is in your path, you may use its suggestions for default parameters with this button.See tools/manip/psize.py

Coarse/Fine Grid
See dime cgcent, cglen fgcent fglen The Autocenter and Autosize suggest values similar to those from psize, but no grid dimensions are suggested. Click Show Coarse/Fine grid to display the grid overlaid on your molecule. The grid points are limited to allowable dime values but the grid lengths and center are continuous scrolling thumbwheels. Increasing the number of grid points quickly uses more memory and takes more time!

System Resources
Be careful that the Memory to be allocated is less than the free physical memory on your system, to prevent hard disk pagefiling use from slowing down computations.

Physics

Protein and Solvent dielectric
See pdie / sdie Typical values for the protein dielectric are 1, 2, and 4 - 20 but no higher than 4 is recommended. These values will change solvation and binding energies significantly. 2 was used with the PARSE parameter set and 1 is should be used for consistency with most forcefields. The common solvent dielectric of water is ~80.

Solvent radius
See srad Defines the radius of the probe that is used to define the molecular and ionic surfaces. 1.4 &Araing is commonly used for a water molecule. A radius of 0 results in the van der Waals surface. PARSE was parameterized with 1.4 Å for water and 0 for vacuum conditions.

Temperature
See temp

Ions
See ion and be certain to insure your system is neutral.

Further Reading

Note on electrostatic binding energies: In order to avoid grid artifacts due to charge and surface discretization it is better to do the following:
1. Calculate the solvation energy of each species ( Complex, Mol1, and Mol2 ).
2. Take the difference in solvation energies ( Complex - Mol1 - Mol2 ).
3. Add the coulomb sum of intermolecular charge-charge interactions scaled by the protein dielectric constant. (available through APBS tools/manip/coulomb)

Note on input parameters: It has been clearly shown that the input parameters, namely the atomic radii and charges as well as the dielectric constant, effect quantitative PE/PB results. The PARSE parameter set was optimized to reproduce experimental hydration energies [Sitkoff et al., 1994] and is recommended for solvation or binding energy calculations. Nina et al. used explicit solvent simulations to optimize a set of radii that compliment CHARMM charges [Nina et al., 1997] and further optimized those radii for a smooth dielectric boundary definition [Nina et al., 1999]. PQR generation with these parameters will be available in near future releases of APBSCommand and APBS.

References:
  1. Atomic radii for continuum electrostatics calculations based on molecular dynamics free energy simulations
    Nina M, Beglov D, Roux B
    J PHYS CHEM B 101 (26): 5239-5248 JUN 26 1997

  2. Optimized atomic radii for protein continuum electrostatics solvation forces
    Nina M, Im W, Roux B
    BIOPHYS CHEM 78 (1-2): 89-96 APR 5 1999

  3. Accurate Calculation of Hydration Free Energies Using Macroscopic Solvent Models
    Sitkoff D, Sharp KA, Honig B
    J.Phys.Chem., 98, 1978-1988 (1994)