apbs_driver.h File Reference

Header file for the main iAPBS driver. More...

Go to the source code of this file.

Defines

#define NATOMS   150000
 Maximum number of atoms.

Functions

VEXTERNC int apbsdrv_ (int *nat, double x[NATOMS], double y[NATOMS], double z[NATOMS], double radius[NATOMS], double charge[NATOMS], double r_param[9], int i_param[25], double grid[3], int dime[3], int pdime[3], double glen[3], double center[3], double cglen[3], double fglen[3], double ccenter[3], double fcenter[3], double *ofrac, int *dbg, double ionq[MAXION], double ionc[MAXION], double ionr[MAXION], double esEnergy[NOSH_MAXCALC], double npEnergy[NOSH_MAXCALC], double apbsdx[NATOMS], double apbsdy[NATOMS], double apbsdz[NATOMS], double apbsqfx[NATOMS], double apbsqfy[NATOMS], double apbsqfz[NATOMS], double apbsibx[NATOMS], double apbsiby[NATOMS], double apbsibz[NATOMS], double apbsnpx[NATOMS], double apbsnpy[NATOMS], double apbsnpz[NATOMS], double apbsdbx[NATOMS], double apbsdby[NATOMS], double apbsdbz[NATOMS])
 Wrapper iAPBS function.
VEXTERNC int iforceMG (Vmem *mem, NOsh *nosh, PBEparm *pbeparm, MGparm *mgparm, Vpmg *pmg, int *nforce, AtomForce **atomForce, Valist *alist[NOSH_MAXMOL], int debug)
 Calculate forces from MG solution.
double getElecEnergy (Vcom *com, NOsh *nosh, double totEnergy[NOSH_MAXCALC], int iprint)
 Combine and pretty-print energy data.
char * setupString (double r_param[9], int i_param[25], double grid[3], int dime[3], double ionq[MAXION], double ionc[MAXION], double ionr[MAXION], double glen[3], double center[3], double cglen[3], double fglen[3], double ccenter[3], double fcenter[3], double *ofrac, int pdime[3], int debug)
 Creates APBS input string.

Detailed Description

Header file for the main iAPBS driver.

Author:
Robert Konecny
Version:
Id
apbs_driver.h 389 2010-03-29 20:18:15Z rok

Function Documentation

VEXTERNC int apbsdrv_ ( int *  nat,
double  x[NATOMS],
double  y[NATOMS],
double  z[NATOMS],
double  radius[NATOMS],
double  charge[NATOMS],
double  r_param[9],
int  i_param[25],
double  grid[3],
int  dime[3],
int  pdime[3],
double  glen[3],
double  center[3],
double  cglen[3],
double  fglen[3],
double  ccenter[3],
double  fcenter[3],
double *  ofrac,
int *  dbg,
double  ionq[MAXION],
double  ionc[MAXION],
double  ionr[MAXION],
double  esEnergy[NOSH_MAXCALC],
double  npEnergy[NOSH_MAXCALC],
double  apbsdx[NATOMS],
double  apbsdy[NATOMS],
double  apbsdz[NATOMS],
double  apbsqfx[NATOMS],
double  apbsqfy[NATOMS],
double  apbsqfz[NATOMS],
double  apbsibx[NATOMS],
double  apbsiby[NATOMS],
double  apbsibz[NATOMS],
double  apbsnpx[NATOMS],
double  apbsnpy[NATOMS],
double  apbsnpz[NATOMS],
double  apbsdbx[NATOMS],
double  apbsdby[NATOMS],
double  apbsdbz[NATOMS] 
)

Wrapper iAPBS function.

Author:
Robert Konecny
Parameters:
nat Number of atoms
x Atomic coordinate (x)
y Atomic coordinate (y)
z Atomic coordinate (z)
radius Atomic radii
charge Atomic charges
r_param Input APBS parameters (real values)
i_param Input APBS parameters (integer values)
grid Grid spacing
dime Grid dimensions
pdime Grid of processors to be used in calculation
glen Grid side lengths
center Grid center
cglen Coarse grid side lengths
fglen Fine grid side lengths
ccenter Coarse grid center
fcenter Fine grid center
ofrac Overlap fraction between procs
dbg Debug verbosity flag
ionq Mobile ion charge
ionc Mobile ion concentration
ionr Mobile ion radius
esEnergy Electrostatic energy
npEnergy Non-polar energy
apbsdx Total electrostatic force per atom (x coordinate)
apbsdy Total electrostatic force per atom (y coordinate)
apbsdz Total electrostatic force per atom (z coordinate)
apbsqfx Fixed charge force (x)
apbsqfy Fixed charge force (y)
apbsqfz Fixed charge force (z)
apbsibx Ionic boundary force (x)
apbsiby Ionic boundary force (y)
apbsibz Ionic boundary force (z)
apbsnpx Non-polar force (x)
apbsnpy Non-polar force (y)
apbsnpz Non-polar force (z)
apbsdbx Dielectric boundary force (x)
apbsdby Dielectric boundary force (y)
apbsdbz Dielectric boundary force (z)
Returns:
1 if successful, 0 otherwise
double getElecEnergy ( Vcom *  com,
NOsh *  nosh,
double  totEnergy[NOSH_MAXCALC],
int  iprint 
)

Combine and pretty-print energy data.

Author:
David Gohara
Returns:
1 if successful, 0 otherwise
Note:
Collect Elect Energy
Author:
Robert Konecny
Parameters:
nosh Communications object
totEnergy Parameters from input file
iprint Array of energies from different calculations Index of energy statement to print

Referenced by apbsdrv_().

VEXTERNC int iforceMG ( Vmem *  mem,
NOsh *  nosh,
PBEparm *  pbeparm,
MGparm *  mgparm,
Vpmg *  pmg,
int *  nforce,
AtomForce **  atomForce,
Valist *  alist[NOSH_MAXMOL],
int  debug 
)

Calculate forces from MG solution.

Author:
Robert Konecny (based on forceMG)
Parameters:
mem Memory management object
nosh Parameters from input file
pbeparm Generic PBE parameters
mgparm MG-specific parmaeters
pmg MG object
nforce 0 => no forces, 1 => net forces, >1 => number of forces (1 per atom)
atomForce Pointer to array of force objects
alist List of atom lists
debug verbosity flag
Returns:
1 if successful, 0 otherwise
char* setupString ( double  r_param[9],
int  i_param[25],
double  grid[3],
int  dime[3],
double  ionq[MAXION],
double  ionc[MAXION],
double  ionr[MAXION],
double  glen[3],
double  center[3],
double  cglen[3],
double  fglen[3],
double  ccenter[3],
double  fcenter[3],
double *  ofrac,
int  pdime[3],
int  debug 
)

Creates APBS input string.

Author:
Robert Konecny
Parameters:
r_param Input APBS parameters (real values)
i_param Input APBS parameters (integer values)
grid Grid spacing
dime Grid dimensions
ionq Mobile ion charge
ionc Mobile ion concentration
ionr Mobile ion radius
glen Grid side lengths
center Grid center
cglen Coarse grid side lengths
fglen Fine grid side lengths
ccenter Coarse grid center
fcenter Fine grid center
ofrac Overlap fraction between procs
pdime Grid of processors to be used in calculation
debug Debug verbosity level.
Returns:
the input string
Author:
Robert Konecny

References MAX_BUF_SIZE.

Referenced by apbsdrv_().

Generated on Fri Feb 10 10:54:53 2012 for iAPBS by  doxygen 1.6.3