Data Structures | |
struct | AtomForce |
Structure to hold atomic forces. More... | |
Files | |
file | routines.h |
Header file for front end auxiliary routines. | |
Defines | |
#define | APBSRC 13 |
Return code for APBS during failure. | |
Typedefs | |
typedef struct AtomForce | AtomForce |
Define AtomForce type. | |
Functions | |
int | main (int argc, char **argv) |
The main APBS function. | |
VEXTERNC Vparam * | loadParameter (NOsh *nosh) |
Loads and returns parameter object. | |
VEXTERNC int | loadMolecules (NOsh *nosh, Vparam *param, Valist *alist[NOSH_MAXMOL]) |
Load the molecules given in NOsh into atom lists. | |
VEXTERNC void | killMolecules (NOsh *nosh, Valist *alist[NOSH_MAXMOL]) |
Destroy the loaded molecules. | |
VEXTERNC int | loadDielMaps (NOsh *nosh, Vgrid *dielXMap[NOSH_MAXMOL], Vgrid *dielYMap[NOSH_MAXMOL], Vgrid *dielZMap[NOSH_MAXMOL]) |
Load the dielectric maps given in NOsh into grid objects. | |
VEXTERNC void | killDielMaps (NOsh *nosh, Vgrid *dielXMap[NOSH_MAXMOL], Vgrid *dielYMap[NOSH_MAXMOL], Vgrid *dielZMap[NOSH_MAXMOL]) |
Destroy the loaded dielectric. | |
VEXTERNC int | loadKappaMaps (NOsh *nosh, Vgrid *kappa[NOSH_MAXMOL]) |
Load the kappa maps given in NOsh into grid objects. | |
VEXTERNC void | killKappaMaps (NOsh *nosh, Vgrid *kappa[NOSH_MAXMOL]) |
Destroy the loaded kappa maps. | |
VEXTERNC int | loadPotMaps (NOsh *nosh, Vgrid *pot[NOSH_MAXMOL]) |
Load the potential maps given in NOsh into grid objects. | |
VEXTERNC void | killPotMaps (NOsh *nosh, Vgrid *pot[NOSH_MAXMOL]) |
Destroy the loaded potential maps. | |
VEXTERNC int | loadChargeMaps (NOsh *nosh, Vgrid *charge[NOSH_MAXMOL]) |
Load the charge maps given in NOsh into grid objects. | |
VEXTERNC void | killChargeMaps (NOsh *nosh, Vgrid *charge[NOSH_MAXMOL]) |
Destroy the loaded charge maps. | |
VEXTERNC void | printPBEPARM (PBEparm *pbeparm) |
Print out generic PBE params loaded from input. | |
VEXTERNC void | printMGPARM (MGparm *mgparm, double realCenter[3]) |
Print out MG-specific params loaded from input. | |
VEXTERNC int | initMG (int icalc, NOsh *nosh, MGparm *mgparm, PBEparm *pbeparm, double realCenter[3], Vpbe *pbe[NOSH_MAXCALC], Valist *alist[NOSH_MAXMOL], Vgrid *dielXMap[NOSH_MAXMOL], Vgrid *dielYMap[NOSH_MAXMOL], Vgrid *dielZMap[NOSH_MAXMOL], Vgrid *kappaMap[NOSH_MAXMOL], Vgrid *chargeMap[NOSH_MAXMOL], Vpmgp *pmgp[NOSH_MAXCALC], Vpmg *pmg[NOSH_MAXCALC], Vgrid *potMap[NOSH_MAXMOL]) |
Initialize an MG calculation. | |
VEXTERNC void | killMG (NOsh *nosh, Vpbe *pbe[NOSH_MAXCALC], Vpmgp *pmgp[NOSH_MAXCALC], Vpmg *pmg[NOSH_MAXCALC]) |
Kill structures initialized during an MG calculation. | |
VEXTERNC int | solveMG (NOsh *nosh, Vpmg *pmg, MGparm_CalcType type) |
Solve the PBE with MG. | |
VEXTERNC int | setPartMG (NOsh *nosh, MGparm *mgparm, Vpmg *pmg) |
Set MG partitions for calculating observables and performing I/O. | |
VEXTERNC int | energyMG (NOsh *nosh, int icalc, Vpmg *pmg, int *nenergy, double *totEnergy, double *qfEnergy, double *qmEnergy, double *dielEnergy) |
Calculate electrostatic energies from MG solution. | |
VEXTERNC void | killEnergy () |
Kill arrays allocated for energies. | |
VEXTERNC int | forceMG (Vmem *mem, NOsh *nosh, PBEparm *pbeparm, MGparm *mgparm, Vpmg *pmg, int *nforce, AtomForce **atomForce, Valist *alist[NOSH_MAXMOL]) |
Calculate forces from MG solution. | |
VEXTERNC void | killForce (Vmem *mem, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC]) |
Free memory from MG force calculation. | |
VEXTERNC void | storeAtomEnergy (Vpmg *pmg, int icalc, double **atomEnergy, int *nenergy) |
Store energy in arrays for future use. | |
VEXTERNC int | writedataFlat (NOsh *nosh, Vcom *com, const char *fname, double totEnergy[NOSH_MAXCALC], double qfEnergy[NOSH_MAXCALC], double qmEnergy[NOSH_MAXCALC], double dielEnergy[NOSH_MAXCALC], int nenergy[NOSH_MAXCALC], double *atomEnergy[NOSH_MAXCALC], int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC]) |
Write out information to a flat file. | |
VEXTERNC int | writedataXML (NOsh *nosh, Vcom *com, const char *fname, double totEnergy[NOSH_MAXCALC], double qfEnergy[NOSH_MAXCALC], double qmEnergy[NOSH_MAXCALC], double dielEnergy[NOSH_MAXCALC], int nenergy[NOSH_MAXCALC], double *atomEnergy[NOSH_MAXCALC], int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC]) |
Write out information to an XML file. | |
VEXTERNC int | writedataMG (int rank, NOsh *nosh, PBEparm *pbeparm, Vpmg *pmg) |
Write out observables from MG calculation to file. | |
VEXTERNC int | writematMG (int rank, NOsh *nosh, PBEparm *pbeparm, Vpmg *pmg) |
Write out operator matrix from MG calculation to file. | |
VEXTERNC double | returnEnergy (Vcom *com, NOsh *nosh, double totEnergy[NOSH_MAXCALC], int iprint) |
Access net local energy. | |
VEXTERNC int | printEnergy (Vcom *com, NOsh *nosh, double totEnergy[NOSH_MAXCALC], int iprint) |
Combine and pretty-print energy data (deprecated...see printElecEnergy) | |
VEXTERNC int | printElecEnergy (Vcom *com, NOsh *nosh, double totEnergy[NOSH_MAXCALC], int iprint) |
Combine and pretty-print energy data. | |
VEXTERNC int | printApolEnergy (NOsh *nosh, int iprint) |
Combine and pretty-print energy data. | |
VEXTERNC int | printForce (Vcom *com, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC], int i) |
Combine and pretty-print force data (deprecated...see printElecForce) | |
VEXTERNC int | printElecForce (Vcom *com, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC], int i) |
Combine and pretty-print force data. | |
VEXTERNC int | printApolForce (Vcom *com, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC], int i) |
Combine and pretty-print force data. | |
VEXTERNC void | startVio () |
Wrapper to start MALOC Vio layer. | |
VEXTERNC int | energyAPOL (APOLparm *apolparm, double sasa, double sav, double atomsasa[], double atomwcaEnergy[], int numatoms) |
Calculate non-polar energies. | |
VEXTERNC int | forceAPOL (Vacc *acc, Vmem *mem, APOLparm *apolparm, int *nforce, AtomForce **atomForce, Valist *alist, Vclist *clist) |
Calculate non-polar forces. | |
VEXTERNC int | initAPOL (NOsh *nosh, Vmem *mem, Vparam *param, APOLparm *apolparm, int *nforce, AtomForce **atomForce, Valist *alist) |
Upperlevel routine to the non-polar energy and force routines. | |
VEXTERNC void | printFEPARM (int icalc, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Print out FE-specific params loaded from input. | |
VEXTERNC int | energyFE (NOsh *nosh, int icalc, Vfetk *fetk[NOSH_MAXCALC], int *nenergy, double *totEnergy, double *qfEnergy, double *qmEnergy, double *dielEnergy) |
Calculate electrostatic energies from FE solution. | |
VEXTERNC Vrc_Codes | initFE (int icalc, NOsh *nosh, FEMparm *feparm, PBEparm *pbeparm, Vpbe *pbe[NOSH_MAXCALC], Valist *alist[NOSH_MAXMOL], Vfetk *fetk[NOSH_MAXCALC], Gem *gm[NOSH_MAXCALC]) |
Initialize FE solver objects. | |
VEXTERNC void | killFE (NOsh *nosh, Vpbe *pbe[NOSH_MAXCALC], Vfetk *fetk[NOSH_MAXCALC], Gem *gem[NOSH_MAXMOL]) |
Kill structures initialized during an FE calculation. | |
VEXTERNC int | preRefineFE (int i, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Pre-refine mesh before solve. | |
VEXTERNC int | partFE (int i, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Partition mesh (if applicable) | |
VEXTERNC int | solveFE (int i, NOsh *nosh, PBEparm *pbeparm, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Solve-estimate-refine. | |
VEXTERNC int | postRefineFE (int icalc, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Estimate error, mark mesh, and refine mesh after solve. | |
VEXTERNC int | writedataFE (int rank, NOsh *nosh, PBEparm *pbeparm, Vfetk *fetk) |
Write FEM data to files. | |
VEXTERNC Vrc_Codes | loadMeshes (NOsh *nosh, Gem *gm[NOSH_MAXMOL]) |
Load the meshes given in NOsh into geometry objects. | |
VEXTERNC void | killMeshes (NOsh *nosh, Gem *alist[NOSH_MAXMOL]) |
Destroy the loaded meshes. |
VEXTERNC int energyAPOL | ( | APOLparm * | apolparm, |
double | sasa, | ||
double | sav, | ||
double | atomsasa[], | ||
double | atomwcaEnergy[], | ||
int | numatoms | ||
) |
Calculate non-polar energies.
sasa | APOLparm object |
sav | Solvent accessible surface area |
atomsasa | Solvent accessible volume |
atomwcaEnergy | Array for SASA per atom * |
numatoms | Array for WCA energy per atom * Number of atoms (or size of the above arrays) * |
Definition at line 4146 of file routines.c.
VEXTERNC int energyFE | ( | NOsh * | nosh, |
int | icalc, | ||
Vfetk * | fetk[NOSH_MAXCALC], | ||
int * | nenergy, | ||
double * | totEnergy, | ||
double * | qfEnergy, | ||
double * | qmEnergy, | ||
double * | dielEnergy | ||
) |
Calculate electrostatic energies from FE solution.
nosh | Object with parsed input file parameters |
icalc | Index of calculation |
fetk | FE object array |
nenergy | Set to number of entries in energy arrays |
totEnergy | Set to total energy (in kT) |
qfEnergy | Set to charge-potential energy (in kT) |
qmEnergy | Set to mobile ion energy (in kT) |
dielEnergy | Set to polarization energy (in kT) |
Definition at line 3710 of file routines.c.
VEXTERNC int energyMG | ( | NOsh * | nosh, |
int | icalc, | ||
Vpmg * | pmg, | ||
int * | nenergy, | ||
double * | totEnergy, | ||
double * | qfEnergy, | ||
double * | qmEnergy, | ||
double * | dielEnergy | ||
) |
Calculate electrostatic energies from MG solution.
nosh | Object with parsed input file parameters |
icalc | Index of calculation |
pmg | MG object |
nenergy | Set to number of entries in energy arrays |
totEnergy | Set to total energy (in kT) |
qfEnergy | Set to charge-potential energy (in kT) |
qmEnergy | Set to mobile ion energy (in kT) |
dielEnergy | Set to polarization energy (in kT) |
Definition at line 1263 of file routines.c.
VEXTERNC int forceAPOL | ( | Vacc * | acc, |
Vmem * | mem, | ||
APOLparm * | apolparm, | ||
int * | nforce, | ||
AtomForce ** | atomForce, | ||
Valist * | alist, | ||
Vclist * | clist | ||
) |
Calculate non-polar forces.
acc | Accessiblity object |
mem | Memory manager |
apolparm | Apolar calculation parameter object |
nforce | Number of atomic forces to calculate statements for |
atomForce | Object for storing atom forces |
alist | Atom list |
clist | Cell list for accessibility object |
Definition at line 4195 of file routines.c.
VEXTERNC int forceMG | ( | Vmem * | mem, |
NOsh * | nosh, | ||
PBEparm * | pbeparm, | ||
MGparm * | mgparm, | ||
Vpmg * | pmg, | ||
int * | nforce, | ||
AtomForce ** | atomForce, | ||
Valist * | alist[NOSH_MAXMOL] | ||
) |
Calculate forces from MG solution.
mem | Memory management object |
nosh | Parameters from input file |
pbeparm | Generic PBE parameters |
mgparm | MG-specific parmaeters |
pmg | MG object |
nforce | Set to number of forces in arrays |
atomForce | List of atom forces |
alist | List of atom lists |
Definition at line 1327 of file routines.c.
VEXTERNC int initAPOL | ( | NOsh * | nosh, |
Vmem * | mem, | ||
Vparam * | param, | ||
APOLparm * | apolparm, | ||
int * | nforce, | ||
AtomForce ** | atomForce, | ||
Valist * | alist | ||
) |
Upperlevel routine to the non-polar energy and force routines.
nosh | Input parameter object |
mem | Memory manager |
param | Atom parameters |
apolparm | Apolar calculation parameters |
nforce | Number of force calculations |
atomForce | Atom force storage object |
alist | Atom list |
Definition at line 3971 of file routines.c.
VEXTERNC Vrc_Codes initFE | ( | int | icalc, |
NOsh * | nosh, | ||
FEMparm * | feparm, | ||
PBEparm * | pbeparm, | ||
Vpbe * | pbe[NOSH_MAXCALC], | ||
Valist * | alist[NOSH_MAXMOL], | ||
Vfetk * | fetk[NOSH_MAXCALC], | ||
Gem * | gm[NOSH_MAXCALC] | ||
) |
Initialize FE solver objects.
nosh | Index in pb, fetk to initialize (calculation index) |
feparm | Master parmaeter object |
pbeparm | FE-specific parameters |
pbe | Generic PBE parameters |
alist | Array of PBE objects |
fetk | Array of atom lists |
gm | Array of finite element objects Array of geometry objects |
VEXTERNC int initMG | ( | int | icalc, |
NOsh * | nosh, | ||
MGparm * | mgparm, | ||
PBEparm * | pbeparm, | ||
double | realCenter[3], | ||
Vpbe * | pbe[NOSH_MAXCALC], | ||
Valist * | alist[NOSH_MAXMOL], | ||
Vgrid * | dielXMap[NOSH_MAXMOL], | ||
Vgrid * | dielYMap[NOSH_MAXMOL], | ||
Vgrid * | dielZMap[NOSH_MAXMOL], | ||
Vgrid * | kappaMap[NOSH_MAXMOL], | ||
Vgrid * | chargeMap[NOSH_MAXMOL], | ||
Vpmgp * | pmgp[NOSH_MAXCALC], | ||
Vpmg * | pmg[NOSH_MAXCALC], | ||
Vgrid * | potMap[NOSH_MAXMOL] | ||
) |
Initialize an MG calculation.
icalc | Index of calculation in pmg/pmpg arrays |
nosh | Object with parsed input file parameters |
mgparm | Object with MG-specific parameters |
pbeparm | Object with generic PBE parameters |
realCenter | The actual center of the current mesh |
pbe | Array of Vpbe objects (one for each calc) |
alist | Array of atom lists |
dielXMap | Array of x-shifted dielectric maps |
dielYMap | Array of y-shifted dielectric maps |
dielZMap | Array of z-shifted dielectric maps |
kappaMap | Array of kappa maps |
chargeMap | Array of charge maps |
pmgp | Array of MG parameter objects (one for each calc) |
pmg | Array of MG objects (one for each calc) |
potMap | Array of potential maps |
Definition at line 945 of file routines.c.
Destroy the loaded charge maps.
nosh | NOsh object with input file information |
charge | List of charge maps |
Definition at line 725 of file routines.c.
VEXTERNC void killDielMaps | ( | NOsh * | nosh, |
Vgrid * | dielXMap[NOSH_MAXMOL], | ||
Vgrid * | dielYMap[NOSH_MAXMOL], | ||
Vgrid * | dielZMap[NOSH_MAXMOL] | ||
) |
Destroy the loaded dielectric.
nosh | NOsh object with input file information |
dielXMap | List of x-shifted dielectric maps |
dielYMap | List of y-shifted dielectric maps |
dielZMap | List of x-shifted dielectric maps |
Definition at line 489 of file routines.c.
VEXTERNC void killEnergy | ( | ) |
Kill arrays allocated for energies.
Definition at line 1456 of file routines.c.
VEXTERNC void killFE | ( | NOsh * | nosh, |
Vpbe * | pbe[NOSH_MAXCALC], | ||
Vfetk * | fetk[NOSH_MAXCALC], | ||
Gem * | gem[NOSH_MAXMOL] | ||
) |
Kill structures initialized during an FE calculation.
pbe | Object with parsed input file parameters |
fetk | Array of Vpbe objects for each calc |
gem | Array of FEtk objects for each calc Array of geometry manager objects for each calc |
Definition at line 3283 of file routines.c.
VEXTERNC void killForce | ( | Vmem * | mem, |
NOsh * | nosh, | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC] | ||
) |
Free memory from MG force calculation.
mem | Memory management object |
nosh | Parameters from input file |
nforce | Number of forces in arrays |
atomForce | List of atom forces |
Definition at line 1464 of file routines.c.
Destroy the loaded kappa maps.
nosh | NOsh object with input file information |
kappa | List of kappa maps |
Definition at line 564 of file routines.c.
VEXTERNC void killMeshes | ( | NOsh * | nosh, |
Gem * | alist[NOSH_MAXMOL] | ||
) |
Destroy the loaded meshes.
nosh | NOsh object with input file information |
alist | Populated list of geometry objects to be destroyed |
VEXTERNC void killMG | ( | NOsh * | nosh, |
Vpbe * | pbe[NOSH_MAXCALC], | ||
Vpmgp * | pmgp[NOSH_MAXCALC], | ||
Vpmg * | pmg[NOSH_MAXCALC] | ||
) |
Kill structures initialized during an MG calculation.
pbe | Object with parsed input file parameters |
pmgp | Array of Vpbe objects for each calc |
pmg | Array of MG parameter objects for each calc Array of MG objects for each calc |
Definition at line 1161 of file routines.c.
Destroy the loaded molecules.
nosh | NOsh object with input file information |
alist | List of atom list objects |
Definition at line 248 of file routines.c.
Destroy the loaded potential maps.
nosh | NOsh object with input file information |
pot | List of potential maps |
Definition at line 640 of file routines.c.
Load the charge maps given in NOsh into grid objects.
nosh | NOsh object with input file information |
charge | List of kappa maps |
Definition at line 654 of file routines.c.
VEXTERNC int loadDielMaps | ( | NOsh * | nosh, |
Vgrid * | dielXMap[NOSH_MAXMOL], | ||
Vgrid * | dielYMap[NOSH_MAXMOL], | ||
Vgrid * | dielZMap[NOSH_MAXMOL] | ||
) |
Load the dielectric maps given in NOsh into grid objects.
nosh | NOsh object with input file information |
dielXMap | List of x-shifted dielectric maps |
dielYMap | List of y-shifted dielectric maps |
dielZMap | List of x-shifted dielectric maps |
Definition at line 260 of file routines.c.
Load the kappa maps given in NOsh into grid objects.
nosh | NOsh object with input file information |
kappa | List of kappa maps |
Definition at line 511 of file routines.c.
VEXTERNC Vrc_Codes loadMeshes | ( | NOsh * | nosh, |
Gem * | gm[NOSH_MAXMOL] | ||
) |
Load the meshes given in NOsh into geometry objects.
nosh | NOsh object with input file information |
gm | List of geometry objects (to be populated) |
Load the molecules given in NOsh into atom lists.
nosh | NOsh object with input file information |
param | NULL (if PQR files only) or pointer to parameter object |
alist | List of atom list objects (to be populated) |
Definition at line 112 of file routines.c.
Loads and returns parameter object.
nosh | Pointer to NOsh object with input file information |
Definition at line 77 of file routines.c.
Load the potential maps given in NOsh into grid objects.
nosh | NOsh object with input file information |
pot | List of potential maps |
Definition at line 578 of file routines.c.
int main | ( | int | argc, |
char ** | argv | ||
) |
Partition mesh (if applicable)
i | Calculation index |
nosh | Master parameter object |
feparm | FE-specific parameters |
fetk | Array of FE solver objects |
Definition at line 3599 of file routines.c.
Estimate error, mark mesh, and refine mesh after solve.
icalc | Calculation index |
nosh | Master parameter object |
feparm | FE-specific parameters |
fetk | Array of FE solver objects |
Definition at line 3752 of file routines.c.
Pre-refine mesh before solve.
i | Calculation index |
nosh | Master parameter object |
feparm | FE-specific parameters |
fetk | Array of FE solver objects |
Definition at line 3606 of file routines.c.
VEXTERNC int printApolEnergy | ( | NOsh * | nosh, |
int | iprint | ||
) |
Combine and pretty-print energy data.
nosh | Parameters from input file |
iprint | Index of energy statement to print |
Definition at line 2555 of file routines.c.
VEXTERNC int printApolForce | ( | Vcom * | com, |
NOsh * | nosh, | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC], | ||
int | i | ||
) |
Combine and pretty-print force data.
nosh | Communications object |
nforce | Parameters from input file |
atomForce | Number of forces calculated |
i | Array of force structures Index of force statement to print |
Definition at line 3083 of file routines.c.
VEXTERNC int printElecEnergy | ( | Vcom * | com, |
NOsh * | nosh, | ||
double | totEnergy[NOSH_MAXCALC], | ||
int | iprint | ||
) |
Combine and pretty-print energy data.
nosh | Communications object |
totEnergy | Parameters from input file |
iprint | Array of energies from different calculations Index of energy statement to print |
Definition at line 2496 of file routines.c.
VEXTERNC int printElecForce | ( | Vcom * | com, |
NOsh * | nosh, | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC], | ||
int | i | ||
) |
Combine and pretty-print force data.
nosh | Communications object |
nforce | Parameters from input file |
atomForce | Number of forces calculated |
i | Array of force structures Index of force statement to print |
Definition at line 2850 of file routines.c.
Combine and pretty-print energy data (deprecated...see printElecEnergy)
nosh | Communications object |
totEnergy | Parameters from input file |
iprint | Array of energies from different calculations Index of energy statement to print |
Definition at line 2434 of file routines.c.
Print out FE-specific params loaded from input.
icalc | Calculation index |
nosh | Master parameter object |
feparm | FE-specific parameters |
fetk | Array of FE solver objects |
Definition at line 3466 of file routines.c.
VEXTERNC int printForce | ( | Vcom * | com, |
NOsh * | nosh, | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC], | ||
int | i | ||
) |
Combine and pretty-print force data (deprecated...see printElecForce)
nosh | Communications object |
nforce | Parameters from input file |
atomForce | Number of forces calculated |
i | Array of force structures Index of force statement to print |
Definition at line 2614 of file routines.c.
VEXTERNC void printMGPARM | ( | MGparm * | mgparm, |
double | realCenter[3] | ||
) |
Print out MG-specific params loaded from input.
realCenter | Center of mesh for actual calculation |
mgparm | MGparm object |
Definition at line 915 of file routines.c.
VEXTERNC void printPBEPARM | ( | PBEparm * | pbeparm ) |
Print out generic PBE params loaded from input.
pbeparm | PBEparm object |
Definition at line 741 of file routines.c.
VEXTERNC double returnEnergy | ( | Vcom * | com, |
NOsh * | nosh, | ||
double | totEnergy[NOSH_MAXCALC], | ||
int | iprint | ||
) |
Access net local energy.
com | Communications object |
nosh | Parameters from input file |
totEnergy | Array of energies from different calculations |
iprint | Index of energy statement to print |
Definition at line 2408 of file routines.c.
Set MG partitions for calculating observables and performing I/O.
nosh | Object with parsed input file parameters |
mgparm | MG parameters from input file |
pmg | MG object |
Definition at line 1221 of file routines.c.
VEXTERNC int solveFE | ( | int | i, |
NOsh * | nosh, | ||
PBEparm * | pbeparm, | ||
FEMparm * | feparm, | ||
Vfetk * | fetk[NOSH_MAXCALC] | ||
) |
Solve-estimate-refine.
i | Calculation index |
nosh | Master parameter object |
feparm | FE-specific parameters |
pbeparm | Generic PBE parameters |
fetk | Array of FE solver objects |
< AM_hPcg
< Coarse-grid solver; 0 = SLU, 1 = MG, 2 = CG, 3 = BCG, 4 = PCG, 5 = PBCG
< Primal problem
< Preconditioner; 0 = identity.
Definition at line 3660 of file routines.c.
VEXTERNC int solveMG | ( | NOsh * | nosh, |
Vpmg * | pmg, | ||
MGparm_CalcType | type | ||
) |
Solve the PBE with MG.
nosh | Object with parsed input file parameters |
pmg | MG objects for this calculation |
type | Type of MG calculation |
Definition at line 1187 of file routines.c.
VEXTERNC void startVio | ( | ) |
Wrapper to start MALOC Vio layer.
Definition at line 75 of file routines.c.
VEXTERNC void storeAtomEnergy | ( | Vpmg * | pmg, |
int | icalc, | ||
double ** | atomEnergy, | ||
int * | nenergy | ||
) |
Store energy in arrays for future use.
pmg | MG object |
icalc | Calculation number |
atomEnergy | Pointer to storage array of doubles |
nenergy | Stores number of atoms per calc |
Definition at line 1552 of file routines.c.
Write FEM data to files.
rank | Rank of processor (for parallel runs) |
nosh | NOsh object |
pbeparm | PBEparm object |
fetk | FEtk object (with solution) |
Definition at line 3807 of file routines.c.
VEXTERNC int writedataFlat | ( | NOsh * | nosh, |
Vcom * | com, | ||
const char * | fname, | ||
double | totEnergy[NOSH_MAXCALC], | ||
double | qfEnergy[NOSH_MAXCALC], | ||
double | qmEnergy[NOSH_MAXCALC], | ||
double | dielEnergy[NOSH_MAXCALC], | ||
int | nenergy[NOSH_MAXCALC], | ||
double * | atomEnergy[NOSH_MAXCALC], | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC] | ||
) |
Write out information to a flat file.
nosh | Parameters from input file |
com | The communications object |
fname | The target XML file name |
totEnergy | An array with per-calc total energies (in kT) |
qfEnergy | An array with per-calc charge-potential energies (in kT) |
qmEnergy | An array with per-calc mobile energies (in kT) |
dielEnergy | An array with per-calc polarization energies (in kT) |
nenergy | An array containing the number of atoms per-calc |
atomEnergy | An array containing per-atom energies (in KT) per calc |
nforce | An array containing the number of forces calculated per-calc |
atomForce | An array containing per-atom forces per calc |
Definition at line 1569 of file routines.c.
Write out observables from MG calculation to file.
rank | Processor rank (if parallel calculation) |
nosh | Parameters from input file |
pbeparm | Generic PBE parameters |
pmg | MG object |
Definition at line 2065 of file routines.c.
VEXTERNC int writedataXML | ( | NOsh * | nosh, |
Vcom * | com, | ||
const char * | fname, | ||
double | totEnergy[NOSH_MAXCALC], | ||
double | qfEnergy[NOSH_MAXCALC], | ||
double | qmEnergy[NOSH_MAXCALC], | ||
double | dielEnergy[NOSH_MAXCALC], | ||
int | nenergy[NOSH_MAXCALC], | ||
double * | atomEnergy[NOSH_MAXCALC], | ||
int | nforce[NOSH_MAXCALC], | ||
AtomForce * | atomForce[NOSH_MAXCALC] | ||
) |
Write out information to an XML file.
nosh | Parameters from input file |
com | The communications object |
fname | The target XML file name |
totEnergy | An array with per-calc total energies (in kT) |
qfEnergy | An array with per-calc charge-potential energies (in kT) |
qmEnergy | An array with per-calc mobile energies (in kT) |
dielEnergy | An array with per-calc polarization energies (in kT) |
nenergy | An array containing the number of atoms per-calc |
atomEnergy | An array containing per-atom energies (in KT) per calc |
nforce | An array containing the number of forces calculated per-calc |
atomForce | An array containing per-atom forces per calc |
Definition at line 1805 of file routines.c.
Write out operator matrix from MG calculation to file.
rank | Processor rank (if parallel calculation) |
nosh | Parameters from input file |
pbeparm | Generic PBE parameters |
pmg | MG object |
Definition at line 1481 of file routines.c.