Go to the previous, next section.

Poisson-Boltzmann Electrostatics

The Poisson-Boltzmann equation (PBE) provides a "fast" and approximate method for calculating the effects of solvent on electrostatic interactions in the modeled system. The current solution of the PBE in CONGEN has one unique feature, it can spread the charge of each atom over the van der Waals volume which results in superior convergence properties and makes the calculation less dependent on the position of the system with respect to the grid(3). In addition, CONGEN can display the partition of the Poisson-Boltzmann energy across all the atoms in the system, see the EPBE property described in section Static Properties of Atoms.

The implementation provides two capabilities. First, one can perform individual electrostatic calculations on any set of atoms within the system. Second, one can replace the Coulomb electrostatic energy with the Poisson-Boltzmann energy in the context of a conformational search, see section Poisson-Boltzmann Options. We hope to increase the applicability of this methodology in the future.

Introduction to Poisson-Boltzmann Electrostatics

One of the most successful implicit models for the treatment of electrostatic effects is the Poisson-Boltzmann equation(4) which is given below where

The equation can be solved over a volume enclosing a molecule of interest using finite difference methods(5) (6) (7) appropriate for the solution of boundary value problems. In these methods, a grid is laid down over the volume, and each grid point is assigned a value for the ionic strength and charge density. The lines between each grid point are assigned values for dielectric constant. Boundary values for the potential are set according to a variety of models and then, interior values for the electrostatic potential are calculated. Typically, the equation is linearized by substituting x for sinh(x) in the above equation.

The implementation of the finite difference solution of the Poisson-Boltzmann equation in CONGEN is written in C and uses dynamic storage allocation throughout so any size grid can be accommodated. The process of a potential calculation begins with the determination of the grid position. This can be centered on the spatial origin, the center of a rectangular box enclosing the molecule, or the geometric center of the molecule. Next, the dielectric constant stored on all of the grid edges is set to the solvent value, and the Debye-Huckel parameters are likewise set. Next, the program loops over all atoms. Grid points of the protein excluded space are assigned grid charges as described above, their dielectric constants are set to interior values, and the Debye-Huckel parameters are set to zero. The van der Waals, accessible, or molecular surface can be used to delimit the interior. Upon the direction of the user, the program can set the boundary using one of three possible rules. The first possibility is to set it to zero. This is very fast, but is only appropriate when the boundary is very far from the atoms in the system. The second possibility, which is denoted as the system Debye rule, is to set it to the potential caused by a single charge equal to the total charge of the system and whose radius is equal to that of a sphere whose volume equals the solvent excluded volume of the system. This method is also efficient, but it can capture some of the electrostatic screening due to the solvent if there is a thick solvent boundary around the system. The final boundary setting method, which is denoted as the atomic Debye rule, sets the boundary points to the sum of the potentials due to all of the atoms scaled by the Debye-Huckel rule,(8) The atomic Debye rule is the most accurate.

This last option does a more detailed calculation of the boundary, but is more expensive computationally.

The potential is calculated using Gauss-Seidel iteration with odd-even ordering of processing grid points.(9) When the linearized form of the equation is solved, overrelaxation is used. The default spectral radius used for the overrelaxation parameter is given by

PBE Data Structures

In order to understand the function of the commands which use the Poisson-Boltzmann equation, it is important to know the underlying data structures.

