#include "apbscfg.h"
#include "apbs/apbs.h"
#include "apbs/nosh.h"
#include "apbs/mgparm.h"
#include "apbs/pbeparm.h"
#include "apbs/femparm.h"
Include dependency graph for routines.h:
Go to the source code of this file.
Data Structures | |
struct | AtomForce |
Structure to hold atomic forces. More... | |
Defines | |
#define | APBSRC 13 |
Return code for APBS during failure. | |
#define | USEHB 1 |
Set this macro to 1 for hierarchical basis, 0 for normal solver. | |
Typedefs | |
typedef AtomForce | AtomForce |
Define AtomForce type. | |
Functions | |
int | loadMolecules (NOsh *nosh, Valist *alist[NOSH_MAXMOL]) |
Load the molecules given in NOsh into atom lists. | |
void | killMolecules (NOsh *nosh, Valist *alist[NOSH_MAXMOL]) |
Destroy the loaded molecules. | |
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. | |
void | killDielMaps (NOsh *nosh, Vgrid *dielXMap[NOSH_MAXMOL], Vgrid *dielYMap[NOSH_MAXMOL], Vgrid *dielZMap[NOSH_MAXMOL]) |
Destroy the loaded dielectric. | |
int | loadKappaMaps (NOsh *nosh, Vgrid *kappa[NOSH_MAXMOL]) |
Load the kappa maps given in NOsh into grid objects. | |
void | killKappaMaps (NOsh *nosh, Vgrid *kappa[NOSH_MAXMOL]) |
Destroy the loaded kappa maps. | |
int | loadChargeMaps (NOsh *nosh, Vgrid *charge[NOSH_MAXMOL]) |
Load the charge maps given in NOsh into grid objects. | |
void | killChargeMaps (NOsh *nosh, Vgrid *charge[NOSH_MAXMOL]) |
Destroy the loaded charge maps. | |
void | printPBEPARM (PBEparm *pbeparm) |
Print out generic PBE params loaded from input. | |
void | printMGPARM (MGparm *mgparm, double realCenter[3]) |
Print out MG-specific params loaded from input. | |
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]) |
Initialize an MG calculation. | |
void | killMG (NOsh *nosh, Vpbe *pbe[NOSH_MAXCALC], Vpmgp *pmgp[NOSH_MAXCALC], Vpmg *pmg[NOSH_MAXCALC]) |
Kill structures initialized during an MG calculation. | |
int | solveMG (NOsh *nosh, Vpmg *pmg, MGparm_CalcType type) |
Solve the PBE with MG. | |
int | setPartMG (NOsh *nosh, MGparm *mgparm, Vpmg *pmg) |
Set MG partitions for calculating observables and performing I/O. | |
int | energyMG (NOsh *nosh, int icalc, Vpmg *pmg, int *nenergy, double *totEnergy, double *qfEnergy, double *qmEnergy, double *dielEnergy) |
Calculate electrostatic energies from MG solution. | |
int | npenergyMG (NOsh *nosh, int icalc, Vpmg *pmg, int *nenergy, double *npEnergy) |
Calculate apolar energies from MG solution. | |
void | killEnergy () |
Kill arrays allocated for energies. | |
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. | |
void | killForce (Vmem *mem, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC]) |
Free memory from MG force calculation. | |
int | writedataMG (int rank, NOsh *nosh, PBEparm *pbeparm, Vpmg *pmg) |
Write out observables from MG calculation to file. | |
int | writematMG (int rank, NOsh *nosh, PBEparm *pbeparm, Vpmg *pmg) |
Write out operator matrix from MG calculation to file. | |
int | printEnergy (Vcom *com, NOsh *nosh, double totEnergy[NOSH_MAXCALC], int i) |
Combine and pretty-print energy data. | |
int | printForce (Vcom *com, NOsh *nosh, int nforce[NOSH_MAXCALC], AtomForce *atomForce[NOSH_MAXCALC], int i) |
Combine and pretty-print force data. | |
void | startVio () |
Wrapper to start MALOC Vio layer. | |
void | printFEPARM (int icalc, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Print out FE-specific params loaded from input. | |
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. | |
int | initFE (int icalc, NOsh *nosh, FEMparm *feparm, PBEparm *pbeparm, Vpbe *pbe[NOSH_MAXCALC], Valist *alist[NOSH_MAXMOL], Vfetk *fetk[NOSH_MAXCALC]) |
Initialize FE solver objects. | |
int | preRefineFE (int i, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Pre-refine mesh before solve. | |
int | partFE (int i, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Partition mesh (if applicable). | |
int | solveFE (int i, NOsh *nosh, PBEparm *pbeparm, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Solve-estimate-refine. | |
int | postRefineFE (int icalc, NOsh *nosh, FEMparm *feparm, Vfetk *fetk[NOSH_MAXCALC]) |
Estimate error, mark mesh, and refine mesh after solve. | |
int | writedataFE (int rank, NOsh *nosh, PBEparm *pbeparm, Vfetk *fetk) |
Write FEM data to files. |
* * APBS -- Adaptive Poisson-Boltzmann Solver * * Nathan A. Baker (baker@biochem.wustl.edu) * Dept. of Biochemistry and Molecular Biophysics * Center for Computational Biology * Washington University in St. Louis * * Additional contributing authors listed in the code documentation. * * Copyright (c) 2002-2005. Washington University in St. Louis. * All Rights Reserved. * Portions Copyright (c) 1999-2002. The Regents of the University of * California. * Portions Copyright (c) 1995. Michael Holst. * * This file is part of APBS. * * APBS is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * APBS is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with APBS; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *