Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

vgreen.h

Go to the documentation of this file.
00001 
00075 #ifndef _VGREEN_H_
00076 #define _VGREEN_H_
00077 
00078 /* Generic headers */
00079 #include "maloc/maloc.h"
00080 #include "apbs/vhal.h"
00081 
00082 /* Specific headers */
00083 #include "apbs/vunit.h"
00084 #include "apbs/vatom.h"
00085 #include "apbs/valist.h"
00086 
00087 
00093 struct sVgreen { 
00094 
00095   Valist *alist;  
00096   Vmem *vmem;  
00097   double *xp;  
00099   double *yp;  
00101   double *zp;  
00103   double *qp;  
00105   int np;  
00106 };
00107 
00112 typedef struct sVgreen Vgreen;
00113 
00114 /* ///////////////////////////////////////////////////////////////////////////
00115 // Class Vgreen: Inlineable methods (vgreen.c)
00117 
00118 #if !defined(VINLINE_VGREEN)
00119 
00127     Valist* Vgreen_getValist(Vgreen *thee);
00128 
00136     unsigned long int Vgreen_memChk(Vgreen *thee);
00137 
00138 #else /* if defined(VINLINE_VGREEN) */
00139 #   define Vgreen_getValist(thee) ((thee)->alist)
00140 #   define Vgreen_memChk(thee) (Vmem_bytes((thee)->vmem))
00141 #endif /* if !defined(VINLINE_VGREEN) */
00142 
00143 /* ///////////////////////////////////////////////////////////////////////////
00144 // Class Vgreen: Non-Inlineable methods (vgreen.c)
00146 
00153 Vgreen* Vgreen_ctor(Valist *alist);
00154 
00162 int Vgreen_ctor2(Vgreen *thee, Valist *alist);
00163 
00169 void Vgreen_dtor(Vgreen **thee);
00170 
00176 void Vgreen_dtor2(Vgreen *thee);
00177 
00202 int Vgreen_helmholtz(Vgreen *thee, int npos, double *x, double *y,
00203   double *z, double *val, double kappa);
00204 
00232 int Vgreen_helmholtzD(Vgreen *thee, int npos, double *x, double *y, 
00233   double *z, double *gradx, double *grady, double *gradz, double kappa);
00234 
00255 int Vgreen_coulomb_direct(Vgreen *thee, int npos, double *x, 
00256         double *y, double *z, double *val);
00257 
00278 int Vgreen_coulomb(Vgreen *thee, int npos, double *x, double *y,
00279   double *z, double *val);
00280 
00304 int Vgreen_coulombD_direct(Vgreen *thee, int npos, double *x, 
00305         double *y, double *z, double *pot, double *gradx, double *grady, double
00306         *gradz);
00307 
00332 int Vgreen_coulombD(Vgreen *thee, int npos, double *x, double *y,
00333   double *z, double *pot, double *gradx, double *grady, double *gradz);
00334 
00335 #endif /* ifndef _VGREEN_H_ */
00336 

Generated on Thu Jul 12 11:49:46 2007 for APBS by doxygen 1.3.4