NSOL

A numerical calculation program of molecular surface area,
volume, and solvation energy

Introduction

In computer simulation of proteins and nucleic acids, such as MD
and/or MC, conformational energy + solvation energy calculation is
needed. However, solvation energy calculation (implicit water, PB,
RISM, etc.) is very time consuming. Therefore it can be applied to
small system, or it can be included as implicit solvation effects,
such as continuum model using distance dependent dielectric
constant. While, there exist two methods that calculate solvation
energy using solvent accessible surface area; ASP (atomic solvation
parameters) model and GB/SA. In these methods, as solvent
accessible surface area calculate fast, solvation energy could be
calculate fast. So I decided to develop fast algorithm for
molecular surface area calculation. NSOL is a fast solvation energy
calculation program using fast molecular surface area calculation
algorithm.

Definition of Solvent Accessible Surface Area

Solvent accessible surface is that part of the surface of a
sphere centered at an atom with rvdW +
rsol, where the center of a spherical solvent
molecule can be placed in contact with the atomic van der Waals
sphere (rvdW) without penetrating other atoms.
Solvent accessible radius is defined as van der Waals radius +
average radius of water molecule, usually 1.4 angstrom. Because of
geometrical difficulty and finite accuracy of a computer, solvent
accessible surface area has been calculated approximately. There
are two method of calculation: an approximate analytical method and
a finite accuracy numerical method.

Atom type

Radius (Å = 10-10m = 10-1nm)

(oons, jrf_)

(we92, sch3, sch4)

Bondi*

C

Aliphatic

2.00

1.90

1.70

Aromatic

1.75

Carbonyl/Carboxyl

1.55

O

1.40

1.40

1.52

N

1.55

1.70

1.55

S

2.00

1.80

1.80

H

N/A

N/A

1.20

Water

1.40

1.40

N/A

*Bondi, J.Phys.Chem., 68, 441, 1964.

Analytical vs. Numerical Method

Analytical:

Complex
Two spheres case, three spheres case, four or more spheres cases are exist.

Singularity
In very near case, surface area cannot be calculated.

Approximation
To avoid singularity, several approximation algorithms have been developed.

Easy derivative
First and second derivatives can be defined mathematically, but approximately.

Numerical:

Simple
Not depends on spatial position of spheres.

Stable
Singularity problem never occurs.

Accurate
Depends on point distribution method and numbers of points. But accurate results can obtain at many points case.

Numerical derivative
Time consuming and error accumulation.

Because of its stability, I adapt a numerical method.

Numerical Surface Area Calculation

Surface area of atom group i is obtained by,where rj: solvent accessible
radius (van der Waals radius + 1.4) of atom j,nj: number of points on atom j not occluded by other atoms,N: number of distributed points on an atom.

Points Distribution

It is permitted up to 12 points for distributing points
equally. Several methods have proposed so far:

Neighbor List Reduction

To accelerate the computation, selected neighbors of a central atom to be removed from the computation preprocessing step. Such as;

DCLM (Eisenharber et al.)

NLR, BAE (Weiser et al.)

NSOL 1.x adopt a method that uses artificial grid as the
same as Eisenharber et al. This is a standard approach in
computational geometry to group spatially close objects. In
difference of NSC, an implementation of DCLM, NSOL 1.x has an
optimized code for vector processor.

Determination of the minimum and the maximum of the
x-,y-,z-coordinates of all atoms.

Make large box that contains all atoms.

Divide large box by small cube that edge length is 2 x
rmax. Each atom has neighbors only in its own cube
and in its neighboring cubes.

After making neighbor list, overlap checking is executed to each
distributed points.

The DCLM method of Eisenharber et al. uses the second cube
division for the points on sphere, but I used only spatial
division.

NSOL 2.x adopt a method by sorting algorithm.

Sort and index atoms by x-, y-, z-coordinates, respectively, using quick sort algorithm. When number of atoms less than 8, simple insertion method is used.

To an atom index i, the two farthest atom indexes si,n and li,n are obtained for each coordinates.

Neighbor atoms of an atom index i are obtained by logical operations and calculations of distances.

After making neighbor list, overlap checking is executed to each distributed points.