APBS  1.4.1
Vhal class

A "class" which consists solely of macro definitions which are used by several other classes. More...

Files

file  vhal.h
 Contains generic macro definitions for APBS.
 

Macros

#define APBS_TIMER_WALL_CLOCK   26
 APBS total execution timer ID.
 
#define APBS_TIMER_SETUP   27
 APBS setup timer ID.
 
#define APBS_TIMER_SOLVER   28
 APBS solver timer ID.
 
#define APBS_TIMER_ENERGY   29
 APBS energy timer ID.
 
#define APBS_TIMER_FORCE   30
 APBS force timer ID.
 
#define APBS_TIMER_TEMP1   31
 APBS temp timer #1 ID.
 
#define APBS_TIMER_TEMP2   32
 APBS temp timer #2 ID.
 
#define MAXMOL   5
 The maximum number of molecules that can be involved in a single PBE calculation.
 
#define MAXION   10
 The maximum number of ion species that can be involved in a single PBE calculation.
 
#define MAXFOCUS   5
 The maximum number of times an MG calculation can be focused.
 
#define VMGNLEV   4
 Minimum number of levels in a multigrid calculations.
 
#define VREDFRAC   0.25
 Maximum reduction of grid spacing during a focusing calculation.
 
#define VAPBS_NVS   4
 Number of vertices per simplex (hard-coded to 3D)
 
#define VAPBS_DIM   3
 Our dimension.
 
#define VAPBS_RIGHT   0
 Face definition for a volume. More...
 
#define MAX_SPHERE_PTS   50000
 Maximum number of points on a sphere. More...
 
#define VAPBS_FRONT   1
 Face definition for a volume. More...
 
#define VAPBS_UP   2
 Face definition for a volume. More...
 
#define VAPBS_LEFT   3
 Face definition for a volume. More...
 
#define VAPBS_BACK   4
 Face definition for a volume. More...
 
#define VAPBS_DOWN   5
 Face definition for a volume. More...
 
#define VPMGSMALL   1e-12
 A small number used in Vpmg to decide if points are on/off grid-lines or non-zer0 (etc.)
 
#define SINH_MIN   -85.0
 Used to set the min values acceptable for sinh chopping.
 
#define SINH_MAX   85.0
 Used to set the max values acceptable for sinh chopping.
 
#define VF77_MANGLE(name, NAME)   name
 Name-mangling macro for using FORTRAN functions in C code.
 
#define VFLOOR(value)   floor(value)
 Wrapped floor to fix floating point issues in the Intel compiler. More...
 
#define VEMBED(rctag)
 Allows embedding of RCS ID tags in object files. More...
 

Typedefs

typedef enum eVhal_PBEType Vhal_PBEType
 Declaration of the Vhal_PBEType type as the Vhal_PBEType enum.
 
typedef enum eVhal_IPKEYType Vhal_IPKEYType
 Declaration of the Vhal_IPKEYType type as the Vhal_IPKEYType enum.
 
typedef enum eVhal_NONLINType Vhal_NONLINType
 Declaration of the Vhal_NONLINType type as the Vhal_NONLINType enum.
 
typedef enum eVoutput_Format Voutput_Format
 Declaration of the Voutput_Format type as the VOutput_Format enum.
 
typedef enum eVbcfl Vbcfl
 Declare Vbcfl type.
 
typedef enum eVsurf_Meth Vsurf_Meth
 Declaration of the Vsurf_Meth type as the Vsurf_Meth enum.
 
typedef enum eVchrg_Meth Vchrg_Meth
 Declaration of the Vchrg_Meth type as the Vchrg_Meth enum.
 
typedef enum eVchrg_Src Vchrg_Src
 Declaration of the Vchrg_Src type as the Vchrg_Meth enum.
 
typedef enum eVdata_Type Vdata_Type
 Declaration of the Vdata_Type type as the Vdata_Type enum.
 
typedef enum eVdata_Format Vdata_Format
 Declaration of the Vdata_Format type as the Vdata_Format enum.
 

Enumerations

enum  eVrc_Codes { VRC_WARNING =-1, VRC_FAILURE =0, VRC_SUCCESS =1 }
 Return code enumerations. More...
 
enum  eVsol_Meth {
  VSOL_CGMG, VSOL_Newton, VSOL_MG, VSOL_CG,
  VSOL_SOR, VSOL_RBGS, VSOL_WJ, VSOL_Richardson,
  VSOL_CGMGAqua, VSOL_NewtonAqua
}
 Solution Method enumerations. More...
 
enum  eVsurf_Meth {
  VSM_MOL =0, VSM_MOLSMOOTH =1, VSM_SPLINE =2, VSM_SPLINE3 =3,
  VSM_SPLINE4 =4
}
 Types of molecular surface definitions. More...
 
