Class Vacc methods. More...
#include "apbscfg.h"
#include "apbs/vacc.h"
#include "apbs/apolparm.h"
#include "mc/mc.h"
Functions | |
VPUBLIC unsigned long int | Vacc_memChk (Vacc *thee) |
Get number of bytes in this object and its members. | |
VPRIVATE int | ivdwAccExclus (Vacc *thee, double center[3], double radius, int atomID) |
Determines if a point is within the union of the spheres centered at the atomic centers with radii equal to the sum of their van der Waals radii and the probe radius. Does not include contributions from the specified atom. | |
VPUBLIC Vacc * | Vacc_ctor (Valist *alist, Vclist *clist, double surf_density) |
Construct the accessibility object. | |
VPRIVATE int | Vacc_storeParms (Vacc *thee, Valist *alist, Vclist *clist, double surf_density) |
VPRIVATE int | Vacc_allocate (Vacc *thee) |
VPUBLIC int | Vacc_ctor2 (Vacc *thee, Valist *alist, Vclist *clist, double surf_density) |
FORTRAN stub to construct the accessibility object. | |
VPUBLIC void | Vacc_dtor (Vacc **thee) |
Destroy object. | |
VPUBLIC void | Vacc_dtor2 (Vacc *thee) |
FORTRAN stub to destroy object. | |
VPUBLIC void | Vacc_splineAccGradAtomNorm (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, double *grad) |
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). | |
VPUBLIC void | Vacc_splineAccGradAtomUnnorm (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, double *grad) |
Report gradient of spline-based accessibility with respect to a particular atom (see Vpmg_splineAccAtom). | |
VPUBLIC double | Vacc_splineAccAtom (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom) |
Report spline-based accessibility for a given atom. | |
VPRIVATE double | splineAcc (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, VclistCell *cell) |
Fast spline-based surface computation subroutine. | |
VPUBLIC double | Vacc_splineAcc (Vacc *thee, double center[VAPBS_DIM], double win, double infrad) |
Report spline-based accessibility. | |
VPUBLIC void | Vacc_splineAccGrad (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, double *grad) |
Report gradient of spline-based accessibility. | |
VPUBLIC double | Vacc_molAcc (Vacc *thee, double center[VAPBS_DIM], double radius) |
Report molecular accessibility. | |
VPUBLIC double | Vacc_fastMolAcc (Vacc *thee, double center[VAPBS_DIM], double radius) |
Report molecular accessibility quickly. | |
VPUBLIC double | Vacc_SASA (Vacc *thee, double radius) |
Build the solvent accessible surface (SAS) and calculate the solvent accessible surface area. | |
VPUBLIC double | Vacc_totalSASA (Vacc *thee, double radius) |
Return the total solvent accessible surface area (SASA). | |
VPUBLIC double | Vacc_atomSASA (Vacc *thee, double radius, Vatom *atom) |
Return the atomic solvent accessible surface area (SASA). | |
VPUBLIC VaccSurf * | VaccSurf_ctor (Vmem *mem, double probe_radius, int nsphere) |
Allocate and construct the surface object; do not assign surface points to positions. | |
VPUBLIC 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. | |
VPUBLIC void | VaccSurf_dtor (VaccSurf **thee) |
Destroy the surface object and free its memory. | |
VPUBLIC void | VaccSurf_dtor2 (VaccSurf *thee) |
Destroy the surface object. | |
VPUBLIC VaccSurf * | Vacc_atomSurf (Vacc *thee, Vatom *atom, VaccSurf *ref, double prad) |
Set up an array of points corresponding to the SAS due to a particular atom. | |
VPUBLIC VaccSurf * | VaccSurf_refSphere (Vmem *mem, int npts) |
Set up an array of points for a reference sphere of unit radius. | |
VPUBLIC VaccSurf * | Vacc_atomSASPoints (Vacc *thee, double radius, Vatom *atom) |
Get the set of points for this atom's solvent-accessible surface. | |
VPUBLIC void | Vacc_splineAccGradAtomNorm4 (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, double *grad) |
Report gradient of spline-based accessibility with respect to a particular atom normalized by a 4th order accessibility value due to that atom at that point (see Vpmg_splineAccAtom). | |
VPUBLIC void | Vacc_splineAccGradAtomNorm3 (Vacc *thee, double center[VAPBS_DIM], double win, double infrad, Vatom *atom, double *grad) |
Report gradient of spline-based accessibility with respect to a particular atom normalized by a 3rd order accessibility value due to that atom at that point (see Vpmg_splineAccAtom). | |
VPUBLIC void | Vacc_atomdSAV (Vacc *thee, double srad, Vatom *atom, double *dSA) |
Get the derivatve of solvent accessible volume. | |
VPUBLIC void | Vacc_atomdSASA (Vacc *thee, double dpos, double srad, Vatom *atom, double *dSA) |
Get the derivatve of solvent accessible area. | |
VPUBLIC void | Vacc_totalAtomdSASA (Vacc *thee, double dpos, double srad, Vatom *atom, double *dSA) |
Testing purposes only. | |
VPUBLIC void | Vacc_totalAtomdSAV (Vacc *thee, double dpos, double srad, Vatom *atom, double *dSA, Vclist *clist) |
Total solvent accessible volume. | |
VPUBLIC double | Vacc_totalSAV (Vacc *thee, Vclist *clist, APOLparm *apolparm, double radius) |
Return the total solvent accessible volume (SAV). | |
VPUBLIC int | Vacc_wcaEnergy (Vacc *acc, APOLparm *apolparm, Valist *alist, Vclist *clist) |
Return the WCA integral energy. | |
VPUBLIC int | Vacc_wcaForceAtom (Vacc *thee, APOLparm *apolparm, Vclist *clist, Vatom *atom, double *force) |
Return the WCA integral force. |
Class Vacc methods.
* * APBS -- Adaptive Poisson-Boltzmann Solver * * Nathan A. Baker (baker@biochem.wustl.edu) * Dept. of Biochemistry and Molecular Biophysics * Center for Computational Biology * Washington University in St. Louis * * Additional contributing authors listed in the code documentation. * * Copyright (c) 2002-2009, Washington University in St. Louis. * Portions Copyright (c) 2002-2009. Nathan A. Baker * Portions Copyright (c) 1999-2002. The Regents of the University of California. * Portions Copyright (c) 1995. Michael Holst * * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * - Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * * - Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * * - Neither the name of Washington University in St. Louis nor the names of its * contributors may be used to endorse or promote products derived from this * software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * *
VPRIVATE int ivdwAccExclus | ( | Vacc * | thee, | |
double | center[3], | |||
double | radius, | |||
int | atomID | |||
) |
Determines if a point is within the union of the spheres centered at the atomic centers with radii equal to the sum of their van der Waals radii and the probe radius. Does not include contributions from the specified atom.
center | Accessibility object | |
radius | Position to test | |
atomID | Radius of probe ID of atom to ignore |
References sVclistCell::atoms, sVacc::clist, sVatom::id, sVclistCell::natoms, sVatom::position, sVatom::radius, Vclist_getCell(), and Vclist_maxRadius().
Referenced by Vacc_atomSurf().
VPRIVATE double splineAcc | ( | Vacc * | thee, | |
double | center[VAPBS_DIM], | |||
double | win, | |||
double | infrad, | |||
VclistCell * | cell | |||
) |
Fast spline-based surface computation subroutine.
center | Accessibility object | |
win | Point at which the acc is to be evaluated | |
infrad | Spline window | |
cell | Radius to inflate atomic radius Cell of atom objects |
References sVacc::atomFlags, sVclistCell::atoms, sVatom::id, sVclistCell::natoms, and Vacc_splineAccAtom().
Referenced by Vacc_splineAcc(), and Vacc_splineAccGrad().
VPRIVATE int Vacc_allocate | ( | Vacc * | thee | ) |
Allocate (and clear) space for storage
References sVacc::alist, sVacc::atomFlags, sVacc::mem, and Valist_getNumberAtoms().
Referenced by Vacc_ctor2().
Check and store parameters passed to constructor
References sVacc::alist, sVacc::clist, sVacc::mem, sVaccSurf::npts, sVacc::refSphere, sVacc::surf_density, VaccSurf_refSphere(), Valist_getAtom(), Valist_getNumberAtoms(), Vatom_getRadius(), and Vclist_maxRadius().
Referenced by Vacc_ctor2().