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.


Defines

#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.
#define VAPBS_FRONT   1
 Face definition for a volume.
#define VAPBS_UP   2
 Face definition for a volume.
#define VAPBS_LEFT   3
 Face definition for a volume.
#define VAPBS_BACK   4
 Face definition for a volume.
#define VAPBS_DOWN   5
 Face definition for a volume.
#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/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.
#define VEMBED(rctag)
 Allows embedding of RCS ID tags in object files.

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_FAILURE = 0,
  VRC_SUCCESS = 1
}
 

Return code enumerations.

More...
enum  eVsol_Meth
 

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

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
}
 

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_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
}
 

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.


Define Documentation

#define VAPBS_BACK   4

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#define VAPBS_DOWN   5

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#define VAPBS_FRONT   1

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#define VAPBS_LEFT   3

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#define VAPBS_RIGHT   0

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#define VAPBS_UP   2

Face definition for a volume.

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

Referenced by extEnergy(), and Vpmg_setPart().

#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
#define VFLOOR ( value   )     floor(value)

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

Author:
Todd Dolinksy

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

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.

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

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)

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_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}$)

Type of ipkey to use for MG methods.

Enumerator:
IPKEY_SMPBE 

SMPBE ipkey

IPKEY_LPBE 

LPBE ipkey

IPKEY_NPBE 

NPBE ipkey

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

Output file format.

Enumerator:
OUTPUT_NULL 

No output

OUTPUT_FLAT 

Output in flat-file format

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

enum eVsol_Meth

Solution Method enumerations.

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

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.


Generated by  doxygen 1.6.2