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...

struct  sVaccSurf
 Surface object list of per-atom surface points. More...


Typedefs

typedef sVaccSurf VaccSurf
 Declaration of the VaccSurf class as the VaccSurf structure.

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


Functions

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

VaccSurfVaccSurf_ctor (Vmem *mem, double probe_radius, int nsphere)
 Allocate and construct the surface object; do not assign surface points to positions.

int VaccSurf_ctor2 (VaccSurf *thee, Vmem *mem, double probe_radius, int nsphere)
 Construct the surface object using previously allocated memory; do not assign surface points to positions.

void VaccSurf_dtor (VaccSurf **thee)
 Destroy the surface object and free its memory.

void VaccSurf_dtor2 (VaccSurf *thee)
 Destroy the surface object.

VaccSurfVaccSurf_refSphere (Vmem *mem, int npts)
 Set up an array of points for a reference sphere of unit radius.

VaccSurfVacc_atomSurf (Vacc *thee, Vatom *atom, VaccSurf *ref, double probe_radius)
 Set up an array of points corresponding to the SAS due to a particular atom.

VaccVacc_ctor (Valist *alist, Vclist *clist, double surf_density)
 Construct the accessibility object.

int Vacc_ctor2 (Vacc *thee, Valist *alist, Vclist *clist, double surf_density)
 FORTRAN stub to construct the accessibility object.

void Vacc_dtor (Vacc **thee)
 Destroy object.

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

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

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

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

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

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

void Vacc_splineAccGrad (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, double *grad)
 Report gradient of spline-based accessibility.

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

void Vacc_splineAccGradAtomUnnorm (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, double *force)
 Report gradient of spline-based accessibility with respect to a particular atom (see Vpmg_splineAccAtom).

void Vacc_splineAccGradAtomNorm (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, 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_SASA (Vacc *thee, double radius)
 Build the solvent accessible surface (SAS) and calculate the solvent accessible surface area.

double Vacc_totalSASA (Vacc *thee, double radius)
 Return the total solvent accessible surface area (SASA).

double Vacc_atomSASA (Vacc *thee, double radius, Vatom *atom)
 Return the atomic solvent accessible surface area (SASA).

VaccSurfVacc_atomSASPoints (Vacc *thee, double radius, Vatom *atom)
 Get the set of points for this atom's solvent-accessible surface.


Detailed Description

Solvent- and ion-accessibility oracle.


Function Documentation

double Vacc_atomSASA Vacc thee,
double  radius,
Vatom atom
 

Return the atomic solvent accessible surface area (SASA).

Note:
Alias for Vacc_SASA
Author:
Nathan Baker
Returns:
Atomic solvent accessible area (A^2)
Parameters:
radius  Accessibility object
atom  Probe molecule radius (Å) Atom of interest

VaccSurf* Vacc_atomSASPoints Vacc thee,
double  radius,
Vatom atom
 

Get the set of points for this atom's solvent-accessible surface.

Author:
Nathan Baker
Returns:
Pointer to VaccSurf object for this atom
Parameters:
radius  Accessibility object
atom  Probe molecule radius (Å) Atom of interest

VaccSurf* Vacc_atomSurf Vacc thee,
Vatom atom,
VaccSurf ref,
double  probe_radius
 

Set up an array of points corresponding to the SAS due to a particular atom.

Author:
Nathan Baker
Returns:
Atom sphere surface object
Parameters:
atom  Accessibility object for molecule
ref  Atom for which the surface should be constructed
probe_radius  Reference sphere which sets the resolution for the surface.
See also:
VaccSurf_refSphere Probe radius (in A)

Vacc* Vacc_ctor Valist alist,
Vclist clist,
double  surf_density
 

Construct the accessibility object.

Author:
Nathan Baker
Returns:
Newly allocated Vacc object
Parameters:
clist  Molecule for accessibility queries
surf_density  Pre-constructed cell list for looking up atoms near specific positions Minimum per-atom solvent accessible surface point density (in pts/A^2)

int Vacc_ctor2 Vacc thee,
Valist alist,
Vclist clist,
double  surf_density
 

FORTRAN stub to construct the accessibility object.

Author:
Nathan Baker
Returns:
1 if successful, 0 otherwise
Parameters:
alist  Memory for Vacc objet
clist  Molecule for accessibility queries
surf_density  Pre-constructed cell list for looking up atoms near specific positions Minimum per-atom solvent accessible surface point density (in pts/A^2)

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[VAPBS_DIM],
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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

Bug:
This routine has a slight bug which can generate very small internal regions of high dielectric (thanks to John Mongan and Jess Swanson for finding this)
Parameters:
center  Accessibility object
radius  Probe center coordinates Probe radius (in Å)

double Vacc_ivdwAcc Vacc thee,
double  center[VAPBS_DIM],
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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)
Parameters:
center  Accessibility object
radius  Probe center coordinates Probe radius (Å)

