Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

Vacc class

Solvent- and ion-accessibility oracle. More...


Files

file  vacc.h
 Contains declarations for class Vacc.


Data Structures

struct  sVacc
 Oracle for solvent- and ion-accessibility around a biomolecule. More...


Defines

#define VACCMAXNBOR   20
 Maximum number of neighbors used in an accessibility calculation.


Typedefs

typedef sVacc Vacc
 Declaration of the Vacc class as the Vacc structure.


Functions

int Vacc_memChk (Vacc *thee)
 Get number of bytes in this object and its members.

Vacc * Vacc_ctor (Valist *alist, double max_radius, int nx, int ny, int nz, int nsphere)
 Construct the accessibility object.

int Vacc_ctor2 (Vacc *thee, Valist *alist, double max_radius, int nx, int ny, int nz, int nsphere)
 FORTRAN stub to construct the accessibility object.

Vacc * Vacc_ctorFocus (Valist *alist, double max_radius, int nx, int ny, int nz, int nsphere, double x_min, double y_min, double z_min, double x_max, double y_max, double z_max)
 FORTRAN stub to construct the accessibility object for a subdomain.

int Vacc_ctor2Focus (Vacc *thee, Valist *alist, double max_radius, int nx, int ny, int nz, int nsphere, double x_min, double y_min, double z_min, double x_max, double y_max, double z_max)
 FORTRAN stub to construct the accessibility object for a subdomain.

void Vacc_dtor (Vacc **thee)
 Destroy object.

void Vacc_dtor2 (Vacc *thee)
 FORTRAN stub to destroy object.

double Vacc_vdwAcc (Vacc *thee, double center[3])
 Report van der Waals accessibility.

double Vacc_ivdwAcc (Vacc *thee, double center[3], double radius)
 Report inflated van der Waals accessibility.

double Vacc_molAcc (Vacc *thee, double center[3], double radius)
 Report molecular accessibility.

double Vacc_fastMolAcc (Vacc *thee, double center[3], double radius)
 Report molecular accessibility quickly.

double Vacc_splineAcc (Vacc *thee, double center[3], double win, double infrad)
 Report spline-based accessibility.

double Vacc_splineAccAtom (Vacc *thee, double center[3], double win, double infrad, int atomID)
 Report spline-based accessibility for a given atom.

void Vacc_splineAccGradAtom (Vacc *thee, double center[3], double win, double infrad, int atomID, double *force)
 Report gradient of spline-based accessibility with respect to a particular atom normalized by the accessibility value due to that atom at that point (see Vpmg_splineAccAtom).

double ** Vacc_sphere (Vacc *thee, int *npts)
 Set up an array of points for the reference sphere.

double Vacc_totalSASA (Vacc *thee, double radius)
 Calculates the solvent-accessible area of the entire molecules.

double Vacc_atomSASA (Vacc *thee, double radius, int iatom)
 Calculates the solvent-accessible area due to the specified atom.


Detailed Description

Solvent- and ion-accessibility oracle.


Function Documentation

double Vacc_atomSASA Vacc   thee,
double    radius,
int    iatom
 

Calculates the solvent-accessible area due to the specified atom.

Note:
Shamelessly ripped off from UHBD FORTRAN routine by Brock Luty
Author:
Nathan Baker (original FORTRAN routine by Brock Luty)
Parameters:
thee  Vacc object
radius  Radius of probe molecule used to calculate solvent accessible area
iatom  Atom ID in Valist list
Returns:
Solvent accessible area

Vacc* Vacc_ctor Valist   alist,
double    max_radius,
int    nx,
int    ny,
int    nz,
int    nsphere
 

Construct the accessibility object.

Author:
Nathan Baker
Parameters:
alist  List of atom objects
max_radius  Maximum probe radius to be queried
nx  Number of grid points in hash table (x)
ny  Number of grid points in hash table (y)
nz  Number of grid points in hash table (z)
nsphere  Number of points on surface of reference sphere
Returns:
Newly allocated Vacc object

int Vacc_ctor2 Vacc   thee,
Valist   alist,
double    max_radius,
int    nx,
int    ny,
int    nz,
int    nsphere
 

FORTRAN stub to construct the accessibility object.

Author:
Nathan Baker
Parameters:
thee  Allocated Vacc memory
alist  List of atom objects
max_radius  Maximum probe radius to be queried
nx  Number of grid points in hash table (x)
ny  Number of grid points in hash table (y)
nz  Number of grid points in hash table (z)
nsphere  Number of points on surface of reference sphere
Returns:
1 if successful, 0 otherwise

int Vacc_ctor2Focus Vacc   thee,
Valist   alist,
double    max_radius,
int    nx,
int    ny,
int    nz,
int    nsphere,
double    x_min,
double    y_min,
double    z_min,
double    x_max,
double    y_max,
double    z_max
 

FORTRAN stub to construct the accessibility object for a subdomain.

Author:
Nathan Baker, Todd Dolinsky
Parameters:
thee  Allocated Vacc memory
alist  List of atom objects
max_radius  Maximum probe radius to be queried
nx  Number of grid points in hash table (x)
ny  Number of grid points in hash table (y)
nz  Number of grid points in hash table (z)
nsphere  Number of points on surface of reference sphere
x_min  Minimum location in X direction
y_min  Minimum location in Y direction
z_min  Minimum location in Z direction
x_max  Maximum location in X direction
y_max  Maximum location in Y direction
z_max  Maximum location in Z direction
Returns:
1 if successful, 0 otherwise