enum  eVhal_PBEType {
  PBE_LPBE, PBE_NPBE, PBE_LRPBE, PBE_NRPBE,
  PBE_SMPBE
}
 Version of PBE to solve. More...
 
enum  eVhal_IPKEYType { IPKEY_SMPBE = -2, IPKEY_LPBE, IPKEY_NPBE }
 Type of ipkey to use for MG methods. More...
 
enum  eVhal_NONLINType {
  NONLIN_LPBE = 0, NONLIN_NPBE, NONLIN_SMPBE, NONLIN_LPBEAQUA,
  NONLIN_NPBEAQUA
}
 Type of nonlinear to use for MG methods.
 
enum  eVoutput_Format { OUTPUT_NULL, OUTPUT_FLAT }
 Output file format. More...
 
enum  eVbcfl {
  BCFL_ZERO =0, BCFL_SDH =1, BCFL_MDH =2, BCFL_UNUSED =3,
  BCFL_FOCUS =4, BCFL_MEM =5, BCFL_MAP =6
}
 Types of boundary conditions. More...
 
enum  eVchrg_Meth { VCM_TRIL =0, VCM_BSPL2 =1, VCM_BSPL4 =2 }
 Types of charge discretization methods. More...
 
enum  eVchrg_Src { VCM_CHARGE =0, VCM_PERMANENT =1, VCM_INDUCED =2, VCM_NLINDUCED =3 }
 Charge source. More...
 
enum  eVdata_Type {
  VDT_CHARGE, VDT_POT, VDT_ATOMPOT, VDT_SMOL,
  VDT_SSPL, VDT_VDW, VDT_IVDW, VDT_LAP,
  VDT_EDENS, VDT_NDENS, VDT_QDENS, VDT_DIELX,
  VDT_DIELY, VDT_DIELZ, VDT_KAPPA
}
 Types of (scalar) data that can be written out of APBS. More...
 
enum  eVdata_Format {
  VDF_DX =0, VDF_UHBD =1, VDF_AVS =2, VDF_MCSF =3,
  VDF_GZ =4, VDF_FLAT =5
}
 Format of data for APBS I/O. More...
 

Detailed Description

A "class" which consists solely of macro definitions which are used by several other classes.

Macro Definition Documentation

#define MAX_SPHERE_PTS   50000

Maximum number of points on a sphere.

Note
Used by VaccSurf

Definition at line 415 of file vhal.h.

#define VAPBS_BACK   4

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 439 of file vhal.h.

#define VAPBS_DOWN   5

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 445 of file vhal.h.

#define VAPBS_FRONT   1

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 421 of file vhal.h.

#define VAPBS_LEFT   3

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 433 of file vhal.h.

#define VAPBS_RIGHT   0

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 409 of file vhal.h.

#define VAPBS_UP   2

Face definition for a volume.

Note
Consistent with PMG if RIGHT = EAST, BACK = SOUTH

Definition at line 427 of file vhal.h.

#define VEMBED (   rctag)
Value:
VPRIVATE const char* rctag; \
static void* use_rcsid=(0 ? &use_rcsid : (void**)&rcsid);

Allows embedding of RCS ID tags in object files.

Author
Mike Holst

Definition at line 563 of file vhal.h.

#define VFLOOR (   value)    floor(value)

Wrapped floor to fix floating point issues in the Intel compiler.

Author
Todd Dolinksy

Definition at line 554 of file vhal.h.

Enumeration Type Documentation

enum eVbcfl

Types of boundary conditions.

Author
Nathan Baker
Enumerator
BCFL_ZERO 

Zero Dirichlet boundary conditions

BCFL_SDH 

Single-sphere Debye-Huckel Dirichlet boundary condition

BCFL_MDH 

Multiple-sphere Debye-Huckel Dirichlet boundary condition

BCFL_UNUSED 

Unused boundary condition method (placeholder)

BCFL_FOCUS 

Focusing Dirichlet boundary condition

BCFL_MEM 

Focusing membrane boundary condition

BCFL_MAP 

Skip first level of focusing use an external map

Definition at line 209 of file vhal.h.

Types of charge discretization methods.

Author
Nathan Baker
Enumerator
VCM_TRIL 

Trilinear interpolation of charge to 8 nearest grid points. The traditional method; not particularly good to use with PBE forces.

VCM_BSPL2 

Cubic B-spline across nearest- and next-nearest-neighbors. Mainly for use in grid-sensitive applications (such as force calculations).

VCM_BSPL4 

5th order B-spline for AMOEBA permanent multipoles.

Definition at line 232 of file vhal.h.

enum eVchrg_Src

Charge source.

Author
Michael Schnieders
Enumerator
VCM_CHARGE 

Partial Charge source distribution

VCM_PERMANENT 

