APBS 3.0.0
Loading...
Searching...
No Matches
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
84struct sVmgrid {
85
86 int ngrids;
92};
93
98typedef struct sVmgrid Vmgrid;
99
105VEXTERNC Vmgrid* Vmgrid_ctor();
106
113VEXTERNC int Vmgrid_ctor2(Vmgrid *thee);
114
123VEXTERNC int Vmgrid_value(Vmgrid *thee, double x[3], double *value);
124
130VEXTERNC void Vmgrid_dtor(Vmgrid **thee);
131
137VEXTERNC void Vmgrid_dtor2(Vmgrid *thee);
138
151VEXTERNC int Vmgrid_addGrid(Vmgrid *thee, Vgrid *grid);
152
153
167VEXTERNC int Vmgrid_curvature(Vmgrid *thee, double pt[3], int cflag,
168 double *curv);
169
178VEXTERNC int Vmgrid_gradient(Vmgrid *thee, double pt[3], double grad[3] );
179
187VEXTERNC Vgrid* Vmgrid_getGridByNum(Vmgrid *thee, int num);
188
196VEXTERNC Vgrid* Vmgrid_getGridByPoint(Vmgrid *thee, double pt[3]);
197
198#endif
199
VEXTERNC int Vmgrid_addGrid(Vmgrid *thee, Vgrid *grid)
Add a grid to the hierarchy.
Definition vmgrid.c:195
VEXTERNC void Vmgrid_dtor2(Vmgrid *thee)
FORTRAN stub object destructor.
Definition vmgrid.c:101
VEXTERNC int Vmgrid_curvature(Vmgrid *thee, double pt[3], int cflag, double *curv)
Get second derivative values at a point.
Definition vmgrid.c:138
#define VMGRIDMAX
The maximum number of levels in the grid hiearchy.
Definition vmgrid.h:76
VEXTERNC int Vmgrid_gradient(Vmgrid *thee, double pt[3], double grad[3])
Get first derivative values at a point.
Definition vmgrid.c:167
VEXTERNC Vmgrid * Vmgrid_ctor()
Construct Vmgrid object.
Definition vmgrid.c:57
VEXTERNC Vgrid * Vmgrid_getGridByNum(Vmgrid *thee, int num)
Get specific grid in hiearchy.
VEXTERNC int Vmgrid_ctor2(Vmgrid *thee)
Initialize Vmgrid object.
Definition vmgrid.c:72
VEXTERNC void Vmgrid_dtor(Vmgrid **thee)
Object destructor.
Definition vmgrid.c:88
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 Vgrid * Vmgrid_getGridByPoint(Vmgrid *thee, double pt[3])
Get grid in hiearchy which contains specified point or VNULL.
Electrostatic potential oracle for Cartesian mesh data.
Definition vgrid.h:81
Multiresoltion oracle for Cartesian mesh data.
Definition vmgrid.h:84
Vgrid * grids[VMGRIDMAX]
Definition vmgrid.h:87
int ngrids
Definition vmgrid.h:86
Potential oracle for Cartesian mesh data.
Contains generic macro definitions for APBS.