67#include "maloc/maloc.h"
77#include "generic/apolparm.h"
133#if !defined(VINLINE_VACC)
146# define Vacc_memChk(thee) (Vmem_bytes((thee)->mem))
struct sAPOLparm APOLparm
Declaration of the APOLparm class as the APOLparm structure.
VEXTERNC int Vacc_wcaEnergy(Vacc *thee, APOLparm *apolparm, Valist *alist, Vclist *clist)
Return the WCA integral energy.
VEXTERNC 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 acc...
VEXTERNC int Vacc_ctor2(Vacc *thee, Valist *alist, Vclist *clist, double surf_density)
FORTRAN stub to construct the accessibility object.
VEXTERNC double Vacc_ivdwAcc(Vacc *thee, double center[VAPBS_DIM], double radius)
Report inflated van der Waals accessibility.
VEXTERNC int Vacc_wcaEnergyAtom(Vacc *thee, APOLparm *apolparm, Valist *alist, Vclist *clist, int iatom, double *value)
Calculate the WCA energy for an atom.
struct sVaccSurf VaccSurf
Declaration of the VaccSurf class as the VaccSurf structure.
VEXTERNC 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_splineAccAt...
struct sVacc Vacc
Declaration of the Vacc class as the Vacc structure.
VEXTERNC unsigned long int Vacc_memChk(Vacc *thee)
Get number of bytes in this object and its members.
VEXTERNC void VaccSurf_dtor2(VaccSurf *thee)
Destroy the surface object.
VEXTERNC void Vacc_totalAtomdSAV(Vacc *thee, double dpos, double radius, Vatom *atom, double *dSA, Vclist *clist)
Total solvent accessible volume.
VEXTERNC double Vacc_molAcc(Vacc *thee, double center[VAPBS_DIM], double radius)
Report molecular accessibility.
VEXTERNC double Vacc_vdwAcc(Vacc *thee, double center[VAPBS_DIM])
Report van der Waals accessibility.
VEXTERNC void Vacc_splineAccGradAtomNorm3(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 a 3rd o...
VEXTERNC void VaccSurf_dtor(VaccSurf **thee)
Destroy the surface object and free its memory.
VEXTERNC void Vacc_totalAtomdSASA(Vacc *thee, double dpos, double radius, Vatom *atom, double *dSA)
Testing purposes only.
VEXTERNC void Vacc_splineAccGrad(Vacc *thee, double center[VAPBS_DIM], double win, double infrad, double *grad)
Report gradient of spline-based accessibility.
VEXTERNC void Vacc_dtor(Vacc **thee)
Destroy object.
VEXTERNC VaccSurf * VaccSurf_ctor(Vmem *mem, double probe_radius, int nsphere)
Allocate and construct the surface object; do not assign surface points to positions.
VEXTERNC double Vacc_splineAcc(Vacc *thee, double center[VAPBS_DIM], double win, double infrad)
Report spline-based accessibility.
VEXTERNC double Vacc_totalSASA(Vacc *thee, double radius)
Return the total solvent accessible surface area (SASA)
VEXTERNC void Vacc_atomdSAV(Vacc *thee, double radius, Vatom *atom, double *dSA)
Get the derivatve of solvent accessible volume.
VEXTERNC double Vacc_atomSASA(Vacc *thee, double radius, Vatom *atom)
Return the atomic solvent accessible surface area (SASA)
VEXTERNC VaccSurf * VaccSurf_refSphere(Vmem *mem, int npts)
Set up an array of points for a reference sphere of unit radius.
VEXTERNC double Vacc_fastMolAcc(Vacc *thee, double center[VAPBS_DIM], double radius)
Report molecular accessibility quickly.
VEXTERNC double Vacc_SASA(Vacc *thee, double radius)
Build the solvent accessible surface (SAS) and calculate the solvent accessible surface area.
VEXTERNC 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 posit...
VEXTERNC void Vacc_splineAccGradAtomNorm4(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 a 4th o...
VEXTERNC void Vacc_atomdSASA(Vacc *thee, double dpos, double radius, Vatom *atom, double *dSA)
Get the derivatve of solvent accessible area.
VEXTERNC 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.
VEXTERNC int Vacc_wcaForceAtom(Vacc *thee, APOLparm *apolparm, Vclist *clist, Vatom *atom, double *force)
Return the WCA integral force.
VEXTERNC VaccSurf * Vacc_atomSASPoints(Vacc *thee, double radius, Vatom *atom)
Get the set of points for this atom's solvent-accessible surface.
VEXTERNC double Vacc_totalSAV(Vacc *thee, Vclist *clist, APOLparm *apolparm, double radius)
Return the total solvent accessible volume (SAV)
VEXTERNC Vacc * Vacc_ctor(Valist *alist, Vclist *clist, double surf_density)
Construct the accessibility object.
VEXTERNC void Vacc_dtor2(Vacc *thee)
FORTRAN stub to destroy object.
VEXTERNC double Vacc_splineAccAtom(Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom)
Report spline-based accessibility for a given atom.
struct sValist Valist
Declaration of the Valist class as the Valist structure.
struct sVatom Vatom
Declaration of the Vatom class as the Vatom structure.
struct sVclist Vclist
Declaration of the Vclist class as the Vclist structure.
#define VAPBS_DIM
Our dimension.
Oracle for solvent- and ion-accessibility around a biomolecule.
Surface object list of per-atom surface points.
Contains declarations for class Valist.
Contains declarations for class Vatom.
Contains declarations for class Vclist.
Contains generic macro definitions for APBS.
Contains a collection of useful constants and conversion factors.