APBS  1.4.1
vmgrid.h
Go to the documentation of this file.
1 
62 #ifndef _VMGRID_H_
63 #define _VMGRID_H_
64 
65 #include "apbscfg.h"
66 
67 #include "maloc/maloc.h"
68 
69 #include "generic/vhal.h"
70 #include "mg/vgrid.h"
71 
76 #define VMGRIDMAX 20
77 
78 
84 struct sVmgrid {
85 
86  int ngrids;
92 };
93 
98 typedef struct sVmgrid Vmgrid;
99 
105 VEXTERNC Vmgrid* Vmgrid_ctor();
106 
113 VEXTERNC int Vmgrid_ctor2(Vmgrid *thee);
114 
123 VEXTERNC int Vmgrid_value(Vmgrid *thee, double x[3], double *value);
124 
130 VEXTERNC void Vmgrid_dtor(Vmgrid **thee);
131 
137 VEXTERNC void Vmgrid_dtor2(Vmgrid *thee);
138 
151 VEXTERNC int Vmgrid_addGrid(Vmgrid *thee, Vgrid *grid);
152 
153 
167 VEXTERNC int Vmgrid_curvature(Vmgrid *thee, double pt[3], int cflag,
168  double *curv);
169 
178 VEXTERNC int Vmgrid_gradient(Vmgrid *thee, double pt[3], double grad[3] );
179 
187 VEXTERNC Vgrid* Vmgrid_getGridByNum(Vmgrid *thee, int num);
188 
196 VEXTERNC Vgrid* Vmgrid_getGridByPoint(Vmgrid *thee, double pt[3]);
197 
198 #endif
199 
VEXTERNC Vmgrid * Vmgrid_ctor()
Construct Vmgrid object.
Definition: vmgrid.c:57
Electrostatic potential oracle for Cartesian mesh data.
Definition: vgrid.h:81
Vgrid * grids[VMGRIDMAX]
Definition: vmgrid.h:87
VEXTERNC Vgrid * Vmgrid_getGridByPoint(Vmgrid *thee, double pt[3])
Get grid in hiearchy which contains specified point or VNULL.
VEXTERNC int Vmgrid_ctor2(Vmgrid *thee)
Initialize Vmgrid object.
Definition: vmgrid.c:72
Multiresoltion oracle for Cartesian mesh data.
Definition: vmgrid.h:84
Potential oracle for Cartesian mesh data.
VEXTERNC void Vmgrid_dtor2(Vmgrid *thee)
FORTRAN stub object destructor.
Definition: vmgrid.c:101
VEXTERNC int Vmgrid_addGrid(Vmgrid *thee, Vgrid *grid)
Add a grid to the hierarchy.
Definition: vmgrid.c:195
int ngrids
Definition: vmgrid.h:86
#define VMGRIDMAX
The maximum number of levels in the grid hiearchy.
Definition: vmgrid.h:76
VEXTERNC Vgrid * Vmgrid_getGridByNum(Vmgrid *thee, int num)
Get specific grid in hiearchy.
Contains generic macro definitions for APBS.
VEXTERNC int Vmgrid_value(Vmgrid *thee, double x[3], double *value)
Get potential value (from mesh or approximation) at a point.
Definition: vmgrid.c:107
VEXTERNC void Vmgrid_dtor(Vmgrid **thee)
Object destructor.
Definition: vmgrid.c:88
VEXTERNC int Vmgrid_curvature(Vmgrid *thee, double pt[3], int cflag, double *curv)
Get second derivative values at a point.
Definition: vmgrid.c:138
VEXTERNC int Vmgrid_gradient(Vmgrid *thee, double pt[3], double grad[3])
Get first derivative values at a point.
Definition: vmgrid.c:167