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 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_XML
}
 Output file format. More...
enum  eVbcfl {
  BCFL_ZERO = 0,
  BCFL_SDH = 1,
  BCFL_MDH = 2,
  BCFL_UNUSED = 3,
  BCFL_FOCUS = 4
}
 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

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
OUTPUT_XML  Output in XML 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 on Thu Feb 12 06:23:51 2009 for APBS by  doxygen 1.5.7.1