Permanent Multipole source distribution

VCM_INDUCED 

Induced Dipole source distribution

VCM_NLINDUCED 

NL Induced Dipole source distribution

Definition at line 253 of file vhal.h.

Format of data for APBS I/O.

Author
Nathan Baker
Enumerator
VDF_DX 

OpenDX (Data Explorer) format

VDF_UHBD 

UHBD format

VDF_AVS 

AVS UCD format

VDF_MCSF 

FEtk MC Simplex Format (MCSF)

VDF_GZ 

Binary file (GZip)

VDF_FLAT 

Write flat file

Definition at line 311 of file vhal.h.

Types of (scalar) data that can be written out of APBS.

Author
Nathan Baker
Enumerator
VDT_CHARGE 

Charge distribution (e)

VDT_POT 

Potential (kT/e)

VDT_ATOMPOT 

Atom potential (kT/e)

VDT_SMOL 

Solvent accessibility defined by molecular/Connolly surface definition (1 = accessible, 0 = inaccessible)

VDT_SSPL 

Spline-based solvent accessibility (1 = accessible, 0 = inaccessible)

VDT_VDW 

van der Waals-based accessibility (1 = accessible, 0 = inaccessible)

VDT_IVDW 

Ion accessibility/inflated van der Waals (1 = accessible, 0 = inaccessible)

VDT_LAP 

Laplacian of potential (kT/e/A^2)

VDT_EDENS 

Energy density $\epsilon (\nabla u)^2$, where $u$ is potential (kT/e/A)^2

VDT_NDENS 

Ion number density $\sum c_i \exp (-q_i u)^2$, where $u$ is potential (output in M)

VDT_QDENS 

Ion charge density $\sum q_i c_i \exp (-q_i u)^2$, where $u$ is potential (output in $e_c M$)

VDT_DIELX 

Dielectric x-shifted map as calculated with the currently specified scheme (dimensionless)

VDT_DIELY 

Dielectric y-shifted map as calculated with the currently specified scheme (dimensionless)

VDT_DIELZ 

Dielectric y-shifted map as calculated with the currently specified scheme (dimensionless)

VDT_KAPPA 

Kappa map as calculated with the currently specified scheme ( $\AA^{-3}$)

Definition at line 271 of file vhal.h.

Type of ipkey to use for MG methods.

Enumerator
IPKEY_SMPBE 

SMPBE ipkey

IPKEY_LPBE 

LPBE ipkey

IPKEY_NPBE 

NPBE ipkey

Definition at line 159 of file vhal.h.

Version of PBE to solve.

Enumerator
PBE_LPBE 

Traditional Poisson-Boltzmann equation, linearized

PBE_NPBE 

Traditional Poisson-Boltzmann equation, full

PBE_LRPBE 

Regularized Poisson-Boltzmann equation, linearized

PBE_SMPBE 

< Regularized Poisson-Boltzmann equation, full SM PBE

Definition at line 141 of file vhal.h.

Output file format.

Enumerator
OUTPUT_NULL 

No output

OUTPUT_FLAT 

Output in flat-file format

Definition at line 193 of file vhal.h.

enum eVrc_Codes

Return code enumerations.

Author
David Gohara
Note
Note that the enumerated values are opposite the standard for FAILURE and SUCCESS
Enumerator
VRC_FAILURE 

A non-fatal error

VRC_SUCCESS 

A fatal error

Definition at line 68 of file vhal.h.

enum eVsol_Meth

Solution Method enumerations.

Author
David Gohara
Note
Note that the enumerated values are opposite the standard for FAILURE and SUCCESS

Definition at line 83 of file vhal.h.

Types of molecular surface definitions.

Author
Nathan Baker
Enumerator
VSM_MOL 

Ion accessibility is defined using inflated van der Waals radii, the dielectric coefficient ( ) is defined using the molecular (Conolly) surface definition without smoothing

VSM_MOLSMOOTH 

As VSM_MOL but with a simple harmonic average smoothing

VSM_SPLINE 

Spline-based surface definitions. This is primarily for use with force calculations, since it requires substantial reparameterization of radii. This is based on the work of Im et al, Comp. Phys. Comm. 111 , (1998) and uses a cubic spline to define a smoothly varying characteristic function for the surface-based parameters. Ion accessibility is defined using inflated van der Waals radii with the spline function and the dielectric coefficient is defined using the standard van der Waals radii with the spline function.

VSM_SPLINE3 

A 5th order polynomial spline is used to create a smoothly varying characteristic function (continuity through 2nd derivatives) for surface based paramters.

VSM_SPLINE4 

A 7th order polynomial spline is used to create a smoothly varying characteristic function (continuity through 3rd derivatives) for surface based paramters.

Definition at line 104 of file vhal.h.