The primary data structure is the pbe_info data structure, defined in the file, `$CGS/pbe.h'. This data structures contains the grids for the potential, charge density, dielectric constant, and Debye-Huckel parameter, There are three grids stored for the dielectric constant because values for the dielectric constant are stored for the lines connecting grid points. Since there are three perpendicular lines connecting grid points to their neighbors, there are three dielectric constant grids, for the x, y, z directions. The epsx grid stores the dielectric constant for the midpoint of the line pointing in the x direction between grid points. The value of epsx[i,j,k] corresponds to the dielectric constants between grid points [i,j,k] and [i+1,j,k]. The value of epsy[i,j,k] corresponds to the dielectric constants between grid points [i,j,k] and [i,j+1,k], and the value of epsz is analagous for the the third indices, respectively. One two-dimensional cross section of each grid is unused.

The pbe_info data structure also contains the spatial origin of the grid, dimensions, and grid size so that the grid can be laid out over the space of the molecule of interest. It also contains a list of atoms included in the grid as well as their positions, radii, and charges. Finally, it contains a number of parameters which control the calculation.

The PBE SETUP command is used to setup this data structure. After the first PBE SETUP, the REUSE option controls whether the data structure is initialized or updated, see section PBE SETUP Command.

It is important to remember that this data structure is not automatically updated when the coordinates change (except in the context of a conformational search).

It is possible to generate multiple pbe_info data structures, and to do operations on them. This is useful for comparing results generated by different methods or parameters.

PBE Commands

All the Poisson-Boltzmann commands begin with the keyword, PBE. The second word on each command line specifies one of the command below. In brief, the commands perform the following operations.

SETUP
Setup all the grids and other parameters needed for the calculation of the potential.
POTENTIAL
Calculate the electrostatic potential.
ENERGY
Calculate the electrostatic energy of the system.
READ
Test WRITE command (Not very useful).
WRITE
Write one of the grids to a file.
TEST
Setup test potentials.
SAVE
Save a copy of the pbe_info data structure under a variable name.
RECALL
Recall a pbe_info data structure into the main data structure.
DIFF
Compute a difference in potentials.
DESTROY
Delete a saved pbe_info data structure.
STATISTICS
Compute simple statistics on the grids.
MASK
Change values in one of the grids based on a masking operation.

PBE SETUP Command

Syntax

PBE SETUP repeat(pbe-setup-options) atom-selection

                      [SOLVent real]
                      [interior-options]
                      [charge-options]
                      [NWARN int]
                      [boundary-options]
                      [IONStr real]
                      [GRID real]
                      [SUBDivisions int]
                      [SPILl]
                      [TEMPerature real]
pbe-setup-options ::= [WATEr real]
                      [STERn real]
                      [XDIM int]
                      [YDIM int]
                      [ZDIM int]
                      [MARGin int]
                      [REUSE]
                      [CENTER]
                      [MOLSURF]
                      [MINRadius real]
                      [charge-edit-options]
                      [EPSAve averaging-option]
                      [SMOOTH repeat(smooth-option) END]

interior-options ::= repeat([INTErior real exposure-opts atom-selection END])

exposure-opts ::= [ABSQ real] [EXPOsure real] [RESAve]

charge-options ::= [UNIForm  ]
                   [TRILinear]

                              [ZERO    ]
boundary-options ::= BOUNdary [ADEBye  ]
                              [SDEBye  ]
                              [PREVious]

charge-edit-options ::= repeat([CHARge edit-type real atom-selection END])

              [SET]
edit-type ::= [SCALe]
              [SHIFt]

averaging-option ::= [HARMonic  ]
                     [ARIThmetic]

                   [TYPE type-option]
                   [WEIGht weight-option]
smooth-options ::= [OFFGrid offgrid-option]
                   [RADIus real]
                   [POINts int]
                   [ALPHa real]

                [NONE  ]
type-option ::= [VOLUME]
                [GRID  ]

weight-option ::= [CONStant]
                  [GAUSsian]

offgrid-option ::= [SOLVent]
                   [EDGE   ]

Function

The PBE SETUP command creates the pbe_info data structure, see section PBE Data Structures, which stores the grids upon which the electrostatic potential is computed. The command has a large number of options and an atom-selection, see section Atom Selection. The atom selection allows the user to select any portion of the system for the calculation. For example, if one is interested in the calculation of the binding energy of a complex, the atom selection can be used to select each component and then all the atoms for separate electrostatic calculations. The options are described in the following table.

Option
Purpose

SOLVENT
Specifies the dielectric constant of the solvent in units of the vacuum dielectric. Thus, the vacuum dielectric would be 1, and the dielectric constant of water is around 78. The default is 78.

interior-options
The INTERIOR option is used to specify the dielectric constant of the interior of the atom selection in the INTERIOR option. Any number of these options can be specified, and thus, it is possible to specify different dielectric constants for different parts of the system. It is possible to adjust the dielectric constant of exposed atoms to that of the solvent(10). If the either option, ABSQ or EXPOSURE, is specified, then the exposure adjustment calculation will be done. Any atom whose exposure and charge meet the criteria will have the dielectric constant set to the solvent value as specified by the SOLVENT keyword. N.B. This option is highly experimentally and has not been proven useful in any system. The meaning of the keywords is given as follows:

ABSQ
The magnitude of the charge of the atom must be greater than or equal to this option in order for surface charge adjustment to be performed.

EXPOSURE
The relative molecular surface exposure of the atom for the adjustment is specified by this parameter. If the relative molecular surface exposure is less than EXPOSURE - 0.1, then the dielectric constant will be left alone. If the relative molecular surface exposure is greater than EXPOSURE + 0.1, then the dielectric constant will be set to the solvent value. Otherwise, it will be scaled harmonically between the interior value and solvent value.

RESAVE
The average relative molecular surface is calculated for all the atoms within a residue, and the exposure test above and the scaling is applied for the average.

  • charge-options

    The charging options, UNIFORM and TRILINEAR, along with the options SUBDIVISIONS and SPILL, control how the charge grid is set. With the TRILINEAR option, the charge of each atom is divided among the eight nearest points to the atom center. With the UNIFORM option, the charge of each atom is divided evenly among all the points within the van der Waals radii of the atom, except in the case where the number of such points is less than eight. In that case, trilinear interpolation is used. The option, NWARN, controls how many warning of this conversion are displayed.

    The uniform charging option can be further improved using the SUBDIVISIONS and SPILL options. One problem with the use of grid based methods to represent molecular structure is the quantization of space. The same problem has arisen in the development of computer graphics using raster devices, and using the techniques of anti-aliasing, CONGEN can smooth the charge distribution of atoms. When the SUBDIVISIONS option is used, the space around each atom is subdivided into virtual cubes, and the charge distribution is calculated over these virtual cubes, and then added onto the real cubes in the grid. If the SPILL option is turned on (recommended!), then charge can spill onto cubes outside the van der Waals radius of each atom. If SPILL is not specified, then the charge will not extend beyond the van der Waals radius.

  • NWARN The NWARN option specifies the maximum number of warning messages to be issued if an atom is too small for the uniform charging scheme to charge eight points. The default is 5.

  • boundary-options

    The boundary-options are used to specify how the potential is set for the boundary of the grid. The ZERO option specifies that the boundary potential should be zero. The ADEBYE option specifies that the atomic Debye method should be used, see section Introduction to Poisson-Boltzmann Electrostatics. This option is very slow. The SDEBYE options specifies that the system Debye method should be used. The keyword, PREVIOUS, is not implemented.

  • IONSTR

    The IONSTR parameter is used to set the ionic strength. The units are in molarity. The default value is 0.0.

  • GRID

    The GRID option sets the physical spacing between grid points. This is a critical parameter in the calculation of electrostatics using the Poisson-Boltzmann equation. The smaller the grid, the better the accuracy, but computation time scales as the grid size to the 4th power. The default value is 1.25 Angstroms.

  • TEMPerature The TEMPERATURE option is used to set the temperature for calculating the Debye-Huckel parameter, The default value is 300 K.

  • WATER The radius of water in Angstroms is set using the WATER option. The radius of water is added to the van der Waals radii of all atoms and the dielectric constant of the midpoints of grid lines within this combined radius is set to the interior dielectric value for the atoms. Use of the WATER option causes the program to use the solvent accessible surface to define the interior. The default value is 0.0. Our current view is that this parameter should be left at 0.0 because ion solvation energies are calculated more accurately that way.

  • STERN The thickness of the ion exclusion layer (Stern layer) is set to the STERN option. Within this distance of any atom, it is assumed that ion screening does not take place, and the Debye-Huckel parameter is set to zero. The default value is 2.0 Angstroms.

  • CENTER If the MARGIN option is non-negative, this option has no effect. Otherwise, when the CENTER option is specified, the center of grid is placed at the geometric center of the system. Otherwise, the center of grid is placed at the origin.

  • XDIM The XDIM option sets the number of grid points in the X direction.

  • YDIM The YDIM option sets the number of grid points in the Y direction.

  • ZDIM The ZDIM option sets the number of grid points in the Z direction.

  • MARGIN The MARGIN option sets the number of empty grid points surrounding the molecule. If set to a non-negative number, then CONGEN determines a rectangular box that will surround the molecule including the van der Waals radius, plus two grid spacings if the SPILL option is on. Then, the dimensions of the box will be increased in order to center this box within the grid with MARGIN grid points around all sides. When the MARGIN option is non-negative, the CENTER option has no effect.

  • MINRADIUS The MINRADIUS keyword allows the user to specify the minimum radius for any atom placed on the grid. This keyword is important for potentials, such as AMBER94, see section AMBER94PARM, which have several atoms with zero or small radius. Because the electrostatic self energy of a sphere is inversely proportional to the radius, such small atoms cause convergence problems. Therefore, one can set the minimum radius using the above option.

  • REUSE The REUSE option specifies that the current PBE SETUP command should update rather than initialize the pbe_info data structure. For the keyword options described here, the default values are taken from the current values rather than the values described in this documentation.

    This option is important for doing binding energy calculations. In order to cancel errors due to grid positioning, it is essential to first calculate the energy of the complex, and then, using the REUSE option, calculate the energies of the components by selecting the atoms of the components, but leaving the atoms and grids in the same spatial positions.

    When this option is used, you should not specify any grid dimensions or the MARGIN option. If you do, and they are different than the actual values, then the REUSE option will be turned off.

  • MOLSURF This option specifies that the interior of the molecule is defined by the molecular surface as computed by the GEPOL algorithm, see section Static Properties of Atoms, for more information about GEPOL. The dielectric constant of points covered by the molecular surface but not atomic spheres is determined by the following scheme: GEPOL generates additional spheres which define the molecular surface. Each of these spheres derives from one or two previous spheres or atoms. The dielectric constant of each sphere is set to the average of its "parents", where the average is determined by the EPSAVE keyword. Then, points covered by each of these spheres is averaged into the dielectric grid.

  • EPSAVE Whenever dielectric constants are combined, the EPSAVE controls how the averaging is performed. The averaging can either be ARITHMETIC (the "standard" mean) or HARMONIC (the reciprocal of the mean of the reciprocals). This option applies to averaging dielectric constants when atoms overlap in the grid, for dielectric smoothing, and for generating the dielectric constant for spheres generated by the molecular surface algorithm.

  • charge-edit-options The charge-edit-options allows the user to modify the charges used for a calculation. Charges for the atoms in the atom-selection can be changed in one of three ways. The SET option specifies the charge explicitly. The SCALE option specifies a multiplicative scale factor to be applied to the current charges of the selected atoms. The SHIFT option specifies an additive term to be added to the current charges of the selected atoms.

  • SMOOTH

    The SMOOTH command "smooths" the dielectric grids. After the dielectric grids have been assigned internal and external values "smoothing" averages each point with the other points in its neighborhood to produce a dielectric grid with less abrupt changes in value. One hope of the process is to reduce the position dependence of the PBE electrostatic calculations. Its success in this endeavor is still a topic of research.

    Several types of smoothing are supported. The smoothing TYPE can either be NONE, VOLUME, or GRID. Of course, no smoothing is done when NONE (the default) is specified. For VOLUME based smoothing the dielectric is averaged over a fixed volume in real space defined by the RADIUS keyword. For GRID based smoothing the dielectric is averaged over a set number of points specified by the POINTS keyword (9 and 15 point averaging are currently supported). In both case all three dielectric grids are averaged togeher. In 9-point averaging each point is averaged with the eight grid points from the other two grids which surround this point in space. In 15-point averaging the six nearest neighbors from the same grid are also included. (Note that volume smoothing with a radius just smaller (larger) than the grid spacing is equivalent to 9-point (15-point) averaging.)

    Which ever TYPE is selected, The type of averaging is determined by the EPSAVE keyword above. The WEIGHTING can either be CONSTANT (all points in average counted equally), or GAUSSIAN weighted (points are weighted by specified by the ALPHA keyword).

    For points at the edge of the grid the averaging extends to points beyond the grid. Using the OFFGRID keyword, these offgrid points can either be assumed to be SOLVENT or equal to the value at the nearest EDGE of the grid. (Note that the SOLVENT assumption will run faster.)

  • PBE POTENTIAL Command

    Syntax

    PBE POTENTIAL repeat(pbe-potential-options)
    
                              [NODIelectric]
                              [TOLerance real]
                              [RTOLerance real]
    pbe-potential-options ::= [MAXITS int]
                              [HISTsize int]
                              [RADIUS real]
                              [problem-option]
    
    problem-option ::= {LINEar   }
                       {NONLinear}
    

    Function

    The PBE POTENTIAL command invokes the Gauss-Siedel PBE solver, and the above options affects how the solution is performed. If the PARALLEL LOOPS command is used, see section PARALLEL Command, the potential will be calculated in parallel across available CPU's on a Silicon Graphic multiprocessor workstation. Parallel efficiency is high. N.B., for large memory jobs running on SGI workstations, it is critically important to set the STACK resource limit down from the default value. See section RLIMIT Command -- Set Resource Limits, for more information.

    After the potential is calculated, the PBE energy per atom is calculated and stored in an array for this purpose.

    The options have the following meaning:

    Option
    Purpose

    NODIELECTRIC

    If this option is specified, the potential is calculated assuming the dielectric is equal to the solvent value, keyword SOLVENT in section PBE SETUP Command. The Poisson-Boltzmann equation is not used, but rather the potential contribution from each atom is summed onto each grid point. The boundary is also modified.

    TOLERANCE

    If the maximum change in any potential value during a cycle over all the grid points is less than the TOLERANCE option, then the solver terminates. Values smaller than are generally too small to be achieved. The default setting is 0.001.

    RTOLERANCE

    If the RMS of the changes in potential value during a cycle over all the grid points (maximum residuals) is less than this option, the solver terminates. This option is less restrictive than the TOLERANCE option above, and therefore, terminates sooner. The maximum change is typically an order of magnitude bigger than the RMS change. The default setting is 0.0, in which case, the test is not used.

    MAXITS

    The specifies the maximum number of iterations allowed for the solver. Because of the odd-even checkboard cycling, two iterations are necessary to cover all the grid points. The default is 100.

    HISTSIZE

    When the PBE solver is working toward a small tolerance, it is possible for a potentially infinite loop to be entered. In order to detect this, CONGEN maintains an array of maximum residuals for twice the number of cycles given by HISTSIZE. At the end of each iteration over all the atoms, the minimum value for the maximum residual for the last HISTSIZE cycles is compared against the minimum for the previous HISTSIZE cycles. If it has not improved, then the PBE solver terminates. Effectively, this mechanism checks for any improvement in the solution of HISTSIZE cycles. The default value is 30.

    RADIUS

    Overrides the default setting, see section Introduction to Poisson-Boltzmann Electrostatics, for the spectral radius. If this value is set to zero, then overrelaxation is not used. If the value is negative, then the absolute value is used as the overrelaxation parameter.

    LINEAR
    NONLINEAR

    These two options control whether the linearized form of the Poisson-Boltzmann equation is solved. Generally, only the linearized form should be used. The non-linear form has a modest radius of convergence, and large charges will result in divergence of the solver. When the non-linear form is used, execution time is much slower, and overrelaxation is turned off. The default is LINEAR.

    PBE ENERGY Command

    Syntax

    PBE ENERGY [ATOM]
    

    Function

    This command calculates the electrostatic energy of the system using the formula,

    If the option, ATOM, is specified, the PBE energy per atom will be printed. It is usually more convenient to get these energies using the ANALYSIS commands, see section Static Properties of Atoms.

    PBE READ Command

    Syntax

    PBE READ UNIT unit
    

    Function

    This command reads a Poisson-Boltzmann data structure which has been written to a disk by the PBE WRITE command, see section PBE WRITE Command. The only option, which is required, is the unit number of the file containing the data structure.

    PBE WRITE Command

    Syntax

    PBE WRITE [UNIT unit] [TITLE string del] { ALL   }
                                             { PHI   }
                                             { RHO   }
                                             { EPSX  }
                                             { EPSY  }
                                             { EPSZ  }
                                             { KAPPA }
    
              [X range] [Y range] [Z range] [LINEsz int] [CARD]
                                                         [FILE]
    
    range ::= [[int]:[int]]
    

    Function

    This command is used to write the entire Poisson-Boltzmann data structure to a binary file, or it can be used to write one of the grids to an output file in either binary or text format. The binary format for the grids is compatible with the PLT2 program, so that contour maps of sections of potentials or other grids can be made.

    N.B. the behavior of this command changes depending on whether ALL is specified, so please take note of these confusing changes as described below.

    The options have the following meaning:

    Option
    Purpose

    UNIT
    Unit number to which the file will be written.

    CARD
    FILE
    These two options control whether the output is in binary or text form. CARD specifies text form, and FILE specified binary. The default is text format, except for the ALL option.

    TITLE
    Specifies an output file title. It is used for the text format or writing the entire Poisson-Boltzmann data structure. You may specify three slashes, "///", as a line delimiter, so multi-line titles can be specified.

    ALL
    When ALL is specified, this command is used to write the entire Poisson-Boltzmann data structure to a file in binary format. Use of this option make specification of the UNIT and TITLE options mandatory, and you cannot specify the X, Y, Z, LINESZ, CARD, or other data array name.

    PHI
    Specifies the use of the potential grid.

    RHO
    Specifies the use of charge density grid.

    EPSX
    Specifies the use of the X axis dielectric grid.

    EPSY
    Specifies the use of the Y axis dielectric grid.

    EPSZ
    Specifies the use of the Z axis dielectric grid.

    KAPPA
    Specifies the use of dielectric independent Debye-Huckel constant array.

    X range
    Y range
    Z range
    Specifies the range of indices to be output for X, Y, Z. Counting starts from zero and ends with the number of grid points minus one.

    LINESZ
    Specifies the maximum number of characters per line for the text output. The default is 130.

    At least one of RHO, PHI, EPSX, EPSY, EPSZ, KAPPA must be specified.

    PBE TEST Command

    Syntax

    PBE TEST { CV cv-options }  repeat(pbe-test-options)
             { DH dh-options }
    
    cv-options ::= [CHARge real    ]
                   [RADIus real    ]
                   [CAVIty-eps real]
                   [QPOS real      ]
    
                   [CHARge real      ]
    dh-options ::= [RADIus real      ]
                   [CAVIty-eps real  ]
                   [IONStr real      ]
                   [TEMPERATURE real ]
    
                         [XDIM int    ]
                         [YDIM int    ]
    pbe-test-options ::= [ZDIM int    ]
                         [GRID real   ]
                         [SOLVent real]
    

    Function

    The PBE TEST command is used to generate test potentials for comparing the finite difference solution against two particular problems for which analytic solutions are available. The two problems are a charge in a spherical cavity of one dielectric with a different surrounding dielectric (the CV option), and a charged centered in a sphere surrounded by a Debye-Huckel fluid (the DH option). These calculations are done using analytic series representations, but they are not optimized for numerical accuracy, so beware of artefactual peaks. CONGEN will report the number of failures of the series convergence. Also, a setting of 3 for the PBE DEBUG variable will display the terms in each series calculation, see section Set Debugging Variables -- DEBUG. A debug setting greater than 10 will cause CONGEN to substitute the number of iterations in place of the potential.

    The analytic potentials used in this code were derived by Malcolm Davis.

    The command options have following meaning:

    Option
    Purpose

    CV
    Specifies a potential for a spherical cavity with an internal charge with an external dielectric be computed.

    DH
    Specifies a potential for a spherical cavity with a charge at the center surrounded by a fluid with Debye-Huckel charge screening.

    CHARGE
    Specifies the interior charge value. The default is 1.0.

    RADIUS
    Specifies the cavity radius. The default is 5.0 Angstroms.

    CAVITY-EPS
    Specifies the dielectric of the cavity. The default is 1.0.

    QPOS
    Specifies the position of the charge in the cavity test case along the X axis. The default is 0.0 (the origin).

    IONSTR
    Specifies the ionic strength in molarity units for the Debye-Huckel test case. The default is the current value in the pbe_info data structure.

    TEMPERATURE
    Specifies the temperature for the Debye-Huckel test case. The default is the current value in the pbe_info data structure.

    XDIM
    YDIM
    ZDIM
    Specifies the X, Y, and Z dimensions of the test grid, respectively. If there is no grid defined in the pbe_info data structure, then the default for all three dimensions is 20. Otherwise, the current grid dimensions provide defaults.

    GRID
    Specifies the grid dimension. The current pbe_info data structure provides the default.

    SOLVENT
    Specifies the solvent (external) dielectric constant. The current pbe_info data structure provides the default.

    PBE SAVE Command

    Syntax

    PBE SAVE name
    

    Function

    The entire pbe_info data structure is saved under the given name. Any other pbe_info data structure saved under the given name will be destroyed. The PBE RECALL can be used to recover it.

    PBE RECALL Command

    Syntax

    PBE RECALL name
    

    Function

    The entire pbe_info data structure is replaced with the one stored under name. Memory associated with the previous data structure is freed.

    PBE DIFF Command

    Syntax

    PBE DIFF name
    

    Function

    The PBE DIFF command calculates the difference in the potential grid and in the PBE energies for each atom between the current pbe_info data structure, and the one stored under name. The results are left in the current data structure.

    PBE DESTROY Command

    Syntax

    PBE DESTROY
    

    Function

    The PBE DESTROY command destroys the current pbe_info data structure. The command has no options.

    PBE STATISTICS Command

    Syntax

    PBE STATISTICS data-name [MIN real] [MAX real]
                   [LINES int] [COLUMNS int] [IGNORE real]
    
                  { PHI   }
                  { RHO   }
    data-name ::= { KAPPA }
                  { EPSX  }
                  { EPSY  }
                  { EPSZ  }
    

    Function

    The PBE STATISTICS command prints a histogram of the values in any of the six arrays used in the pbe_info data structure. The options are as follows:

    Option
    Purpose

    data-name
    Specifies which grid is used. See PBE WRITE Command, for the precise table.

    MIN
    Specifies the minimum value of histogram buckets to be used. The default is the minimum in the data.

    MAX
    Specifies the maximum value of histogram buckets to be used. The default is the maximum in the data.

    LINES
    Specifies the number of lines to use in the histogram. The default is 60.

    COLUMNS
    Specifies the number of columns to use in the histogram. The default is 80.

    IGNORE
    Specifies specific data points to ignore. For example, the PBE POTENTIAL NODIELECTRIC command can generate grid points with "infinite" potentials whose value is set to 1.0E9. Such points can be ignored in the construction of the histogram.

    PBE DUMP Command

    Syntax

    PBE DUMP
    

    Function

    The PBE DUMP command displays detailed information about the Poisson-Boltzmann data structures. It is useful primarily for debugging and regression testing.

    PBE MASK Command

    Syntax

    PBE MASK data-name relop real [ABS] [USING data-name] [SETTO real]
             [RECALL name]
    
                  { PHI   }
                  { RHO   }
    data-name ::= { KAPPA }
                  { EPSX  }
                  { EPSY  }
                  { EPSZ  }
    
              { GT }
              { GE }
    relop ::= { LT }
              { LE }
              { EQ }
              { NE }
    

    Function

    The PBE MASK command allows the user to identify or mask values in any of the grids. This is useful for identifying interesting regions prior to plotting, or for gathering statistics about regions of the system. For example, it is possible to mask all regions of the potential that lie within the van der Waals surface, and then calculate statistics on the outer regions.

    The options have the following meanings:

    Option
    Purpose

    data-name
    The data structure being changed.

    relop real
    The relop specifies a relational operator for which each array element is compared against the reference number, given by the real, and if the relationship is true, the corresponding array element is changed.

    ABS
    Absolute values of the reference number and the array elements are used for comparison.

    USING data-name
    By default, the comparison done by this command are done on the same array as the one being modified. When the USING option is invoked, it specifies the array to be used for comparisons.

    SETTO real
    Specifies the new value for data elements which satisfy the masking condition. The default is zero.

    RECALL name
    Normally, the reference data structure is the same as the one being masked. The RECALL option specifies the name of the another pbe_info data structure to be used for the reference array.

    The following commands illustrates setting the potential to zero for all points within and including the Stern layer. Note that this command depends on the ionic strength being positive.

    PBE MASK PHI EQ 0.0 USING KAPPA
    

    PBE Examples

    Two examples of using the Poisson-Boltzmann equation are presented. One example shows the calculation of electrostatic binding energy, and the other shows the basics of using the PBE in a conformational search.

    Calculation of the Electrostatic Binding Energy

    In this example, we illustrate how to calculate the electrostatic binding energy of a complex between two molecules. Assume that the molecules have segment identifiers of A and B.

    ! Calculate energy of the complex.
    pbe setup solvent 78.0 interior 2 all end -
        uniform boundary zero ionstr 0.15 -
        grid 0.4 temp 300.0 water 0.0 stern 2.0 -
        xdim 190 ydim 170 zdim 135 -
        all
    pbe potential maxiter 2000 rtol 1.0e-4
    pbe energy
    
    ! Calculate energy of segment A
    pbe setup solvent 78.0 interior 2 all end reuse -
        uniform boundary zero ionstr 0.15 -
        grid 0.4 temp 300.0 water 0.0 stern 2.0 -
        xdim 190 ydim 170 zdim 135 -
        clear atom A * *
    pbe potential maxiter 2000 rtol 1.0e-4
    pbe energy
    
    !Calculate energy of segment B
    pbe setup solvent 78.0 interior 2 all end reuse -
        uniform boundary zero ionstr 0.15 -
        grid 0.4 temp 300.0 water 0.0 stern 2.0 -
        xdim 190 ydim 170 zdim 135 -
        clear atom B * *
    pbe potential maxiter 2000 rtol 1.0e-4
    pbe energy
    

    The electrostatic binding energy would be the difference between the first energy and the sum of the last two.

    In this example, it should be noted that the calculations of each component are done using the same grid as the complex. This results in the clean subtraction of the self-energies.

    Poisson-Boltzmann Equation Usage in Conformational Search

    This example is taken from `$CGT/cgpbe2.inp'. It illustrates using the substitution of the Poisson-Boltzmann electrostatic energy for the Coulomb energy for evaluating all the conformers generated by search, where the sidechains are optimized using the CHARMM potential. This is necessary to keep the execution time reasonable, but this is not a good example for a real application.

    Conformational search over NEW
    Test of PBE evaluation in parallel
    *
    OPEN NAME CGDATA:RTOPH8.MOD UNIT 01 READ UNFORM
    OPEN NAME CGDATA:PARAM5.MOD UNIT 03 READ UNFORM
    OPEN NAME CGTD:newpsf.mod UNIT 12 READ UNFORM
    OPEN NAME CGTD:NEWV.MOD UNIT 14 READ UNFORM
    READ      RTF UNIT 1
    READ      PARAMETER UNIT    3
    READ PSF FILE UNIT 12
    READ COOR FILE UNIT 14
    parallel loops ncpu 4
    !
    ! Setup the conditions for using Poisson-Boltzmann equation.
    ! The grid size is too large for a real calculation, though.
    !
    PBE SETUP IONSTR 0.15 BOUNDARY SDEBYE CENTER SOLVENT 78 GRID 1.5 -
              WATER 0.0 STERN 2.0 XDIM 50 YDIM 50 ZDIM 50 -
              TRILINEAR INTERIOR 2.0 ALL END
    PBE POTENTIAL RTOLER 1.0E-3 MAXITER 1000
    PBE ENERGY
    !
    ! Generate conformations for the loop H 31-35 using the CHARMM
    ! potential energy.
    !
    OPEN UNIT 60 NAME CGPBE2.CG1 UNFORM WRITE
    OPEN UNIT 70 NAME CGDATA:TOPCGEN2.INP FORM READ
    OPEN UNIT 51 NAME CGDATA:EMAPGLY30.OMP FORM READ
    OPEN UNIT 52 NAME CGDATA:EMAPALA30.OMP FORM READ
    OPEN UNIT 53 NAME CGDATA:EMAPPRO30.OMP FORM READ
    OPEN UNIT 55 NAME CGDATA:PRO.CNS FORM READ
    CGEN -
    SEARCH DEPTH END -
    NBCG CUTNB 5.0 CTONNB 98.0 CTOFNB 99.0 END -
    HBCG CUTHB 4.5 CTONHB 98.0 CTOFHB 99.0 -
         CUTHBA 90.0 CTONHA 90.0 CTOFHA 90.0 END -
    BACK CISTRANS STARTRES H 31 LASTRES H 32 MAXEVDW 100 CLSA H 35 CA $ -
    CHAIN CISTRANS STARTRES H 33 MAXEVDW 100 $ -
    SIDE STARTRES H 31 LASTRES H 35 MAXEVDW 100 SIDEOPT ITER SGRID MIN EVAL E $ -
    WRITE CUNIT 60 $ -
    ERINGPRO 50 GLYMAP 51 ALAMAP 52 PROMAP 53 PROCONS 55 -
    GLYEMAX 2 ALAEMAX 2 PROEMAX 2 STUNIT 70
    CGPBE2.CG1
    CGPBE2 test case
    Conformations of H1 loop in NEW.
    *
    !
    ! Now evaluate the conformations using the Poisson-Boltzmann energy
    ! substituting for the Coulomb energy.
    !
    CLOSE UNIT 60
    OPEN UNIT 59 NAME CGPBE2.CG1 UNFORM READ
    OPEN UNIT 60 NAME CGPBE2.CG UNFORM WRITE
    OPEN UNIT 70 NAME CGDATA:TOPCGEN2.INP FORM READ
    OPEN UNIT 51 NAME CGDATA:EMAPGLY30.OMP FORM READ
    OPEN UNIT 52 NAME CGDATA:EMAPALA30.OMP FORM READ
    OPEN UNIT 53 NAME CGDATA:EMAPPRO30.OMP FORM READ
    OPEN UNIT 55 NAME CGDATA:PRO.CNS FORM READ
    CGEN -
    PBE NEWB END -
    SEARCH DEPTH END -
    NBCG CUTNB 5.0 CTONNB 98.0 CTOFNB 99.0 END -
    HBCG CUTHB 4.5 CTONHB 98.0 CTOFHB 99.0 -
         CUTHBA 90.0 CTONHA 90.0 CTOFHA 90.0 END -
    RBEST UNIT 59 NBEST 9999 $ -
    EVL MINI ENERGY END $ -
    WRITE CUNIT 60 $ -
    ERINGPRO 50 GLYMAP 51 ALAMAP 52 PROMAP 53 PROCONS 55 -
    GLYEMAX 2 ALAEMAX 2 PROEMAX 2 STUNIT 70
    CGPBE2.CG
    CGPBE2 test case
    Conformations of H1 loop in NEW.
    *
    !
    ! Extract the best conformation
    !
    OPEN UNIT 60 NAME CGPBE2.CG READ UNFORM
    XCONF 60 BEST 1
    

    Go to the previous, next section.