APBS  1.4.1
Vmgrid class

Oracle for Cartesian mesh data. More...

Files

file  vmgrid.c
 Class Vmgrid methods.
 
file  vmgrid.h
 Multiresolution oracle for Cartesian mesh data.
 

Data Structures

struct  sVmgrid
 Multiresoltion oracle for Cartesian mesh data. More...
 

Macros

#define VMGRIDMAX   20
 The maximum number of levels in the grid hiearchy.
 

Typedefs

typedef struct sVmgrid Vmgrid
 Declaration of the Vmgrid class as the Vgmrid structure.
 

Functions

VEXTERNC VmgridVmgrid_ctor ()
 Construct Vmgrid object. More...
 
VEXTERNC int Vmgrid_ctor2 (Vmgrid *thee)
 Initialize Vmgrid object. More...
 
VEXTERNC int Vmgrid_value (Vmgrid *thee, double x[3], double *value)
 Get potential value (from mesh or approximation) at a point. More...
 
VEXTERNC void Vmgrid_dtor (Vmgrid **thee)
 Object destructor. More...
 
VEXTERNC void Vmgrid_dtor2 (Vmgrid *thee)
 FORTRAN stub object destructor. More...
 
VEXTERNC int Vmgrid_addGrid (Vmgrid *thee, Vgrid *grid)
 Add a grid to the hierarchy. More...
 
VEXTERNC int Vmgrid_curvature (Vmgrid *thee, double pt[3], int cflag, double *curv)
 Get second derivative values at a point. More...
 
VEXTERNC int Vmgrid_gradient (Vmgrid *thee, double pt[3], double grad[3])
 Get first derivative values at a point. More...
 
VEXTERNC VgridVmgrid_getGridByNum (Vmgrid *thee, int num)
 Get specific grid in hiearchy. More...
 
VEXTERNC VgridVmgrid_getGridByPoint (Vmgrid *thee, double pt[3])
 Get grid in hiearchy which contains specified point or VNULL. More...
 

Detailed Description

Oracle for Cartesian mesh data.

Function Documentation

VEXTERNC int Vmgrid_addGrid ( Vmgrid thee,
Vgrid grid 
)

Add a grid to the hierarchy.

Author
Nathan Baker
Parameters
theePointer to object to be destroyed
gridGrid to be added. As mentioned above, we would prefer to have the finest grid added first, next-finest second, ..., coarsest last – this is how the grid will be searched when looking up values for points. However, this is not enforced to provide flexibility for cases where the dataset is decomposed into disjoint partitions, etc.
Returns
1 if successful, 0 otherwise

Definition at line 195 of file vmgrid.c.

VEXTERNC Vmgrid* Vmgrid_ctor ( )

Construct Vmgrid object.

Author
Nathan Baker
Returns
Newly allocated and initialized Vmgrid object

Definition at line 57 of file vmgrid.c.

VEXTERNC int Vmgrid_ctor2 ( Vmgrid thee)

Initialize Vmgrid object.

Author
Nathan Baker
Parameters
theeNewly allocated Vmgrid object
Returns
Newly allocated and initialized Vmgrid object

Definition at line 72 of file vmgrid.c.

VEXTERNC int Vmgrid_curvature ( Vmgrid thee,
double  pt[3],
int  cflag,
double *  curv 
)

Get second derivative values at a point.

Author
Nathan Baker (wrapper for Vgrid routine by Steve Bond)
Parameters
theePointer to Vmgrid object
ptLocation to evaluate second derivative
cflag
  • 0: Reduced Maximal Curvature
  • 1: Mean Curvature (Laplace)
  • 2: Gauss Curvature
  • 3: True Maximal Curvature
curvSpecified curvature value
Returns
1 if successful, 0 if off grid

Definition at line 138 of file vmgrid.c.

VEXTERNC void Vmgrid_dtor ( Vmgrid **  thee)

Object destructor.

Author
Nathan Baker
Parameters
theePointer to memory location of object to be destroyed

Definition at line 88 of file vmgrid.c.

VEXTERNC void Vmgrid_dtor2 ( Vmgrid thee)

FORTRAN stub object destructor.

Author
Nathan Baker
Parameters
theePointer to object to be destroyed

Definition at line 101 of file vmgrid.c.

VEXTERNC Vgrid* Vmgrid_getGridByNum ( Vmgrid thee,
int  num 
)

Get specific grid in hiearchy.

Author
Nathan Baker
Parameters
theePointer to Vmgrid object
numNumber of grid in hiearchy
Returns
Pointer to specified grid
VEXTERNC Vgrid* Vmgrid_getGridByPoint ( Vmgrid thee,
double  pt[3] 
)

Get grid in hiearchy which contains specified point or VNULL.

Author
Nathan Baker
Parameters
theePointer to Vmgrid object
ptPoint to check
Returns
Pointer to specified grid
VEXTERNC int Vmgrid_gradient ( Vmgrid thee,
double  pt[3],
double  grad[3] 
)

Get first derivative values at a point.

Author
Nathan Baker and Steve Bond
Parameters
theePointer to Vmgrid object
ptLocation to evaluate gradient
gradGradient
Returns
1 if successful, 0 if off grid

Definition at line 167 of file vmgrid.c.

VEXTERNC int Vmgrid_value ( Vmgrid thee,
double  x[3],
double *  value 
)

Get potential value (from mesh or approximation) at a point.

Author
Nathan Baker
Parameters
theeVmgrid obejct
xPoint at which to evaluate potential
valueValue of data at point x
Returns
1 if successful, 0 if off grid

Definition at line 107 of file vmgrid.c.