00001
00060 #ifndef _VOPOT_H_
00061 #define _VOPOT_H_
00062
00063
00064 #include "maloc/maloc.h"
00065 #include "apbs/vhal.h"
00066
00067
00068 #include "apbs/vatom.h"
00069 #include "apbs/valist.h"
00070 #include "apbs/vmgrid.h"
00071 #include "apbs/vunit.h"
00072 #include "apbs/vpbe.h"
00073 #include "apbs/pbeparm.h"
00074
00080 struct sVopot {
00081
00082 Vmgrid *mgrid;
00084 Vpbe *pbe;
00085 Vbcfl bcfl;
00087 };
00088
00093 typedef struct sVopot Vopot;
00094
00105 Vopot* Vopot_ctor(Vmgrid *mgrid, Vpbe *pbe, Vbcfl bcfl);
00106
00118 int Vopot_ctor2(Vopot *thee, Vmgrid *mgrid, Vpbe *pbe, Vbcfl bcfl);
00119
00128 int Vopot_pot(Vopot *thee, double x[3], double *pot);
00129
00135 void Vopot_dtor(Vopot **thee);
00136
00142 void Vopot_dtor2(Vopot *thee);
00143
00157 int Vopot_curvature(Vopot *thee, double pt[3], int cflag, double
00158 *curv);
00159
00168 int Vopot_gradient(Vopot *thee, double pt[3], double grad[3] );
00169
00170
00171 #endif
00172