unsigned long int Vacc_memChk Vacc thee  ) 
 

Get number of bytes in this object and its members.

Author:
Nathan Baker
Returns:
Number of bytes allocated for object
Parameters:
thee  Object for memory check

double Vacc_molAcc Vacc thee,
double  center[VAPBS_DIM],
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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)

Bug:
This routine has a slight bug which can generate very small internal regions of high dielectric (thanks to John Mongan and Jess Swanson for finding this)
Parameters:
center  Accessibility object
radius  Probe center coordinates Probe radius (in Å)

double Vacc_SASA Vacc thee,
double  radius
 

Build the solvent accessible surface (SAS) and calculate the solvent accessible surface area.

Note:
Similar to UHBD FORTRAN routine by Brock Luty (returns UHBD's asas2)
Author:
Nathan Baker (original FORTRAN routine by Brock Luty)
Returns:
Total solvent accessible area (A^2)
Parameters:
radius  Accessibility object Probe molecule radius (Å)

double Vacc_splineAcc Vacc thee,
double  center[VAPBS_DIM],
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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)
Parameters:
center  Accessibility object
win  Probe center coordinates
infrad  Spline window (Å) Inflation radius (Å) for ion access.

double Vacc_splineAccAtom Vacc thee,
double  center[VAPBS_DIM],
double  win,
double  infrad,
Vatom atom
 

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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)
Parameters:
center  Accessibility object
win  Probe center coordinates
infrad  Spline window (Å)
atom  Inflation radius (Å) for ion access. Atom

void Vacc_splineAccGrad Vacc thee,
double  center[VAPBS_DIM],
double  win,
double  infrad,
double *  grad
 

Report gradient of spline-based accessibility.

Author:
Nathan Baker
Parameters:
center  Accessibility object
win  Probe center coordinates
infrad  Spline window (Å)
grad  Inflation radius (Å) for ion access. 3-vector set to gradient of accessibility

void Vacc_splineAccGradAtomNorm Vacc thee,
double  center[VAPBS_DIM],
double  win,
double  infrad,
Vatom atom,
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:
center  Accessibility object
win  Probe center coordinates
infrad  Spline window (Å)
atom  Inflation radius (Å) for ion access.
force  Atom VAPBS_DIM-vector set to gradient of accessibility

void Vacc_splineAccGradAtomUnnorm Vacc thee,
double  center[VAPBS_DIM],
double  win,
double  infrad,
Vatom atom,
double *  force
 

Report gradient of spline-based accessibility with respect to a particular atom (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:
center  Accessibility object
win  Probe center coordinates
infrad  Spline window (Å)
atom  Inflation radius (Å) for ion access.
force  Atom VAPBS_DIM-vector set to gradient of accessibility

double Vacc_totalSASA Vacc thee,
double  radius
 

Return the total solvent accessible surface area (SASA).

Note:
Alias for Vacc_SASA
Author:
Nathan Baker
Returns:
Total solvent accessible area (A^2)
Parameters:
radius  Accessibility object Probe molecule radius (Å)

double Vacc_vdwAcc Vacc thee,
double  center[VAPBS_DIM]
 

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
Returns:
Characteristic function value between 1.0 (accessible) and 0.0 (inaccessible)
Parameters:
center  Accessibility object Probe center coordinates

VaccSurf* VaccSurf_ctor Vmem *  mem,
double  probe_radius,
int  nsphere
 

Allocate and construct the surface object; do not assign surface points to positions.

Author:
Nathan Baker
Returns:
Newly allocated and constructed surface object
Parameters:
probe_radius  Memory manager (can be VNULL)
nsphere  Probe radius (in A) for this surface Number of points in sphere

int VaccSurf_ctor2 VaccSurf thee,
Vmem *  mem,
double  probe_radius,
int  nsphere
 

Construct the surface object using previously allocated memory; do not assign surface points to positions.

Author:
Nathan Baker
Returns:
1 if successful, 0 otherwise
Parameters:
mem  Allocated memory
probe_radius  Memory manager (can be VNULL)
nsphere  Probe radius (in A) for this surface Number of points in sphere

void VaccSurf_dtor VaccSurf **  thee  ) 
 

Destroy the surface object and free its memory.

Author:
Nathan Baker
Parameters:
thee  Object to be destroyed

void VaccSurf_dtor2 VaccSurf thee  ) 
 

Destroy the surface object.

Author:
Nathan Baker
Parameters:
thee  Object to be destroyed

VaccSurf* VaccSurf_refSphere Vmem *  mem,
int  npts
 

Set up an array of points for a reference sphere of unit radius.

Generates approximately npts # of points (actual number stored in thee->npts) somewhat uniformly distributed across a sphere of unit radius centered at the origin.

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)
Returns:
Reference sphere surface object
Parameters:
npts  Memory object Requested number of points on sphere


Generated on Tue Dec 6 10:05:59 2005 for APBS by doxygen 1.3.5