Vacc* Vacc_ctorFocus Valist   alist,
double    max_radius,
int    nx,
int    ny,
int    nz,
int    nsphere,
double    x_min,
double    y_min,
double    z_min,
double    x_max,
double    y_max,
double    z_max
 

FORTRAN stub to construct the accessibility object for a subdomain.

Author:
Nathan Baker, Todd Dolinsky
Parameters:
alist  List of atom objects
max_radius  Maximum probe radius to be queried
nx  Number of grid points in hash table (x)
ny  Number of grid points in hash table (y)
nz  Number of grid points in hash table (z)
nsphere  Number of points on surface of reference sphere
x_min  Minimum location in X direction
y_min  Minimum location in Y direction
z_min  Minimum location in Z direction
x_max  Maximum location in X direction
y_max  Maximum location in Y direction
z_max  Maximum location in Z direction
Returns:
Newly allocated Vacc object

void Vacc_dtor Vacc **    thee
 

Destroy object.

Author:
Nathan Baker
Parameters:
thee  Pointer to memory location of object

void Vacc_dtor2 Vacc   thee
 

FORTRAN stub to destroy object.

Author:
Nathan Baker
Parameters:
thee  Pointer to object

double Vacc_fastMolAcc Vacc   thee,
double    center[3],
double    radius
 

Report molecular accessibility quickly.

Given a point which is INSIDE the collection of inflated van der Waals spheres, but OUTSIDE the collection of non-inflated van der Waals spheres, determine accessibility of a probe (of radius radius) at a given point, given a collection of atomic spheres. Uses molecular (Connolly) surface definition.

Note:
THIS ASSUMES YOU HAVE TESTED THAT THIS POINT IS DEFINITELY INSIDE THE INFLATED AND NON-INFLATED VAN DER WAALS SURFACES!
Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
radius  Probe radius
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

double Vacc_ivdwAcc Vacc   thee,
double    center[3],
double    radius
 

Report inflated van der Waals accessibility.

Determines if a point is within the union of the spheres centered at the atomic centers with radii equal to the sum of the atomic van der Waals radius and the probe radius.

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
radius  Probe radius
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

int Vacc_memChk Vacc   thee
 

Get number of bytes in this object and its members.

Author:
Nathan Baker
Parameters:
thee  Vacc object
Returns:
Number of bytes allocated for object

double Vacc_molAcc Vacc   thee,
double    center[3],
double    radius
 

Report molecular accessibility.

Determine accessibility of a probe (of radius radius) at a given point, given a collection of atomic spheres. Uses molecular (Connolly) surface definition.

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
radius  Probe radius
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

double** Vacc_sphere Vacc   thee,
int *    npts
 

Set up an array of points for the reference sphere.

Generates approximately npts # of points (actual number stored in npts) somewhat uniformly distributed across a sphere of unit radius centered at the origin. Returns an (npts x 3) double array, which the user is responsible for destroying.

Note:
This routine was shamelessly ripped off from sphere.f from UHBD as developed by Michael K. Gilson.
Author:
Nathan Baker (original FORTRAN code by Mike Gilson)
Parameters:
thee  Vacc object
npts  Requested number of points on sphere, later set to actual number of points placed on sphere
Returns:
Pointer to array of reference sphere points' coordinates

double Vacc_splineAcc Vacc   thee,
double    center[3],
double    win,
double    infrad
 

Report spline-based accessibility.

Determine accessibility at a given point, given a collection of atomic spheres. Uses Benoit Roux (Im et al, Comp Phys Comm, 111, 59--75, 1998) definition suitable for force evalation; basically a cubic spline.

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
win  Spline window
infrad  Inflation radius (for ion-accessibility)
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

double Vacc_splineAccAtom Vacc   thee,
double    center[3],
double    win,
double    infrad,
int    atomID
 

Report spline-based accessibility for a given atom.

Determine accessibility at a given point for a given atomic spheres. Uses Benoit Roux (Im et al, Comp Phys Comm, 111, 59--75, 1998) definition suitable for force evalation; basically a cubic spline.

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
win  Spline window
infrad  Inflation radius (for ion-accessibility)
atomID  ID of atom for which this characteric function value should be calculated
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

void Vacc_splineAccGradAtom Vacc   thee,
double    center[3],
double    win,
double    infrad,
int    atomID,
double *    force
 

Report gradient of spline-based accessibility with respect to a particular atom normalized by the accessibility value due to that atom at that point (see Vpmg_splineAccAtom).

Determine accessibility at a given point, given a collection of atomic spheres. Uses Benoit Roux (Im et al, Comp Phys Comm, 111, 59--75, 1998) definition suitable for force evalation; basically a cubic spline.

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
win  Spline window
infrad  Inflation radius (for ion-accessibility)
atomID  Valist ID of atom used in calculation
force  Stores gradient of accesibility (3-vector)

double Vacc_totalSASA Vacc   thee,
double    radius
 

Calculates the solvent-accessible area of the entire molecules.

Note:
Shamelessly ripped off from UHBD FORTRAN routine by Brock Luty
Author:
Nathan Baker (original FORTRAN routine by Brock Luty)
Parameters:
thee  Vacc object
radius  Radius of probe molecule used to calculate solvent accessible area
Returns:
Solvent accessible area

double Vacc_vdwAcc Vacc   thee,
double    center[3]
 

Report van der Waals accessibility.

Determines if a point is within the union of the atomic spheres (with radii equal to their van der Waals radii).

Author:
Nathan Baker
Parameters:
thee  Vacc object
center  Probe center coordinates (point to test)
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)


Generated on Tue Feb 17 09:27:31 2004 for APBS by doxygen1.2.18