Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 0574b44b887114c5912824c1fbcee654 > files > 2461

apbs-doc-1.2.1-3.fc14.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>APBS: Vpmg class</title>
<link href="apbs.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Vpmg class</h1>A wrapper for Mike Holst's PMG multigrid code.  
<a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsVpmg.html">sVpmg</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains public data members for Vpmg class/module.  <a href="structsVpmg.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Files</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vpmg_8h.html">vpmg.h</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains declarations for class Vpmg. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vpmg-private_8h.html">vpmg-private.h</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Class Vpmg private method declaration. <br></td></tr>

<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vpmg_8c.html">vpmg.c</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Class Vpmg methods. <br></td></tr>

<p>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g8632a61359ae977c834001ff59d13e89"></a><!-- doxytag: member="Vpmg::Vpmg" ref="g8632a61359ae977c834001ff59d13e89" args="" -->
typedef struct <a class="el" href="structsVpmg.html">sVpmg</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g8632a61359ae977c834001ff59d13e89">Vpmg</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declaration of the Vpmg class as the Vpmg structure. <br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned long int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g7969f056027cc7b05b0c6630b52be213">Vpmg_memChk</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the memory used by this structure (and its contents) in bytes.  <a href="#g7969f056027cc7b05b0c6630b52be213"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#geab43b3987ea7c67176960f3d7cc1d38">Vpmg_ctor</a> (<a class="el" href="structsVpmgp.html">Vpmgp</a> *parms, <a class="el" href="structsVpbe.html">Vpbe</a> *pbe, int focusFlag, <a class="el" href="structsVpmg.html">Vpmg</a> *pmgOLD, <a class="el" href="structsMGparm.html">MGparm</a> *mgparm, <a class="el" href="group__PBEparm.html#g8cc295f42b2029944d85402f93190603">PBEparm_calcEnergy</a> energyFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for the Vpmg class (allocates new memory).  <a href="#geab43b3987ea7c67176960f3d7cc1d38"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#ge3a3587bfb6c15342890a2dada846d4f">Vpmg_ctor2</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVpmgp.html">Vpmgp</a> *parms, <a class="el" href="structsVpbe.html">Vpbe</a> *pbe, int focusFlag, <a class="el" href="structsVpmg.html">Vpmg</a> *pmgOLD, <a class="el" href="structsMGparm.html">MGparm</a> *mgparm, <a class="el" href="group__PBEparm.html#g8cc295f42b2029944d85402f93190603">PBEparm_calcEnergy</a> energyFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FORTRAN stub constructor for the Vpmg class (uses previously-allocated memory).  <a href="#ge3a3587bfb6c15342890a2dada846d4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g54c8a69f4055041178cc4cd7a7c346ec">Vpmg_dtor</a> (<a class="el" href="structsVpmg.html">Vpmg</a> **thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Object destructor.  <a href="#g54c8a69f4055041178cc4cd7a7c346ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g3cde6b7c8ed033476ff517348567213c">Vpmg_dtor2</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FORTRAN stub object destructor.  <a href="#g3cde6b7c8ed033476ff517348567213c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g6c39de37132c2eddd3dc62776c95963c">Vpmg_fillco</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a> surfMeth, double splineWin, <a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a> chargeMeth, int useDielXMap, <a class="el" href="structsVgrid.html">Vgrid</a> *dielXMap, int useDielYMap, <a class="el" href="structsVgrid.html">Vgrid</a> *dielYMap, int useDielZMap, <a class="el" href="structsVgrid.html">Vgrid</a> *dielZMap, int useKappaMap, <a class="el" href="structsVgrid.html">Vgrid</a> *kappaMap, int useChargeMap, <a class="el" href="structsVgrid.html">Vgrid</a> *chargeMap)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fill the coefficient arrays prior to solving the equation.  <a href="#g6c39de37132c2eddd3dc62776c95963c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g5ff93c6726088e1e33034f218d761017">Vpmg_solve</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Solve the PBE using PMG.  <a href="#g5ff93c6726088e1e33034f218d761017"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gc46c3028f8a1b5940afcf6df39e4e2c3">Vpmg_solveLaplace</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Solve Poisson's equation with a homogeneous Laplacian operator using the solvent dielectric constant. This solution is performed by a sine wave decomposition.  <a href="#gc46c3028f8a1b5940afcf6df39e4e2c3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g6f841d1daa341cac487a28bb31dde47d">Vpmg_energy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int extFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the total electrostatic energy.  <a href="#g6f841d1daa341cac487a28bb31dde47d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gbc99a910a365aa8c0e0efce577abb9af">Vpmg_qfEnergy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int extFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the "fixed charge" contribution to the electrostatic energy.  <a href="#gbc99a910a365aa8c0e0efce577abb9af"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g0491b8552abe33bd484bc731437c51bf">Vpmg_qfAtomEnergy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVatom.html">Vatom</a> *atom)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the per-atom "fixed charge" contribution to the electrostatic energy.  <a href="#g0491b8552abe33bd484bc731437c51bf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g72773d2eb289d3bf2d06ab23e198e926">Vpmg_qmEnergy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int extFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the "mobile charge" contribution to the electrostatic energy.  <a href="#g72773d2eb289d3bf2d06ab23e198e926"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g0718ba16e1357ce4ad27c15e960ca8cd">Vpmg_dielEnergy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int extFlag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the "polarization" contribution to the electrostatic energy.  <a href="#g0718ba16e1357ce4ad27c15e960ca8cd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g356d8ee320ee8264f3473583f329abc2">Vpmg_dielGradNorm</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the integral of the gradient of the dielectric function.  <a href="#g356d8ee320ee8264f3473583f329abc2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g103f45f00534437713ff979d6277addf">Vpmg_force</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double *force, int atomID, <a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a> srfm, <a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a> chgm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate the total force on the specified atom in units of k_B T/AA.  <a href="#g103f45f00534437713ff979d6277addf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g2f6aafdc5ea2bf2fd1a5175231976732">Vpmg_qfForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double *force, int atomID, <a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a> chgm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate the "charge-field" force on the specified atom in units of k_B T/AA.  <a href="#g2f6aafdc5ea2bf2fd1a5175231976732"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gf6feff0d911fcb17703591f70a3fa099">Vpmg_dbForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double *dbForce, int atomID, <a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a> srfm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate the dielectric boundary forces on the specified atom in units of k_B T/AA.  <a href="#gf6feff0d911fcb17703591f70a3fa099"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g882e62e37d397bcccb791133ddf73696">Vpmg_ibForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double *force, int atomID, <a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a> srfm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate the osmotic pressure on the specified atom in units of k_B T/AA.  <a href="#g882e62e37d397bcccb791133ddf73696"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gaef73d86f87bb23134c669f6a0dc571e">Vpmg_setPart</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double lowerCorner[3], double upperCorner[3], int bflags[6])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set partition information which restricts the calculation of observables to a (rectangular) subset of the problem domain.  <a href="#gaef73d86f87bb23134c669f6a0dc571e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g7b7c6cbfc1c468da596efff1d51fd28a">Vpmg_unsetPart</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove partition restrictions.  <a href="#g7b7c6cbfc1c468da596efff1d51fd28a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g83b3ab07ffeff693e2519db3a9bebf91">Vpmg_fillArray</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, double *vec, <a class="el" href="group__Vhal.html#gdfc214425db779e6548c11fab04ab043">Vdata_Type</a> type, double parm, <a class="el" href="group__Vhal.html#ga0aabb1579af98f26effe7796b2d0a0c">Vhal_PBEType</a> pbetype)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fill the specified array with accessibility values.  <a href="#g83b3ab07ffeff693e2519db3a9bebf91"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">VPUBLIC void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gd5c70d5a39760387658c5eb1eae982b6">Vpmg_fieldSpline4</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int atomID, double field[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the field at an atomic center using a stencil based on the first derivative of a 5th order B-spline.  <a href="#gd5c70d5a39760387658c5eb1eae982b6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gfda741b9f0bdc8ef7b8bd623484db324">Vpmg_qfPermanentMultipoleEnergy</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int atomID)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the permanent multipole electrostatic hydration energy (the polarization component of the hydration energy currently computed in TINKER).  <a href="#gfda741b9f0bdc8ef7b8bd623484db324"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g2faa5581fd5d20b1a78ccccbdb85b95a">Vpmg_qfPermanentMultipoleForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int atomID, double force[3], double torque[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the q-Phi Force for permanent multipoles based on 5th order B-splines.  <a href="#g2faa5581fd5d20b1a78ccccbdb85b95a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g943dd7be6b277ec7a2cbda531c8ed4c5">Vpmg_ibPermanentMultipoleForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute the ionic boundary force for permanent multipoles.  <a href="#g943dd7be6b277ec7a2cbda531c8ed4c5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g8d5f6f9882b8f27832073380d868e3a1">Vpmg_dbPermanentMultipoleForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute the dielectric boundary force for permanent multipoles.  <a href="#g8d5f6f9882b8f27832073380d868e3a1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gd7de85ae8637ae7b81df2f7de034fb9d">Vpmg_qfDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, int atomID, double force[3], double torque[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">q-Phi direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field.  <a href="#gd7de85ae8637ae7b81df2f7de034fb9d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g48b654f6a24e060e5555f438f850cae3">Vpmg_qfNLDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3], double torque[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">q-Phi direct polarization force between permanent multipoles and non-local induced dipoles based on 5th Order B-Splines. Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy.  <a href="#g48b654f6a24e060e5555f438f850cae3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#ga9db75d06df0aa446a98ec0318fcdc36">Vpmg_ibDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ionic boundary direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field.  <a href="#ga9db75d06df0aa446a98ec0318fcdc36"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g96bb6a425847b7b36e7393b54f8164ae">Vpmg_ibNLDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ionic boundary direct polarization force between permanent multipoles and non-local induced dipoles based on 5th order Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy.  <a href="#g96bb6a425847b7b36e7393b54f8164ae"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g79309e94695bb9a8de258cf9de30840e">Vpmg_dbDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dielectric boundary direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field.  <a href="#g79309e94695bb9a8de258cf9de30840e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g3dd6abcbaf270eb87c891ade732cdf2a">Vpmg_dbNLDirectPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *perm, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dielectric bounday direct polarization force between permanent multipoles and non-local induced dipoles. Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy.  <a href="#g3dd6abcbaf270eb87c891ade732cdf2a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g9b62a31ba895080ae38f8f9301bf34d9">Vpmg_qfMutualPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field.  <a href="#g9b62a31ba895080ae38f8f9301bf34d9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g86932d62c89ebf3cfff9fd83a2082505">Vpmg_ibMutualPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ionic boundary mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field.  <a href="#g86932d62c89ebf3cfff9fd83a2082505"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#gbe7505acfa8747a54364558c9745ca57">Vpmg_dbMutualPolForce</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, <a class="el" href="structsVgrid.html">Vgrid</a> *induced, <a class="el" href="structsVgrid.html">Vgrid</a> *nlInduced, int atomID, double force[3])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dielectric boundary mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field.  <a href="#gbe7505acfa8747a54364558c9745ca57"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vpmg.html#g74856c08e25f851236e0e9fdb2efe4e9">Vpmg_printColComp</a> (<a class="el" href="structsVpmg.html">Vpmg</a> *thee, char path[72], char title[72], char mxtype[3], int flag)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print out a column-compressed sparse matrix in Harwell-Boeing format.  <a href="#g74856c08e25f851236e0e9fdb2efe4e9"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A wrapper for Mike Holst's PMG multigrid code. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Many of the routines and macros are borrowed from the <a class="el" href="main_8c.html" title="APBS &quot;front end&quot; program using formatted input files.">main.c</a> driver (written by Mike Holst) provided with the PMG code. </dd></dl>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="geab43b3987ea7c67176960f3d7cc1d38"></a><!-- doxytag: member="vpmg.h::Vpmg_ctor" ref="geab43b3987ea7c67176960f3d7cc1d38" args="(Vpmgp *parms, Vpbe *pbe, int focusFlag, Vpmg *pmgOLD, MGparm *mgparm, PBEparm_calcEnergy energyFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structsVpmg.html">Vpmg</a>* Vpmg_ctor           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmgp.html">Vpmgp</a> *&nbsp;</td>
          <td class="paramname"> <em>parms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVpbe.html">Vpbe</a> *&nbsp;</td>
          <td class="paramname"> <em>pbe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>focusFlag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>pmgOLD</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsMGparm.html">MGparm</a> *&nbsp;</td>
          <td class="paramname"> <em>mgparm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PBEparm.html#g8cc295f42b2029944d85402f93190603">PBEparm_calcEnergy</a>&nbsp;</td>
          <td class="paramname"> <em>energyFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor for the Vpmg class (allocates new memory). 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Pointer to newly allocated Vpmg object </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>pbe</em>&nbsp;</td><td>
PMG parameter object </td></tr>
<tr><td valign="top"><em>focusFlag</em>&nbsp;</td><td>
PBE-specific variables </td></tr>
<tr><td valign="top"><em>pmgOLD</em>&nbsp;</td><td>
1 for focusing, 0 otherwise </td></tr>
<tr><td valign="top"><em>mgparm</em>&nbsp;</td><td>
Old Vpmg object to use for boundary conditions </td></tr>
<tr><td valign="top"><em>energyFlag</em>&nbsp;</td><td>
MGparm parameter object for boundary conditions What types of energies to calculate </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8c-source.html#l00137">Vpmg_ctor2()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l00762">initMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_geab43b3987ea7c67176960f3d7cc1d38_cgraph.png" border="0" usemap="#group__Vpmg_geab43b3987ea7c67176960f3d7cc1d38_cgraph_map" alt=""></center>
<map name="group__Vpmg_geab43b3987ea7c67176960f3d7cc1d38_cgraph_map">
<area shape="rect" href="group__Vpmg.html#ge3a3587bfb6c15342890a2dada846d4f" title="FORTRAN stub constructor for the Vpmg class (uses previously&#45;allocated memory)." alt="" coords="145,514,238,541"><area shape="rect" href="vpmg&#45;private_8h.html#f0c2a5754fbe7a35b083ef600dab299d" title="For focusing, set external energy data members in new Vpmg object based on energy..." alt="" coords="302,236,385,262"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="881,413,1065,440"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="921,514,1025,541"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="908,565,1038,592"><area shape="rect" href="group__Vpmg.html#g7b7c6cbfc1c468da596efff1d51fd28a" title="Remove partition restrictions." alt="" coords="684,109,806,136"><area shape="rect" href="vpmg&#45;private_8h.html#e22da4bcde8fe8d1b2aac949e1c0f059" title="For focusing, fill in the boundaries of the new mesh based on the potential values..." alt="" coords="288,717,400,744"><area shape="rect" href="group__Vpmg.html#g54c8a69f4055041178cc4cd7a7c346ec" title="Object destructor." alt="" coords="300,844,388,870"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="917,170,1029,197"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="889,113,1057,140"><area shape="rect" href="group__Vpmg.html#g0718ba16e1357ce4ad27c15e960ca8cd" title="Get the &quot;polarization&quot; contribution to the electrostatic energy." alt="" coords="681,362,809,389"><area shape="rect" href="group__Vpmg.html#gbc99a910a365aa8c0e0efce577abb9af" title="Get the &quot;fixed charge&quot; contribution to the electrostatic energy." alt="" coords="470,261,588,288"><area shape="rect" href="group__Vpmg.html#g72773d2eb289d3bf2d06ab23e198e926" title="Get the &quot;mobile charge&quot; contribution to the electrostatic energy." alt="" coords="466,362,592,389"><area shape="rect" href="group__Vpmg.html#gaef73d86f87bb23134c669f6a0dc571e" title="Set partition information which restricts the calculation of observables to a (rectangular)..." alt="" coords="692,160,798,186"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="912,360,1034,386"><area shape="rect" href="vpmg&#45;private_8h.html#0876512b1ee9f93ee0378334b886938c" title="Calculates charge&#45;potential energy using summation over delta function positions..." alt="" coords="670,261,820,288"><area shape="rect" href="vpmg&#45;private_8h.html#78687d08a4040d18d46337e1345b6dac" title="Calculates charge&#45;potential energy as integral over a volume." alt="" coords="664,312,826,338"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="908,284,1038,310"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="905,233,1041,260"><area shape="rect" href="vpmg&#45;private_8h.html#9bbc2d7d63eea65e627e398cc05ee342" title="Vpmg_qmEnergy for SMPBE." alt="" coords="660,464,830,490"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="933,464,1013,490"><area shape="rect" href="group__Vpbe.html#g6c2324fb961e2266a16894c03ec6b67b" title="Get coordinates of solute center." alt="" coords="450,616,608,642"><area shape="rect" href="group__Vpbe.html#g2927b540ffc7d27c2881ff08ca944f35" title="Get total solute charge." alt="" coords="449,666,609,693"><area shape="rect" href="group__Vpbe.html#g9a3084232e6eab9547179349f252c612" title="Get sphere radius which bounds biomolecule." alt="" coords="449,717,609,744"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="456,768,602,794"><area shape="rect" href="group__Vpbe.html#gb2a970a797a66508f244cfbddb40edf9" title="Get temperature." alt="" coords="452,818,606,845"><area shape="rect" href="group__Vpbe.html#ge08119761afa47a8332ba13e4409f988" title="Get Debye&#45;Huckel parameter." alt="" coords="468,869,590,896"><area shape="rect" href="group__Vpmg.html#g3cde6b7c8ed033476ff517348567213c" title="FORTRAN stub object destructor." alt="" coords="482,920,576,946"></map>
</div>

</div>
</div><p>
<a class="anchor" name="ge3a3587bfb6c15342890a2dada846d4f"></a><!-- doxytag: member="vpmg.h::Vpmg_ctor2" ref="ge3a3587bfb6c15342890a2dada846d4f" args="(Vpmg *thee, Vpmgp *parms, Vpbe *pbe, int focusFlag, Vpmg *pmgOLD, MGparm *mgparm, PBEparm_calcEnergy energyFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_ctor2           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVpmgp.html">Vpmgp</a> *&nbsp;</td>
          <td class="paramname"> <em>parms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVpbe.html">Vpbe</a> *&nbsp;</td>
          <td class="paramname"> <em>pbe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>focusFlag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>pmgOLD</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsMGparm.html">MGparm</a> *&nbsp;</td>
          <td class="paramname"> <em>mgparm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PBEparm.html#g8cc295f42b2029944d85402f93190603">PBEparm_calcEnergy</a>&nbsp;</td>
          <td class="paramname"> <em>energyFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
FORTRAN stub constructor for the Vpmg class (uses previously-allocated memory). 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>parms</em>&nbsp;</td><td>
Memory location for object </td></tr>
<tr><td valign="top"><em>pbe</em>&nbsp;</td><td>
PMG parameter object </td></tr>
<tr><td valign="top"><em>focusFlag</em>&nbsp;</td><td>
PBE-specific variables </td></tr>
<tr><td valign="top"><em>pmgOLD</em>&nbsp;</td><td>
1 for focusing, 0 otherwise </td></tr>
<tr><td valign="top"><em>mgparm</em>&nbsp;</td><td>
Old Vpmg object to use for boundary conditions (can be VNULL if focusFlag = 0) </td></tr>
<tr><td valign="top"><em>energyFlag</em>&nbsp;</td><td>
MGparm parameter object for boundary conditions (can be VNULL if focusFlag = 0) What types of energies to calculate (ignored if focusFlag = 0) </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00110">sVpmg::a1cf</a>, <a class="el" href="vpmg_8h-source.html#l00112">sVpmg::a2cf</a>, <a class="el" href="vpmg_8h-source.html#l00114">sVpmg::a3cf</a>, <a class="el" href="vpmgp_8h-source.html#l00131">sVpmgp::bcfl</a>, <a class="el" href="vhal_8h-source.html#l00220">BCFL_FOCUS</a>, <a class="el" href="vpmg_8h-source.html#l00116">sVpmg::ccf</a>, <a class="el" href="mgparm_8h-source.html#l00131">sMGparm::center</a>, <a class="el" href="vpmg_8h-source.html#l00104">sVpmg::charge</a>, <a class="el" href="vpmg_8h-source.html#l00138">sVpmg::chargeSrc</a>, <a class="el" href="mgparm_8h-source.html#l00119">sMGparm::chgs</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmgp_8h-source.html#l00117">sVpmgp::errtol</a>, <a class="el" href="vpmg_8h-source.html#l00127">sVpmg::extDiEnergy</a>, <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, <a class="el" href="vpmg_8h-source.html#l00131">sVpmg::extQfEnergy</a>, <a class="el" href="vpmg_8h-source.html#l00129">sVpmg::extQmEnergy</a>, <a class="el" href="vpmg_8h-source.html#l00117">sVpmg::fcf</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmg_8c-source.html#l01715">focusFillBound()</a>, <a class="el" href="mgparm_8h-source.html#l00128">sMGparm::glen</a>, <a class="el" href="vpmg_8h-source.html#l00123">sVpmg::gxcf</a>, <a class="el" href="vpmg_8h-source.html#l00124">sVpmg::gycf</a>, <a class="el" href="vpmg_8h-source.html#l00125">sVpmg::gzcf</a>, <a class="el" href="vpmgp_8h-source.html#l00126">sVpmgp::iinfo</a>, <a class="el" href="vpmg_8h-source.html#l00106">sVpmg::iparm</a>, <a class="el" href="vpmgp_8h-source.html#l00179">sVpmgp::ipcon</a>, <a class="el" href="vpmgp_8h-source.html#l00135">sVpmgp::iperf</a>, <a class="el" href="vpmgp_8h-source.html#l00105">sVpmgp::ipkey</a>, <a class="el" href="vhal_8h-source.html#l00164">IPKEY_LPBE</a>, <a class="el" href="vhal_8h-source.html#l00165">IPKEY_NPBE</a>, <a class="el" href="vhal_8h-source.html#l00163">IPKEY_SMPBE</a>, <a class="el" href="vpmgp_8h-source.html#l00178">sVpmgp::irite</a>, <a class="el" href="vpmgp_8h-source.html#l00119">sVpmgp::istop</a>, <a class="el" href="vpmgp_8h-source.html#l00118">sVpmgp::itmax</a>, <a class="el" href="vpmg_8h-source.html#l00108">sVpmg::iwork</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vhal_8h-source.html#l00377">MAXION</a>, <a class="el" href="mgparm_8h-source.html#l00075">MCT_PARALLEL</a>, <a class="el" href="vpmgp_8h-source.html#l00140">sVpmgp::meth</a>, <a class="el" href="vpmgp_8h-source.html#l00166">sVpmgp::mgcoar</a>, <a class="el" href="vpmgp_8h-source.html#l00173">sVpmgp::mgdisc</a>, <a class="el" href="vpmgp_8h-source.html#l00151">sVpmgp::mgkey</a>, <a class="el" href="vpmgp_8h-source.html#l00162">sVpmgp::mgprol</a>, <a class="el" href="vpmgp_8h-source.html#l00156">sVpmgp::mgsmoo</a>, <a class="el" href="vpmgp_8h-source.html#l00170">sVpmgp::mgsolv</a>, <a class="el" href="vpmgp_8h-source.html#l00100">sVpmgp::n_ipc</a>, <a class="el" href="vpmgp_8h-source.html#l00099">sVpmgp::n_iz</a>, <a class="el" href="vpmgp_8h-source.html#l00098">sVpmgp::n_rpc</a>, <a class="el" href="vpmgp_8h-source.html#l00104">sVpmgp::narr</a>, <a class="el" href="vpmgp_8h-source.html#l00097">sVpmgp::narrc</a>, <a class="el" href="vpmgp_8h-source.html#l00096">sVpmgp::nc</a>, <a class="el" href="vpmgp_8h-source.html#l00095">sVpmgp::nf</a>, <a class="el" href="vpmgp_8h-source.html#l00103">sVpmgp::niwk</a>, <a class="el" href="vpmgp_8h-source.html#l00082">sVpmgp::nlev</a>, <a class="el" href="vpmgp_8h-source.html#l00086">sVpmgp::nonlin</a>, <a class="el" href="vpmgp_8h-source.html#l00102">sVpmgp::nrwk</a>, <a class="el" href="vpmgp_8h-source.html#l00154">sVpmgp::nu1</a>, <a class="el" href="vpmgp_8h-source.html#l00155">sVpmgp::nu2</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00092">sVpmgp::nxc</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00093">sVpmgp::nyc</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmgp_8h-source.html#l00094">sVpmgp::nzc</a>, <a class="el" href="vpmgp_8h-source.html#l00176">sVpmgp::omegal</a>, <a class="el" href="vpmgp_8h-source.html#l00177">sVpmgp::omegan</a>, <a class="el" href="mgparm_8h-source.html#l00164">sMGparm::partDisjCenter</a>, <a class="el" href="mgparm_8h-source.html#l00166">sMGparm::partDisjLength</a>, <a class="el" href="mgparm_8h-source.html#l00168">sMGparm::partDisjOwnSide</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="pbeparm_8h-source.html#l00079">PCE_NO</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>, <a class="el" href="vpmg_8h-source.html#l00107">sVpmg::rparm</a>, <a class="el" href="vpmg_8h-source.html#l00109">sVpmg::rwork</a>, <a class="el" href="vpbe_8h-source.html#l00119">sVpbe::smsize</a>, <a class="el" href="vpbe_8h-source.html#l00118">sVpbe::smvolume</a>, <a class="el" href="vpmg_8h-source.html#l00118">sVpmg::tcf</a>, <a class="el" href="mgparm_8h-source.html#l00111">sMGparm::type</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="mgparm_8h-source.html#l00188">sMGparm::useAqua</a>, <a class="el" href="vpmg_8h-source.html#l00096">sVpmg::vmem</a>, <a class="el" href="vpbe_8c-source.html#l00083">Vpbe_getBulkIonicStrength()</a>, <a class="el" href="vpbe_8c-source.html#l00467">Vpbe_getIons()</a>, <a class="el" href="vpbe_8c-source.html#l00147">Vpbe_getZkappa2()</a>, <a class="el" href="vpmg_8c-source.html#l00489">Vpmg_dtor()</a>, <a class="el" href="vpmg_8c-source.html#l00798">Vpmg_unsetPart()</a>, <a class="el" href="vpmg_8h-source.html#l00120">sVpmg::xf</a>, <a class="el" href="vpmg_8h-source.html#l00121">sVpmg::yf</a>, and <a class="el" href="vpmg_8h-source.html#l00122">sVpmg::zf</a>.</p>

<p>Referenced by <a class="el" href="vpmg_8c-source.html#l00125">Vpmg_ctor()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_ge3a3587bfb6c15342890a2dada846d4f_cgraph.png" border="0" usemap="#group__Vpmg_ge3a3587bfb6c15342890a2dada846d4f_cgraph_map" alt=""></center>
<map name="group__Vpmg_ge3a3587bfb6c15342890a2dada846d4f_cgraph_map">
<area shape="rect" href="vpmg&#45;private_8h.html#f0c2a5754fbe7a35b083ef600dab299d" title="For focusing, set external energy data members in new Vpmg object based on energy..." alt="" coords="166,236,249,262"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="745,413,929,440"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="785,514,889,541"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="772,565,902,592"><area shape="rect" href="group__Vpmg.html#g7b7c6cbfc1c468da596efff1d51fd28a" title="Remove partition restrictions." alt="" coords="548,109,670,136"><area shape="rect" href="vpmg&#45;private_8h.html#e22da4bcde8fe8d1b2aac949e1c0f059" title="For focusing, fill in the boundaries of the new mesh based on the potential values..." alt="" coords="152,717,264,744"><area shape="rect" href="group__Vpmg.html#g54c8a69f4055041178cc4cd7a7c346ec" title="Object destructor." alt="" coords="164,844,252,870"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="781,170,893,197"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="753,113,921,140"><area shape="rect" href="group__Vpmg.html#g0718ba16e1357ce4ad27c15e960ca8cd" title="Get the &quot;polarization&quot; contribution to the electrostatic energy." alt="" coords="545,362,673,389"><area shape="rect" href="group__Vpmg.html#gbc99a910a365aa8c0e0efce577abb9af" title="Get the &quot;fixed charge&quot; contribution to the electrostatic energy." alt="" coords="334,261,452,288"><area shape="rect" href="group__Vpmg.html#g72773d2eb289d3bf2d06ab23e198e926" title="Get the &quot;mobile charge&quot; contribution to the electrostatic energy." alt="" coords="330,362,456,389"><area shape="rect" href="group__Vpmg.html#gaef73d86f87bb23134c669f6a0dc571e" title="Set partition information which restricts the calculation of observables to a (rectangular)..." alt="" coords="556,160,662,186"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="776,360,898,386"><area shape="rect" href="vpmg&#45;private_8h.html#0876512b1ee9f93ee0378334b886938c" title="Calculates charge&#45;potential energy using summation over delta function positions..." alt="" coords="534,261,684,288"><area shape="rect" href="vpmg&#45;private_8h.html#78687d08a4040d18d46337e1345b6dac" title="Calculates charge&#45;potential energy as integral over a volume." alt="" coords="528,312,690,338"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="772,284,902,310"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="769,233,905,260"><area shape="rect" href="vpmg&#45;private_8h.html#9bbc2d7d63eea65e627e398cc05ee342" title="Vpmg_qmEnergy for SMPBE." alt="" coords="524,464,694,490"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="797,464,877,490"><area shape="rect" href="group__Vpbe.html#g6c2324fb961e2266a16894c03ec6b67b" title="Get coordinates of solute center." alt="" coords="314,616,472,642"><area shape="rect" href="group__Vpbe.html#g2927b540ffc7d27c2881ff08ca944f35" title="Get total solute charge." alt="" coords="313,666,473,693"><area shape="rect" href="group__Vpbe.html#g9a3084232e6eab9547179349f252c612" title="Get sphere radius which bounds biomolecule." alt="" coords="313,717,473,744"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="320,768,466,794"><area shape="rect" href="group__Vpbe.html#gb2a970a797a66508f244cfbddb40edf9" title="Get temperature." alt="" coords="316,818,470,845"><area shape="rect" href="group__Vpbe.html#ge08119761afa47a8332ba13e4409f988" title="Get Debye&#45;Huckel parameter." alt="" coords="332,869,454,896"><area shape="rect" href="group__Vpmg.html#g3cde6b7c8ed033476ff517348567213c" title="FORTRAN stub object destructor." alt="" coords="346,920,440,946"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g79309e94695bb9a8de258cf9de30840e"></a><!-- doxytag: member="vpmg.h::Vpmg_dbDirectPolForce" ref="g79309e94695bb9a8de258cf9de30840e" args="(Vpmg *thee, Vgrid *perm, Vgrid *induced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dbDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Dielectric boundary direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="gf6feff0d911fcb17703591f70a3fa099"></a><!-- doxytag: member="vpmg.h::Vpmg_dbForce" ref="gf6feff0d911fcb17703591f70a3fa099" args="(Vpmg *thee, double *dbForce, int atomID, Vsurf_Meth srfm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_dbForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&nbsp;</td>
          <td class="paramname"> <em>dbForce</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>srfm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calculate the dielectric boundary forces on the specified atom in units of k_B T/AA. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd><ul>
<li>Using the force evaluation methods of Im et al (Roux group), Comput Phys Commun, 111, 59--75 (1998). However, this gives the whole (self-interactions included) force -- reaction field forces will have to be calculated at higher level. </li>
<li>No contributions are made from higher levels of focusing. </li>
</ul>
</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dbForce</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
3*sizeof(double) space to hold the dielectric boundary force in units of k_B T/AA </td></tr>
<tr><td valign="top"><em>srfm</em>&nbsp;</td><td>
Valist ID of desired atom Surface discretization method </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00088">sVpbe::acc</a>, <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vpmgp_8h-source.html#l00131">sVpmgp::bcfl</a>, <a class="el" href="vhal_8h-source.html#l00220">BCFL_FOCUS</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vatom_8h-source.html#l00078">sVatom::partID</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00136">sVpmg::splineWin</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="valist_8c-source.html#l00114">Valist_getAtom()</a>, <a class="el" href="vatom_8c-source.html#l00062">Vatom_getPosition()</a>, <a class="el" href="vatom_8c-source.html#l00104">Vatom_getRadius()</a>, <a class="el" href="vpbe_8c-source.html#l00098">Vpbe_getSoluteDiel()</a>, <a class="el" href="vpbe_8c-source.html#l00112">Vpbe_getSolventDiel()</a>, <a class="el" href="vpbe_8c-source.html#l00090">Vpbe_getTemperature()</a>, <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>, <a class="el" href="vpmg_8c-source.html#l01694">Vpmg_splineSelect()</a>, <a class="el" href="vhal_8h-source.html#l00444">VPMGSMALL</a>, <a class="el" href="vhal_8h-source.html#l00114">VSM_SPLINE</a>, <a class="el" href="vhal_8h-source.html#l00124">VSM_SPLINE3</a>, <a class="el" href="vhal_8h-source.html#l00128">VSM_SPLINE4</a>, <a class="el" href="vunit_8h-source.html#l00094">Vunit_kb</a>, <a class="el" href="vunit_8h-source.html#l00098">Vunit_Na</a>, <a class="el" href="vpmgp_8h-source.html#l00185">sVpmgp::xlen</a>, <a class="el" href="vpmgp_8h-source.html#l00191">sVpmgp::xmax</a>, <a class="el" href="vpmgp_8h-source.html#l00188">sVpmgp::xmin</a>, <a class="el" href="vpmgp_8h-source.html#l00186">sVpmgp::ylen</a>, <a class="el" href="vpmgp_8h-source.html#l00192">sVpmgp::ymax</a>, <a class="el" href="vpmgp_8h-source.html#l00189">sVpmgp::ymin</a>, <a class="el" href="vpmgp_8h-source.html#l00187">sVpmgp::zlen</a>, <a class="el" href="vpmgp_8h-source.html#l00193">sVpmgp::zmax</a>, and <a class="el" href="vpmgp_8h-source.html#l00190">sVpmgp::zmin</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01120">forceMG()</a>, and <a class="el" href="vpmg_8c-source.html#l05024">Vpmg_force()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_gf6feff0d911fcb17703591f70a3fa099_cgraph.png" border="0" usemap="#group__Vpmg_gf6feff0d911fcb17703591f70a3fa099_cgraph_map" alt=""></center>
<map name="group__Vpmg_gf6feff0d911fcb17703591f70a3fa099_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="193,8,305,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="642,134,778,161"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="646,185,774,212"><area shape="rect" href="group__Vpbe.html#g0aac5d03d89f4a9c5b5a93e853325e0d" title="Get solute dielectric constant." alt="" coords="178,312,320,338"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="176,362,322,389"><area shape="rect" href="group__Vpbe.html#gb2a970a797a66508f244cfbddb40edf9" title="Get temperature." alt="" coords="172,413,326,440"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="188,464,310,490"><area shape="rect" href="vpmg&#45;private_8h.html#1271687db8aa07b73c4ce3316943b72c" title="Selects a spline based surface method from either VSM_SPLINE, VSM_SPLINE5 or VSM_SPLINE7..." alt="" coords="181,185,317,212"><area shape="rect" href="group__Vacc.html#g86e395e15ef9298b4f9cc50b9e6da656" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="380,109,590,136"><area shape="rect" href="group__Vacc.html#g9f24abc998c44e87ff1805256e520f15" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="376,160,594,186"><area shape="rect" href="group__Vacc.html#gc90a25448405539eb8f2178874d496f8" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="376,210,594,237"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gbe7505acfa8747a54364558c9745ca57"></a><!-- doxytag: member="vpmg.h::Vpmg_dbMutualPolForce" ref="gbe7505acfa8747a54364558c9745ca57" args="(Vpmg *thee, Vgrid *induced, Vgrid *nlInduced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dbMutualPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Dielectric boundary mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Non-local induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g3dd6abcbaf270eb87c891ade732cdf2a"></a><!-- doxytag: member="vpmg.h::Vpmg_dbNLDirectPolForce" ref="g3dd6abcbaf270eb87c891ade732cdf2a" args="(Vpmg *thee, Vgrid *perm, Vgrid *nlInduced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dbNLDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Dielectric bounday direct polarization force between permanent multipoles and non-local induced dipoles. Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Non-local induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g8d5f6f9882b8f27832073380d868e3a1"></a><!-- doxytag: member="vpmg.h::Vpmg_dbPermanentMultipoleForce" ref="g8d5f6f9882b8f27832073380d868e3a1" args="(Vpmg *thee, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dbPermanentMultipoleForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Compute the dielectric boundary force for permanent multipoles. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g0718ba16e1357ce4ad27c15e960ca8cd"></a><!-- doxytag: member="vpmg.h::Vpmg_dielEnergy" ref="g0718ba16e1357ce4ad27c15e960ca8cd" args="(Vpmg *thee, int extFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_dielEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>extFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the "polarization" contribution to the electrostatic energy. 
<p>
Using the solution at the finest mesh level, get the electrostatic energy due to the interaction of the mobile charges with the potential: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = \frac{1}{2} \int \epsilon (\nabla u)^2 dx \]" src="form_14.png">
<p>
 where epsilon is the dielectric parameter and u(x) is the dimensionless electrostatic potential. The energy is scaled to units of k_b T.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The value of this observable may be modified by setting restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The polarization electrostatic energy in units of k_B T. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>extFlag</em>&nbsp;</td><td>
Vpmg object If this was a focused calculation, include (1 -- for serial calculations) or ignore (0 -- for parallel calculations) energy contributions from outside the focusing domain </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00127">sVpmg::extDiEnergy</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, and <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01056">energyMG()</a>, <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, and <a class="el" href="vpmg_8c-source.html#l01136">Vpmg_energy()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g0718ba16e1357ce4ad27c15e960ca8cd_cgraph.png" border="0" usemap="#group__Vpmg_g0718ba16e1357ce4ad27c15e960ca8cd_cgraph_map" alt=""></center>
<map name="group__Vpmg_g0718ba16e1357ce4ad27c15e960ca8cd_cgraph_map">
<area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="184,8,306,34"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g356d8ee320ee8264f3473583f329abc2"></a><!-- doxytag: member="vpmg.h::Vpmg_dielGradNorm" ref="g356d8ee320ee8264f3473583f329abc2" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_dielGradNorm           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the integral of the gradient of the dielectric function. 
<p>
Using the dielectric map at the finest mesh level, calculate the integral of the norm of the dielectric function gradient routines of Im et al (see Vpmg_dbForce for reference): <p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int \| \nabla \epsilon \| dx \]" src="form_17.png">
<p>
 where epsilon is the dielectric parameter. The integral is returned in units of A^2.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The integral in units of A^2. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Vpmg object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, and <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>.</p>

</div>
</div><p>
<a class="anchor" name="g54c8a69f4055041178cc4cd7a7c346ec"></a><!-- doxytag: member="vpmg.h::Vpmg_dtor" ref="g54c8a69f4055041178cc4cd7a7c346ec" args="(Vpmg **thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dtor           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> **&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Object destructor. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Pointer to memory location of object to be destroyed </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8c-source.html#l00499">Vpmg_dtor2()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l00762">initMG()</a>, <a class="el" href="routines_8c-source.html#l00954">killMG()</a>, and <a class="el" href="vpmg_8c-source.html#l00137">Vpmg_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g54c8a69f4055041178cc4cd7a7c346ec_cgraph.png" border="0" usemap="#group__Vpmg_g54c8a69f4055041178cc4cd7a7c346ec_cgraph_map" alt=""></center>
<map name="group__Vpmg_g54c8a69f4055041178cc4cd7a7c346ec_cgraph_map">
<area shape="rect" href="group__Vpmg.html#g3cde6b7c8ed033476ff517348567213c" title="FORTRAN stub object destructor." alt="" coords="145,8,238,34"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g3cde6b7c8ed033476ff517348567213c"></a><!-- doxytag: member="vpmg.h::Vpmg_dtor2" ref="g3cde6b7c8ed033476ff517348567213c" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_dtor2           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
FORTRAN stub object destructor. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Pointer to object to be destroyed </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00110">sVpmg::a1cf</a>, <a class="el" href="vpmg_8h-source.html#l00112">sVpmg::a2cf</a>, <a class="el" href="vpmg_8h-source.html#l00114">sVpmg::a3cf</a>, <a class="el" href="vpmg_8h-source.html#l00116">sVpmg::ccf</a>, <a class="el" href="vpmg_8h-source.html#l00104">sVpmg::charge</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00117">sVpmg::fcf</a>, <a class="el" href="vpmg_8h-source.html#l00123">sVpmg::gxcf</a>, <a class="el" href="vpmg_8h-source.html#l00124">sVpmg::gycf</a>, <a class="el" href="vpmg_8h-source.html#l00125">sVpmg::gzcf</a>, <a class="el" href="vpmg_8h-source.html#l00106">sVpmg::iparm</a>, <a class="el" href="vpmg_8h-source.html#l00108">sVpmg::iwork</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vpmgp_8h-source.html#l00104">sVpmgp::narr</a>, <a class="el" href="vpmgp_8h-source.html#l00103">sVpmgp::niwk</a>, <a class="el" href="vpmgp_8h-source.html#l00102">sVpmgp::nrwk</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>, <a class="el" href="vpmg_8h-source.html#l00107">sVpmg::rparm</a>, <a class="el" href="vpmg_8h-source.html#l00109">sVpmg::rwork</a>, <a class="el" href="vpmg_8h-source.html#l00118">sVpmg::tcf</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="vpmg_8h-source.html#l00096">sVpmg::vmem</a>, <a class="el" href="vpmg_8h-source.html#l00120">sVpmg::xf</a>, <a class="el" href="vpmg_8h-source.html#l00121">sVpmg::yf</a>, and <a class="el" href="vpmg_8h-source.html#l00122">sVpmg::zf</a>.</p>

<p>Referenced by <a class="el" href="vpmg_8c-source.html#l00489">Vpmg_dtor()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g6f841d1daa341cac487a28bb31dde47d"></a><!-- doxytag: member="vpmg.h::Vpmg_energy" ref="g6f841d1daa341cac487a28bb31dde47d" args="(Vpmg *thee, int extFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_energy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>extFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the total electrostatic energy. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The value of this observable may be modified by setting restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The electrostatic energy in units of k_B T. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>extFlag</em>&nbsp;</td><td>
Vpmg object If this was a focused calculation, include (1 -- for serial calculations) or ignore (0 -- for parallel calculations) energy contributions from outside the focusing domain </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmgp_8h-source.html#l00086">sVpmgp::nonlin</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpbe_8c-source.html#l00083">Vpbe_getBulkIonicStrength()</a>, <a class="el" href="vpmg_8c-source.html#l01165">Vpmg_dielEnergy()</a>, <a class="el" href="vpmg_8c-source.html#l01492">Vpmg_qfEnergy()</a>, and <a class="el" href="vpmg_8c-source.html#l01256">Vpmg_qmEnergy()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01056">energyMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g6f841d1daa341cac487a28bb31dde47d_cgraph.png" border="0" usemap="#group__Vpmg_g6f841d1daa341cac487a28bb31dde47d_cgraph_map" alt=""></center>
<map name="group__Vpmg_g6f841d1daa341cac487a28bb31dde47d_cgraph_map">
<area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="561,261,745,288"><area shape="rect" href="group__Vpmg.html#g0718ba16e1357ce4ad27c15e960ca8cd" title="Get the &quot;polarization&quot; contribution to the electrostatic energy." alt="" coords="162,210,290,237"><area shape="rect" href="group__Vpmg.html#gbc99a910a365aa8c0e0efce577abb9af" title="Get the &quot;fixed charge&quot; contribution to the electrostatic energy." alt="" coords="168,160,285,186"><area shape="rect" href="group__Vpmg.html#g72773d2eb289d3bf2d06ab23e198e926" title="Get the &quot;mobile charge&quot; contribution to the electrostatic energy." alt="" coords="164,312,289,338"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="592,210,714,237"><area shape="rect" href="vpmg&#45;private_8h.html#0876512b1ee9f93ee0378334b886938c" title="Calculates charge&#45;potential energy using summation over delta function positions..." alt="" coords="350,109,500,136"><area shape="rect" href="vpmg&#45;private_8h.html#78687d08a4040d18d46337e1345b6dac" title="Calculates charge&#45;potential energy as integral over a volume." alt="" coords="344,160,506,186"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="597,160,709,186"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="569,8,737,34"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="588,58,718,85"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="585,109,721,136"><area shape="rect" href="vpmg&#45;private_8h.html#9bbc2d7d63eea65e627e398cc05ee342" title="Vpmg_qmEnergy for SMPBE." alt="" coords="340,312,510,338"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="613,312,693,338"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="601,362,705,389"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="588,413,718,440"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gd5c70d5a39760387658c5eb1eae982b6"></a><!-- doxytag: member="vpmg.h::Vpmg_fieldSpline4" ref="gd5c70d5a39760387658c5eb1eae982b6" args="(Vpmg *thee, int atomID, double field[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VPUBLIC void Vpmg_fieldSpline4           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>field</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Computes the field at an atomic center using a stencil based on the first derivative of a 5th order B-spline. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>field</em>&nbsp;</td><td>
Atom index The (returned) electric field </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g83b3ab07ffeff693e2519db3a9bebf91"></a><!-- doxytag: member="vpmg.h::Vpmg_fillArray" ref="g83b3ab07ffeff693e2519db3a9bebf91" args="(Vpmg *thee, double *vec, Vdata_Type type, double parm, Vhal_PBEType pbetype)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_fillArray           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&nbsp;</td>
          <td class="paramname"> <em>vec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#gdfc214425db779e6548c11fab04ab043">Vdata_Type</a>&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>parm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#ga0aabb1579af98f26effe7796b2d0a0c">Vhal_PBEType</a>&nbsp;</td>
          <td class="paramname"> <em>pbetype</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fill the specified array with accessibility values. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>vec</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
A nx*ny*nz*sizeof(double) array to contain the values to be written </td></tr>
<tr><td valign="top"><em>parm</em>&nbsp;</td><td>
What to write </td></tr>
<tr><td valign="top"><em>pbetype</em>&nbsp;</td><td>
Parameter for data type definition (if needed) Parameter for PBE type (if needed) </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00104">sVpmg::charge</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpbe_8h-source.html#l00102">sVpbe::ionConc</a>, <a class="el" href="vpbe_8h-source.html#l00104">sVpbe::ionQ</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vpbe_8h-source.html#l00098">sVpbe::maxIonRadius</a>, <a class="el" href="vpbe_8h-source.html#l00101">sVpbe::numIon</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vhal_8h-source.html#l00145">PBE_LPBE</a>, <a class="el" href="vhal_8h-source.html#l00146">PBE_NPBE</a>, <a class="el" href="vhal_8h-source.html#l00149">PBE_SMPBE</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpbe_8h-source.html#l00094">sVpbe::solventRadius</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="group__Vacc.html#g6e3d06de84edfdedec72f6c39fe6b58f">Vacc_ivdwAcc()</a>, <a class="el" href="vacc_8c-source.html#l00550">Vacc_molAcc()</a>, <a class="el" href="vacc_8c-source.html#l00470">Vacc_splineAcc()</a>, <a class="el" href="group__Vacc.html#g2b52e74285215d0138d3a1bad46b556f">Vacc_vdwAcc()</a>, <a class="el" href="vcap_8c-source.html#l00058">Vcap_exp()</a>, <a class="el" href="vhal_8h-source.html#l00274">VDT_CHARGE</a>, <a class="el" href="vhal_8h-source.html#l00291">VDT_DIELX</a>, <a class="el" href="vhal_8h-source.html#l00293">VDT_DIELY</a>, <a class="el" href="vhal_8h-source.html#l00295">VDT_DIELZ</a>, <a class="el" href="vhal_8h-source.html#l00285">VDT_EDENS</a>, <a class="el" href="vhal_8h-source.html#l00282">VDT_IVDW</a>, <a class="el" href="vhal_8h-source.html#l00297">VDT_KAPPA</a>, <a class="el" href="vhal_8h-source.html#l00284">VDT_LAP</a>, <a class="el" href="vhal_8h-source.html#l00287">VDT_NDENS</a>, <a class="el" href="vhal_8h-source.html#l00275">VDT_POT</a>, <a class="el" href="vhal_8h-source.html#l00289">VDT_QDENS</a>, <a class="el" href="vhal_8h-source.html#l00276">VDT_SMOL</a>, <a class="el" href="vhal_8h-source.html#l00278">VDT_SSPL</a>, <a class="el" href="vhal_8h-source.html#l00280">VDT_VDW</a>, <a class="el" href="vgrid_8c-source.html#l00076">Vgrid_ctor()</a>, <a class="el" href="vgrid_8c-source.html#l00280">Vgrid_curvature()</a>, <a class="el" href="vgrid_8c-source.html#l00135">Vgrid_dtor()</a>, <a class="el" href="vgrid_8c-source.html#l00360">Vgrid_gradient()</a>, <a class="el" href="vpbe_8c-source.html#l00098">Vpbe_getSoluteDiel()</a>, <a class="el" href="vpbe_8c-source.html#l00112">Vpbe_getSolventDiel()</a>, <a class="el" href="vpbe_8c-source.html#l00075">Vpbe_getVacc()</a>, <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>, <a class="el" href="vpmgp_8h-source.html#l00188">sVpmgp::xmin</a>, <a class="el" href="vpmgp_8h-source.html#l00189">sVpmgp::ymin</a>, and <a class="el" href="vpmgp_8h-source.html#l00190">sVpmgp::zmin</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01845">writedataMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g83b3ab07ffeff693e2519db3a9bebf91_cgraph.png" border="0" usemap="#group__Vpmg_g83b3ab07ffeff693e2519db3a9bebf91_cgraph_map" alt=""></center>
<map name="group__Vpmg_g83b3ab07ffeff693e2519db3a9bebf91_cgraph_map">
<area shape="rect" href="group__Vacc.html#g6e3d06de84edfdedec72f6c39fe6b58f" title="Report inflated van der Waals accessibility." alt="" coords="373,110,482,137"><area shape="rect" href="group__Vacc.html#g14c8339e2806380b18aad1e88fe66b71" title="Report molecular accessibility." alt="" coords="190,161,294,187"><area shape="rect" href="group__Vacc.html#g2b52e74285215d0138d3a1bad46b556f" title="Report van der Waals accessibility." alt="" coords="375,211,479,238"><area shape="rect" href="group__Vacc.html#g6f4eb93667854820fbfc4478e60a618e" title="Report spline&#45;based accessibility." alt="" coords="369,439,486,466"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="202,313,282,339"><area shape="rect" href="group__Vgrid.html#g4b06bf864ec47b8e0d47dc9310c37f84" title="Construct Vgrid object with values obtained from Vpmg_readDX (for example)." alt="" coords="201,363,283,390"><area shape="rect" href="group__Vgrid.html#ga2e339a0a1afd169cbdbbbd4071f402d" title="Get second derivative values at a point." alt="" coords="183,414,301,441"><area shape="rect" href="group__Vgrid.html#g198520f697a55c26780ca9cf10a9e883" title="Object destructor." alt="" coords="201,465,283,491"><area shape="rect" href="group__Vgrid.html#g01c5b30d3191de329996c53b6f5025db" title="Get first derivative values at a point." alt="" coords="187,515,297,542"><area shape="rect" href="group__Vpbe.html#g0aac5d03d89f4a9c5b5a93e853325e0d" title="Get solute dielectric constant." alt="" coords="171,566,313,593"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="169,617,315,643"><area shape="rect" href="group__Vpbe.html#g2e37bd1ca6c3a22b6be58c613589459c" title="Get accessibility oracle." alt="" coords="187,667,297,694"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="181,718,303,745"><area shape="rect" href="group__Vacc.html#g771fa3d6536e75841ee6fcbead1660f0" title="Report molecular accessibility quickly." alt="" coords="365,161,490,187"><area shape="rect" href="group__Vacc.html#g7a741d87762baf5906802b6b9a670080" title="Build the solvent accessible surface (SAS) and calculate the solvent accessible surface..." alt="" coords="539,237,633,263"><area shape="rect" href="group__Vclist.html#g13dc2b36b0eb96f433ee79566bdd45e4" title="Return cell corresponding to specified position or return VNULL." alt="" coords="1095,313,1199,339"><area shape="rect" href="group__Vatom.html#g37404117f53ad617e4371df8a7c849bb" title="Get atom ID." alt="" coords="901,161,1031,187"><area shape="rect" href="group__Vacc.html#g6e118e97d0ef09899dd376b6eda231a7" title="Set up an array of points corresponding to the SAS due to a particular atom." alt="" coords="709,313,823,339"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="898,363,1034,390"><area shape="rect" href="group__Vacc.html#g90b879964a5faa185a82dc2f7c736a15" title="Destroy the surface object." alt="" coords="709,161,823,187"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="710,211,822,238"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="682,262,850,289"><area shape="rect" href="vacc_8c.html#5c6356f19e11daf8d0dea84bd92cc226" title="Determines if a point is within the union of the spheres centered at the atomic centers..." alt="" coords="910,313,1022,339"><area shape="rect" href="group__Vacc.html#gf645f700c467833a3611fadb606d16e5" title="Allocate and construct the surface object; do not assign surface points to positions..." alt="" coords="913,262,1019,289"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="902,414,1030,441"><area shape="rect" href="group__Vclist.html#ga67500e4f221d3f965c2ff48dee31593" title="Get the max probe radius value (in A) the cell list was constructed with." alt="" coords="1083,439,1211,466"><area shape="rect" href="group__Vacc.html#g7b5d73ff3b8ae17c8efad24ce683de78" title="Construct the surface object using previously allocated memory; do not assign surface..." alt="" coords="1090,262,1205,289"><area shape="rect" href="vacc_8c.html#2a318b9e1df4d9a97ac47cf55498c4a8" title="Fast spline&#45;based surface computation subroutine." alt="" coords="546,414,626,441"><area shape="rect" href="group__Vacc.html#g6c202624954a3bd3fde446182415c769" title="Report spline&#45;based accessibility for a given atom." alt="" coords="691,414,841,441"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g6c39de37132c2eddd3dc62776c95963c"></a><!-- doxytag: member="vpmg.h::Vpmg_fillco" ref="g6c39de37132c2eddd3dc62776c95963c" args="(Vpmg *thee, Vsurf_Meth surfMeth, double splineWin, Vchrg_Meth chargeMeth, int useDielXMap, Vgrid *dielXMap, int useDielYMap, Vgrid *dielYMap, int useDielZMap, Vgrid *dielZMap, int useKappaMap, Vgrid *kappaMap, int useChargeMap, Vgrid *chargeMap)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_fillco           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>surfMeth</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>splineWin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>chargeMeth</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>useDielXMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>dielXMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>useDielYMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>dielYMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>useDielZMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>dielZMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>useKappaMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>kappaMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>useChargeMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>chargeMap</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fill the coefficient arrays prior to solving the equation. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>surfMeth</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>splineWin</em>&nbsp;</td><td>
Surface discretization method </td></tr>
<tr><td valign="top"><em>chargeMeth</em>&nbsp;</td><td>
Spline window (in A) for surfMeth = VSM_SPLINE </td></tr>
<tr><td valign="top"><em>useDielXMap</em>&nbsp;</td><td>
Charge discretization method </td></tr>
<tr><td valign="top"><em>dielXMap</em>&nbsp;</td><td>
Boolean to use dielectric map argument </td></tr>
<tr><td valign="top"><em>useDielYMap</em>&nbsp;</td><td>
External dielectric map </td></tr>
<tr><td valign="top"><em>dielYMap</em>&nbsp;</td><td>
Boolean to use dielectric map argument </td></tr>
<tr><td valign="top"><em>useDielZMap</em>&nbsp;</td><td>
External dielectric map </td></tr>
<tr><td valign="top"><em>dielZMap</em>&nbsp;</td><td>
Boolean to use dielectric map argument </td></tr>
<tr><td valign="top"><em>useKappaMap</em>&nbsp;</td><td>
External dielectric map </td></tr>
<tr><td valign="top"><em>kappaMap</em>&nbsp;</td><td>
Boolean to use kappa map argument </td></tr>
<tr><td valign="top"><em>useChargeMap</em>&nbsp;</td><td>
External kappa map </td></tr>
<tr><td valign="top"><em>chargeMap</em>&nbsp;</td><td>
Boolean to use charge map argument External charge map </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8c-source.html#l03658">bcCalc()</a>, <a class="el" href="vpmgp_8h-source.html#l00131">sVpmgp::bcfl</a>, <a class="el" href="vhal_8h-source.html#l00220">BCFL_FOCUS</a>, <a class="el" href="vpmg_8h-source.html#l00156">sVpmg::chargeMap</a>, <a class="el" href="vpmg_8h-source.html#l00137">sVpmg::chargeMeth</a>, <a class="el" href="vpmg_8h-source.html#l00144">sVpmg::dielXMap</a>, <a class="el" href="vpmg_8h-source.html#l00147">sVpmg::dielYMap</a>, <a class="el" href="vpmg_8h-source.html#l00150">sVpmg::dielZMap</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8c-source.html#l04519">fillcoCharge()</a>, <a class="el" href="vpmg_8c-source.html#l04479">fillcoCoef()</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vpmg_8h-source.html#l00153">sVpmg::kappaMap</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00107">sVpmg::rparm</a>, <a class="el" href="vpmg_8h-source.html#l00136">sVpmg::splineWin</a>, <a class="el" href="vpmg_8h-source.html#l00135">sVpmg::surfMeth</a>, <a class="el" href="vpmg_8h-source.html#l00118">sVpmg::tcf</a>, <a class="el" href="vpmg_8h-source.html#l00154">sVpmg::useChargeMap</a>, <a class="el" href="vpmg_8h-source.html#l00142">sVpmg::useDielXMap</a>, <a class="el" href="vpmg_8h-source.html#l00145">sVpmg::useDielYMap</a>, <a class="el" href="vpmg_8h-source.html#l00148">sVpmg::useDielZMap</a>, <a class="el" href="vpmg_8h-source.html#l00151">sVpmg::useKappaMap</a>, <a class="el" href="vpbe_8c-source.html#l00083">Vpbe_getBulkIonicStrength()</a>, <a class="el" href="vpbe_8c-source.html#l00098">Vpbe_getSoluteDiel()</a>, <a class="el" href="vpbe_8c-source.html#l00112">Vpbe_getSolventDiel()</a>, <a class="el" href="vhal_8h-source.html#l00444">VPMGSMALL</a>, <a class="el" href="vhal_8h-source.html#l00074">VRC_FAILURE</a>, <a class="el" href="vhal_8h-source.html#l00075">VRC_SUCCESS</a>, <a class="el" href="vpmgp_8h-source.html#l00114">sVpmgp::xcent</a>, <a class="el" href="vpmg_8h-source.html#l00120">sVpmg::xf</a>, <a class="el" href="vpmgp_8h-source.html#l00185">sVpmgp::xlen</a>, <a class="el" href="vpmgp_8h-source.html#l00191">sVpmgp::xmax</a>, <a class="el" href="vpmgp_8h-source.html#l00188">sVpmgp::xmin</a>, <a class="el" href="vpmgp_8h-source.html#l00115">sVpmgp::ycent</a>, <a class="el" href="vpmg_8h-source.html#l00121">sVpmg::yf</a>, <a class="el" href="vpmgp_8h-source.html#l00186">sVpmgp::ylen</a>, <a class="el" href="vpmgp_8h-source.html#l00192">sVpmgp::ymax</a>, <a class="el" href="vpmgp_8h-source.html#l00189">sVpmgp::ymin</a>, <a class="el" href="vpmgp_8h-source.html#l00116">sVpmgp::zcent</a>, <a class="el" href="vpmg_8h-source.html#l00122">sVpmg::zf</a>, <a class="el" href="vpmgp_8h-source.html#l00187">sVpmgp::zlen</a>, <a class="el" href="vpmgp_8h-source.html#l00193">sVpmgp::zmax</a>, and <a class="el" href="vpmgp_8h-source.html#l00190">sVpmgp::zmin</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l00762">initMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g6c39de37132c2eddd3dc62776c95963c_cgraph.png" border="0" usemap="#group__Vpmg_g6c39de37132c2eddd3dc62776c95963c_cgraph_map" alt=""></center>
<map name="group__Vpmg_g6c39de37132c2eddd3dc62776c95963c_cgraph_map">
<area shape="rect" href="vpmg&#45;private_8h.html#9803b64d96685d27923d899ef6f4c5cd" title="Fill boundary condition arrays." alt="" coords="157,362,218,389"><area shape="rect" href="vpmg&#45;private_8h.html#da65af06c9af5bf4ee593cb051bd0b0d" title="Top&#45;level driver to fill source term charge array." alt="" coords="866,413,959,440"><area shape="rect" href="vpmg&#45;private_8h.html#169088d2631112390e9699d0ff25ab0a" title="Top&#45;level driver to fill all operator coefficient arrays." alt="" coords="149,1452,226,1478"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="1265,1528,1449,1554"><area shape="rect" href="group__Vpbe.html#g0aac5d03d89f4a9c5b5a93e853325e0d" title="Get solute dielectric constant." alt="" coords="1286,1578,1427,1605"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="1283,1224,1430,1250"><area shape="rect" href="vpmg&#45;private_8h.html#2fe0074cd016170f829d76a856409185" title="Fill source term charge array from a pre&#45;calculated map." alt="" coords="1070,413,1190,440"><area shape="rect" href="vpmg&#45;private_8h.html#7e7a2991c9f8b5e9a4a06843aecd38ae" title="Fill source term charge array from linear interpolation." alt="" coords="1061,565,1199,592"><area shape="rect" href="vpmg&#45;private_8h.html#6074122271a6957f5d463aa95c90f61c" title="Fill source term charge array from cubic spline interpolation." alt="" coords="1061,514,1199,541"><area shape="rect" href="vpmg&#45;private_8h.html#e84de46101d6abe2046ae860b55832a0" title="Fill source term charge array for use of induced dipoles." alt="" coords="1062,8,1198,34"><area shape="rect" href="vpmg&#45;private_8h.html#6139befcbac10d86518d7b4cd397204a" title="Fill source term charge array for non&#45;local induced dipoles." alt="" coords="1054,58,1206,85"><area shape="rect" href="vpmg&#45;private_8h.html#a349fa04ad1c57df769345d4bcad28ce" title="Fill source term charge array for the use of permanent multipoles." alt="" coords="1045,362,1215,389"><area shape="rect" href="group__Vgrid.html#g082b052479c1629216b691e788e91aac" title="Get potential value (from mesh or approximation) at a point." alt="" coords="1310,413,1403,440"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="1295,464,1418,490"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="1301,970,1413,997"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="1273,1021,1441,1048"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="1291,514,1422,541"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="1498,894,1634,921"><area shape="rect" href="vpmg&#45;private_8h.html#50d8ef438d4a7a76d869fb256b24d372" title="Evaluate a cubic B&#45;spline." alt="" coords="1321,565,1393,592"><area shape="rect" href="vpmg&#45;private_8h.html#c953c7091df8e4a1df53463baf8fe7ee" title="Evaluate a 5th Order B&#45;Spline (4th order polynomial)." alt="" coords="1321,210,1393,237"><area shape="rect" href="vpmg&#45;private_8h.html#fa58365e9d16b810f6fe926558650108" title="Evaluate the 2nd derivative of a 5th Order B&#45;Spline." alt="" coords="1314,261,1399,288"><area shape="rect" href="vpmg&#45;private_8h.html#91d1557ecff0ea7809aface06c0c179e" title="Evaluate a 5th Order B&#45;Spline derivative (4th order polynomial)." alt="" coords="1317,312,1397,338"><area shape="rect" href="vpmg&#45;private_8h.html#fcf864c3b65f0d536a2985d931dc4692" title="Return 2.5 plus difference of i &#45; f." alt="" coords="1322,160,1391,186"><area shape="rect" href="vpmg&#45;private_8h.html#35949511a7f2779c8ac7e7c88bdca001" title="Fill operator coefficient arrays from pre&#45;calculated maps." alt="" coords="433,1401,537,1428"><area shape="rect" href="vpmg&#45;private_8h.html#62617829770eaed11c159947453e457c" title="Fill operator coefficient arrays from a molecular surface calculation." alt="" coords="275,1350,374,1377"><area shape="rect" href="vpmg&#45;private_8h.html#61365ff4cedaf084ea6d960d432a3d03" title="Fill operator coefficient arrays from a spline&#45;based surface calculation." alt="" coords="1073,1376,1187,1402"><area shape="rect" href="vpmg&#45;private_8h.html#b7b5543b591c9433e7190a2fe45b4ca2" title="Fill operator coefficient arrays from a 5th order polynomial based surface calculation..." alt="" coords="1069,1553,1191,1580"><area shape="rect" href="vpmg&#45;private_8h.html#be8b2056b56093552215f2e97c8f5c1b" title="Fill operator coefficient arrays from a 7th order polynomial based surface calculation..." alt="" coords="1069,1426,1191,1453"><area shape="rect" href="vpmg&#45;private_8h.html#34484f0f2f254b954abf20c5a98ab9d4" title="Fill differential operator coefficient arrays from a molecular surface calculation..." alt="" coords="423,1274,546,1301"><area shape="rect" href="vpmg&#45;private_8h.html#9217fdfc8737424d5e5ccc1193f9c3b0" title="Fill ion (nonlinear) operator coefficient array from a molecular surface calculation..." alt="" coords="1071,1122,1189,1149"><area shape="rect" href="vpmg&#45;private_8h.html#df9fff114eed3d5d94f3adbbf9527483" title="Fill differential operator coefficient arrays from a molecular surface calculation..." alt="" coords="594,1072,781,1098"><area shape="rect" href="vpmg&#45;private_8h.html#afab27ad33274047911bd2ec092eb265" title="Fill differential operator coefficient arrays from a molecular surface calculation..." alt="" coords="603,1274,771,1301"><area shape="rect" href="vpmg&#45;private_8h.html#ac867a97b6a1b573c285c846237837a5" title="Mark the grid points inside a sphere with a particular value. This marks by resetting..." alt="" coords="1310,1072,1403,1098"><area shape="rect" href="group__Vacc.html#gea1fe0e1ddebb4f1ae9dac8a78902220" title="Return the atomic solvent accessible surface area (SASA)." alt="" coords="850,818,975,845"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="1502,1401,1630,1428"><area shape="rect" href="group__Vacc.html#g031408ad5ca9a5bdb7fd9ae1b6e08150" title="Get the set of points for this atom&#39;s solvent&#45;accessible surface." alt="" coords="835,666,990,693"><area shape="rect" href="group__Vpbe.html#ga843cef9ae694579b2e2ea9d87f80408" title="Get solvent molecule radius." alt="" coords="830,1122,995,1149"><area shape="rect" href="group__Vacc.html#g6e118e97d0ef09899dd376b6eda231a7" title="Set up an array of points corresponding to the SAS due to a particular atom." alt="" coords="1299,768,1414,794"><area shape="rect" href="group__Vatom.html#g37404117f53ad617e4371df8a7c849bb" title="Get atom ID." alt="" coords="1501,616,1631,642"><area shape="rect" href="group__Vacc.html#g7a741d87762baf5906802b6b9a670080" title="Build the solvent accessible surface (SAS) and calculate the solvent accessible surface..." alt="" coords="1083,869,1177,896"><area shape="rect" href="group__Vacc.html#g90b879964a5faa185a82dc2f7c736a15" title="Destroy the surface object." alt="" coords="1299,818,1414,845"><area shape="rect" href="vacc_8c.html#5c6356f19e11daf8d0dea84bd92cc226" title="Determines if a point is within the union of the spheres centered at the atomic centers..." alt="" coords="1510,742,1622,769"><area shape="rect" href="group__Vacc.html#gf645f700c467833a3611fadb606d16e5" title="Allocate and construct the surface object; do not assign surface points to positions..." alt="" coords="1513,793,1619,820"><area shape="rect" href="group__Vclist.html#g13dc2b36b0eb96f433ee79566bdd45e4" title="Return cell corresponding to specified position or return VNULL." alt="" coords="1695,742,1799,769"><area shape="rect" href="group__Vclist.html#ga67500e4f221d3f965c2ff48dee31593" title="Get the max probe radius value (in A) the cell list was constructed with." alt="" coords="1683,692,1811,718"><area shape="rect" href="group__Vacc.html#g7b5d73ff3b8ae17c8efad24ce683de78" title="Construct the surface object using previously allocated memory; do not assign surface..." alt="" coords="1690,793,1805,820"><area shape="rect" href="group__Vpbe.html#g97920614b496aee5cde2dd284f1ee8e7" title="Get maximum radius of ion species." alt="" coords="1274,1376,1439,1402"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g103f45f00534437713ff979d6277addf"></a><!-- doxytag: member="vpmg.h::Vpmg_force" ref="g103f45f00534437713ff979d6277addf" args="(Vpmg *thee, double *force, int atomID, Vsurf_Meth srfm, Vchrg_Meth chgm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_force           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&nbsp;</td>
          <td class="paramname"> <em>force</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>srfm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>chgm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calculate the total force on the specified atom in units of k_B T/AA. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd><ul>
<li>Using the force evaluation methods of Im et al (Roux group), Comput Phys Commun, 111, 59--75 (1998). However, this gives the whole (self-interactions included) force -- reaction field forces will have to be calculated at higher level. </li>
<li>No contributions are made from higher levels of focusing. </li>
</ul>
</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
3*sizeof(double) space to hold the force in units of k_B T/AA </td></tr>
<tr><td valign="top"><em>srfm</em>&nbsp;</td><td>
Valist ID of desired atom </td></tr>
<tr><td valign="top"><em>chgm</em>&nbsp;</td><td>
Surface discretization method Charge discretization method </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8c-source.html#l05211">Vpmg_dbForce()</a>, <a class="el" href="vpmg_8c-source.html#l05047">Vpmg_ibForce()</a>, and <a class="el" href="vpmg_8c-source.html#l05465">Vpmg_qfForce()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g103f45f00534437713ff979d6277addf_cgraph.png" border="0" usemap="#group__Vpmg_g103f45f00534437713ff979d6277addf_cgraph_map" alt=""></center>
<map name="group__Vpmg_g103f45f00534437713ff979d6277addf_cgraph_map">
<area shape="rect" href="group__Vpmg.html#gf6feff0d911fcb17703591f70a3fa099" title="Calculate the dielectric boundary forces on the specified atom in units of k_B T/AA..." alt="" coords="153,261,265,288"><area shape="rect" href="group__Vpmg.html#g882e62e37d397bcccb791133ddf73696" title="Calculate the osmotic pressure on the specified atom in units of k_B T/AA." alt="" coords="154,540,264,566"><area shape="rect" href="group__Vpmg.html#g2f6aafdc5ea2bf2fd1a5175231976732" title="Calculate the &quot;charge&#45;field&quot; force on the specified atom in units of k_B..." alt="" coords="154,818,264,845"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="602,768,714,794"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="816,438,952,465"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="820,261,948,288"><area shape="rect" href="group__Vpbe.html#g0aac5d03d89f4a9c5b5a93e853325e0d" title="Get solute dielectric constant." alt="" coords="337,109,478,136"><area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="334,160,481,186"><area shape="rect" href="group__Vpbe.html#gb2a970a797a66508f244cfbddb40edf9" title="Get temperature." alt="" coords="330,8,485,34"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="346,413,469,440"><area shape="rect" href="vpmg&#45;private_8h.html#1271687db8aa07b73c4ce3316943b72c" title="Selects a spline based surface method from either VSM_SPLINE, VSM_SPLINE5 or VSM_SPLINE7..." alt="" coords="340,261,476,288"><area shape="rect" href="group__Vacc.html#g86e395e15ef9298b4f9cc50b9e6da656" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="553,261,764,288"><area shape="rect" href="group__Vacc.html#g9f24abc998c44e87ff1805256e520f15" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="549,312,768,338"><area shape="rect" href="group__Vacc.html#gc90a25448405539eb8f2178874d496f8" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="549,362,768,389"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="368,717,448,744"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="316,514,500,541"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="356,565,460,592"><area shape="rect" href="group__Vpbe.html#g97920614b496aee5cde2dd284f1ee8e7" title="Get maximum radius of ion species." alt="" coords="325,616,490,642"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="342,666,473,693"><area shape="rect" href="vpmg&#45;private_8h.html#68e3819e4049a4b0c194289a2afb32ea" title="Charge&#45;field force due to a linear spline charge function." alt="" coords="352,869,464,896"><area shape="rect" href="vpmg&#45;private_8h.html#c55adeb810c3e971ebe1bf9b3a137246" title="Charge&#45;field force due to a cubic spline charge function." alt="" coords="352,768,464,794"><area shape="rect" href="vpmg&#45;private_8h.html#682bb08f7ef2b312b9da1c2ba6e0a25b" title="Charge&#45;field force due to a quintic spline charge function." alt="" coords="352,920,464,946"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="593,818,724,845"><area shape="rect" href="vpmg&#45;private_8h.html#50d8ef438d4a7a76d869fb256b24d372" title="Evaluate a cubic B&#45;spline." alt="" coords="622,717,694,744"><area shape="rect" href="vpmg&#45;private_8h.html#8a4a959a2448c20bfc3660f04077892e" title="Evaluate a cubic B&#45;spline derivative." alt="" coords="618,666,698,693"><area shape="rect" href="vpmg&#45;private_8h.html#c953c7091df8e4a1df53463baf8fe7ee" title="Evaluate a 5th Order B&#45;Spline (4th order polynomial)." alt="" coords="622,1072,694,1098"><area shape="rect" href="vpmg&#45;private_8h.html#91d1557ecff0ea7809aface06c0c179e" title="Evaluate a 5th Order B&#45;Spline derivative (4th order polynomial)." alt="" coords="618,970,698,997"><area shape="rect" href="vpmg&#45;private_8h.html#fcf864c3b65f0d536a2985d931dc4692" title="Return 2.5 plus difference of i &#45; f." alt="" coords="624,1021,693,1048"></map>
</div>

</div>
</div><p>
<a class="anchor" name="ga9db75d06df0aa446a98ec0318fcdc36"></a><!-- doxytag: member="vpmg.h::Vpmg_ibDirectPolForce" ref="ga9db75d06df0aa446a98ec0318fcdc36" args="(Vpmg *thee, Vgrid *perm, Vgrid *induced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_ibDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Ionic boundary direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g882e62e37d397bcccb791133ddf73696"></a><!-- doxytag: member="vpmg.h::Vpmg_ibForce" ref="g882e62e37d397bcccb791133ddf73696" args="(Vpmg *thee, double *force, int atomID, Vsurf_Meth srfm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_ibForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&nbsp;</td>
          <td class="paramname"> <em>force</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#g5ccf1935e3604af8c42bc644b3979304">Vsurf_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>srfm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calculate the osmotic pressure on the specified atom in units of k_B T/AA. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd><ul>
<li>Using the force evaluation methods of Im et al (Roux group), Comput Phys Commun, 111, 59--75 (1998). However, this gives the whole (self-interactions included) force -- reaction field forces will have to be calculated at higher level. </li>
<li>No contributions are made from higher levels of focusing. </li>
</ul>
</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
3*sizeof(double) space to hold the boundary force in units of k_B T/AA </td></tr>
<tr><td valign="top"><em>srfm</em>&nbsp;</td><td>
Valist ID of desired atom Surface discretization method </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00088">sVpbe::acc</a>, <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vpmgp_8h-source.html#l00131">sVpmgp::bcfl</a>, <a class="el" href="vhal_8h-source.html#l00220">BCFL_FOCUS</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vhal_8h-source.html#l00377">MAXION</a>, <a class="el" href="vpmgp_8h-source.html#l00086">sVpmgp::nonlin</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vatom_8h-source.html#l00078">sVatom::partID</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00136">sVpmg::splineWin</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="valist_8c-source.html#l00114">Valist_getAtom()</a>, <a class="el" href="vatom_8c-source.html#l00062">Vatom_getPosition()</a>, <a class="el" href="vatom_8c-source.html#l00104">Vatom_getRadius()</a>, <a class="el" href="vcap_8c-source.html#l00058">Vcap_exp()</a>, <a class="el" href="vpbe_8c-source.html#l00083">Vpbe_getBulkIonicStrength()</a>, <a class="el" href="vpbe_8c-source.html#l00467">Vpbe_getIons()</a>, <a class="el" href="vpbe_8c-source.html#l00126">Vpbe_getMaxIonRadius()</a>, <a class="el" href="vpbe_8c-source.html#l00147">Vpbe_getZkappa2()</a>, <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>, <a class="el" href="vpmg_8c-source.html#l01694">Vpmg_splineSelect()</a>, <a class="el" href="vhal_8h-source.html#l00444">VPMGSMALL</a>, <a class="el" href="vhal_8h-source.html#l00114">VSM_SPLINE</a>, <a class="el" href="vhal_8h-source.html#l00124">VSM_SPLINE3</a>, <a class="el" href="vhal_8h-source.html#l00128">VSM_SPLINE4</a>, <a class="el" href="vpmgp_8h-source.html#l00185">sVpmgp::xlen</a>, <a class="el" href="vpmgp_8h-source.html#l00191">sVpmgp::xmax</a>, <a class="el" href="vpmgp_8h-source.html#l00188">sVpmgp::xmin</a>, <a class="el" href="vpmgp_8h-source.html#l00186">sVpmgp::ylen</a>, <a class="el" href="vpmgp_8h-source.html#l00192">sVpmgp::ymax</a>, <a class="el" href="vpmgp_8h-source.html#l00189">sVpmgp::ymin</a>, <a class="el" href="vpmgp_8h-source.html#l00187">sVpmgp::zlen</a>, <a class="el" href="vpmgp_8h-source.html#l00193">sVpmgp::zmax</a>, and <a class="el" href="vpmgp_8h-source.html#l00190">sVpmgp::zmin</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01120">forceMG()</a>, and <a class="el" href="vpmg_8c-source.html#l05024">Vpmg_force()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g882e62e37d397bcccb791133ddf73696_cgraph.png" border="0" usemap="#group__Vpmg_g882e62e37d397bcccb791133ddf73696_cgraph_map" alt=""></center>
<map name="group__Vpmg_g882e62e37d397bcccb791133ddf73696_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="202,8,314,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="666,134,802,161"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="670,185,798,212"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="218,312,298,338"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="166,362,350,389"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="206,413,310,440"><area shape="rect" href="group__Vpbe.html#g97920614b496aee5cde2dd284f1ee8e7" title="Get maximum radius of ion species." alt="" coords="176,464,341,490"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="193,514,324,541"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="197,565,320,592"><area shape="rect" href="vpmg&#45;private_8h.html#1271687db8aa07b73c4ce3316943b72c" title="Selects a spline based surface method from either VSM_SPLINE, VSM_SPLINE5 or VSM_SPLINE7..." alt="" coords="190,185,326,212"><area shape="rect" href="group__Vacc.html#g86e395e15ef9298b4f9cc50b9e6da656" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="404,109,614,136"><area shape="rect" href="group__Vacc.html#g9f24abc998c44e87ff1805256e520f15" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="400,160,618,186"><area shape="rect" href="group__Vacc.html#gc90a25448405539eb8f2178874d496f8" title="Report gradient of spline&#45;based accessibility with respect to a particular atom normalized..." alt="" coords="400,210,618,237"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g86932d62c89ebf3cfff9fd83a2082505"></a><!-- doxytag: member="vpmg.h::Vpmg_ibMutualPolForce" ref="g86932d62c89ebf3cfff9fd83a2082505" args="(Vpmg *thee, Vgrid *induced, Vgrid *nlInduced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_ibMutualPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Ionic boundary mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Non-local induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g96bb6a425847b7b36e7393b54f8164ae"></a><!-- doxytag: member="vpmg.h::Vpmg_ibNLDirectPolForce" ref="g96bb6a425847b7b36e7393b54f8164ae" args="(Vpmg *thee, Vgrid *perm, Vgrid *nlInduced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_ibNLDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Ionic boundary direct polarization force between permanent multipoles and non-local induced dipoles based on 5th order Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g943dd7be6b277ec7a2cbda531c8ed4c5"></a><!-- doxytag: member="vpmg.h::Vpmg_ibPermanentMultipoleForce" ref="g943dd7be6b277ec7a2cbda531c8ed4c5" args="(Vpmg *thee, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_ibPermanentMultipoleForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Compute the ionic boundary force for permanent multipoles. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g7969f056027cc7b05b0c6630b52be213"></a><!-- doxytag: member="vpmg.h::Vpmg_memChk" ref="g7969f056027cc7b05b0c6630b52be213" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned long int Vpmg_memChk           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the memory used by this structure (and its contents) in bytes. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The memory used by this structure and its contents in bytes </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Object for memory check </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00096">sVpmg::vmem</a>.</p>

</div>
</div><p>
<a class="anchor" name="g74856c08e25f851236e0e9fdb2efe4e9"></a><!-- doxytag: member="vpmg.h::Vpmg_printColComp" ref="g74856c08e25f851236e0e9fdb2efe4e9" args="(Vpmg *thee, char path[72], char title[72], char mxtype[3], int flag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_printColComp           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&nbsp;</td>
          <td class="paramname"> <em>path</em>[72], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&nbsp;</td>
          <td class="paramname"> <em>title</em>[72], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&nbsp;</td>
          <td class="paramname"> <em>mxtype</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>flag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Print out a column-compressed sparse matrix in Harwell-Boeing format. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000002">Bug:</a></b></dt><dd>Can this path variable be replaced with a Vio socket? </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>path</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>title</em>&nbsp;</td><td>
The file to which the matrix is to be written </td></tr>
<tr><td valign="top"><em>mxtype</em>&nbsp;</td><td>
The title of the matrix </td></tr>
<tr><td valign="top"><em>flag</em>&nbsp;</td><td>
The type of REAL-valued matrix, a 3-character string of the form "R_A" where the '_' can be one of: <ul>
<li>S: symmetric matrix </li>
<li>U: unsymmetric matrix </li>
<li>H: Hermitian matrix </li>
<li>Z: skew-symmetric matrix </li>
<li>R: rectangular matrix The operator to compress: </li>
<li>0: Poisson operator </li>
<li>1: Linearization of the full Poisson-Boltzmann operator around the current solution </li>
</ul>
</td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00106">sVpmg::iparm</a>, <a class="el" href="vpmg_8h-source.html#l00108">sVpmg::iwork</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00107">sVpmg::rparm</a>, <a class="el" href="vpmg_8h-source.html#l00109">sVpmg::rwork</a>, and <a class="el" href="vpmg_8h-source.html#l00096">sVpmg::vmem</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01274">writematMG()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g0491b8552abe33bd484bc731437c51bf"></a><!-- doxytag: member="vpmg.h::Vpmg_qfAtomEnergy" ref="g0491b8552abe33bd484bc731437c51bf" args="(Vpmg *thee, Vatom *atom)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_qfAtomEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVatom.html">Vatom</a> *&nbsp;</td>
          <td class="paramname"> <em>atom</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the per-atom "fixed charge" contribution to the electrostatic energy. 
<p>
Using the solution at the finest mesh level, get the electrostatic energy due to the interaction of the fixed charges with the potential: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = q u(r), \]" src="form_11.png">
<p>
 where q$ is the charge and r is the location of the atom of interest. The result is returned in units of k_B T. Clearly, no self-interaction terms are removed. A factor a 1/2 has to be included to convert this to a real energy.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The value of this observable may be modified by setting restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The fixed charge electrostatic energy in units of k_B T. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atom</em>&nbsp;</td><td>
The Vpmg object The atom for energy calculations </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmgp_8h-source.html#l00131">sVpmgp::bcfl</a>, <a class="el" href="vhal_8h-source.html#l00220">BCFL_FOCUS</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vatom_8h-source.html#l00078">sVatom::partID</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="vatom_8c-source.html#l00118">Vatom_getCharge()</a>, <a class="el" href="vatom_8c-source.html#l00062">Vatom_getPosition()</a>, <a class="el" href="vpmg_8h-source.html#l00120">sVpmg::xf</a>, <a class="el" href="vpmg_8h-source.html#l00121">sVpmg::yf</a>, and <a class="el" href="vpmg_8h-source.html#l00122">sVpmg::zf</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01056">energyMG()</a>, and <a class="el" href="routines_8c-source.html#l01344">storeAtomEnergy()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g0491b8552abe33bd484bc731437c51bf_cgraph.png" border="0" usemap="#group__Vpmg_g0491b8552abe33bd484bc731437c51bf_cgraph_map" alt=""></center>
<map name="group__Vpmg_g0491b8552abe33bd484bc731437c51bf_cgraph_map">
<area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="207,7,338,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="205,58,341,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gd7de85ae8637ae7b81df2f7de034fb9d"></a><!-- doxytag: member="vpmg.h::Vpmg_qfDirectPolForce" ref="gd7de85ae8637ae7b81df2f7de034fb9d" args="(Vpmg *thee, Vgrid *perm, Vgrid *induced, int atomID, double force[3], double torque[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_qfDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>torque</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
q-Phi direct polarization force between permanent multipoles and induced dipoles, which are induced by the sum of the permanent intramolecular field and the permanent reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index </td></tr>
<tr><td valign="top"><em>torque</em>&nbsp;</td><td>
(returned) force (returned) torque </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="gbc99a910a365aa8c0e0efce577abb9af"></a><!-- doxytag: member="vpmg.h::Vpmg_qfEnergy" ref="gbc99a910a365aa8c0e0efce577abb9af" args="(Vpmg *thee, int extFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_qfEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>extFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the "fixed charge" contribution to the electrostatic energy. 
<p>
Using the solution at the finest mesh level, get the electrostatic energy due to the interaction of the fixed charges with the potential: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = \sum_i q_i u(r_i) \]" src="form_10.png">
<p>
 and return the result in units of k_B T. Clearly, no self-interaction terms are removed. A factor a 1/2 has to be included to convert this to a real energy.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The value of this observable may be modified by setting restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The fixed charge electrostatic energy in units of k_B T. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>extFlag</em>&nbsp;</td><td>
Vpmg object If this was a focused calculation, include (1 -- for serial calculations) or ignore (0 -- for parallel calculations) energy contributions from outside the focusing domain </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00137">sVpmg::chargeMeth</a>, <a class="el" href="vpmg_8h-source.html#l00154">sVpmg::useChargeMap</a>, <a class="el" href="vhal_8h-source.html#l00238">VCM_BSPL2</a>, <a class="el" href="vpmg_8c-source.html#l01507">Vpmg_qfEnergyPoint()</a>, and <a class="el" href="vpmg_8c-source.html#l01662">Vpmg_qfEnergyVolume()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01056">energyMG()</a>, <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, and <a class="el" href="vpmg_8c-source.html#l01136">Vpmg_energy()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_gbc99a910a365aa8c0e0efce577abb9af_cgraph.png" border="0" usemap="#group__Vpmg_gbc99a910a365aa8c0e0efce577abb9af_cgraph_map" alt=""></center>
<map name="group__Vpmg_gbc99a910a365aa8c0e0efce577abb9af_cgraph_map">
<area shape="rect" href="vpmg&#45;private_8h.html#0876512b1ee9f93ee0378334b886938c" title="Calculates charge&#45;potential energy using summation over delta function positions..." alt="" coords="183,109,333,135"><area shape="rect" href="vpmg&#45;private_8h.html#78687d08a4040d18d46337e1345b6dac" title="Calculates charge&#45;potential energy as integral over a volume." alt="" coords="177,185,339,211"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="417,7,529,34"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="389,58,557,85"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="407,109,538,135"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="405,159,541,186"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="411,210,534,237"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g2f6aafdc5ea2bf2fd1a5175231976732"></a><!-- doxytag: member="vpmg.h::Vpmg_qfForce" ref="g2f6aafdc5ea2bf2fd1a5175231976732" args="(Vpmg *thee, double *force, int atomID, Vchrg_Meth chgm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_qfForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&nbsp;</td>
          <td class="paramname"> <em>force</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vhal.html#gdd887856f01d4328b9a028110a5488a6">Vchrg_Meth</a>&nbsp;</td>
          <td class="paramname"> <em>chgm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calculate the "charge-field" force on the specified atom in units of k_B T/AA. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd><ul>
<li>Using the force evaluation methods of Im et al (Roux group), Comput Phys Commun, 111, 59--75 (1998). However, this gives the whole (self-interactions included) force -- reaction field forces will have to be calculated at higher level. </li>
<li>No contributions are made from higher levels of focusing. </li>
</ul>
</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if sucessful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
3*sizeof(double) space to hold the force in units of k_B T/A </td></tr>
<tr><td valign="top"><em>chgm</em>&nbsp;</td><td>
Valist ID of desired atom Charge discretization method </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8c-source.html#l05509">qfForceSpline1()</a>, <a class="el" href="vpmg_8c-source.html#l05645">qfForceSpline2()</a>, <a class="el" href="vpmg_8c-source.html#l05757">qfForceSpline4()</a>, <a class="el" href="vhal_8h-source.html#l00238">VCM_BSPL2</a>, <a class="el" href="vhal_8h-source.html#l00241">VCM_BSPL4</a>, and <a class="el" href="vhal_8h-source.html#l00235">VCM_TRIL</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01120">forceMG()</a>, and <a class="el" href="vpmg_8c-source.html#l05024">Vpmg_force()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g2f6aafdc5ea2bf2fd1a5175231976732_cgraph.png" border="0" usemap="#group__Vpmg_g2f6aafdc5ea2bf2fd1a5175231976732_cgraph_map" alt=""></center>
<map name="group__Vpmg_g2f6aafdc5ea2bf2fd1a5175231976732_cgraph_map">
<area shape="rect" href="vpmg&#45;private_8h.html#68e3819e4049a4b0c194289a2afb32ea" title="Charge&#45;field force due to a linear spline charge function." alt="" coords="169,210,281,237"><area shape="rect" href="vpmg&#45;private_8h.html#c55adeb810c3e971ebe1bf9b3a137246" title="Charge&#45;field force due to a cubic spline charge function." alt="" coords="169,261,281,287"><area shape="rect" href="vpmg&#45;private_8h.html#682bb08f7ef2b312b9da1c2ba6e0a25b" title="Charge&#45;field force due to a quintic spline charge function." alt="" coords="169,159,281,186"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="342,210,454,237"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="333,261,464,287"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="330,159,466,186"><area shape="rect" href="vpmg&#45;private_8h.html#50d8ef438d4a7a76d869fb256b24d372" title="Evaluate a cubic B&#45;spline." alt="" coords="362,311,434,338"><area shape="rect" href="vpmg&#45;private_8h.html#8a4a959a2448c20bfc3660f04077892e" title="Evaluate a cubic B&#45;spline derivative." alt="" coords="358,362,438,389"><area shape="rect" href="vpmg&#45;private_8h.html#c953c7091df8e4a1df53463baf8fe7ee" title="Evaluate a 5th Order B&#45;Spline (4th order polynomial)." alt="" coords="362,7,434,34"><area shape="rect" href="vpmg&#45;private_8h.html#91d1557ecff0ea7809aface06c0c179e" title="Evaluate a 5th Order B&#45;Spline derivative (4th order polynomial)." alt="" coords="358,58,438,85"><area shape="rect" href="vpmg&#45;private_8h.html#fcf864c3b65f0d536a2985d931dc4692" title="Return 2.5 plus difference of i &#45; f." alt="" coords="364,109,433,135"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g9b62a31ba895080ae38f8f9301bf34d9"></a><!-- doxytag: member="vpmg.h::Vpmg_qfMutualPolForce" ref="g9b62a31ba895080ae38f8f9301bf34d9" args="(Vpmg *thee, Vgrid *induced, Vgrid *nlInduced, int atomID, double force[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_qfMutualPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>induced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mutual polarization force for induced dipoles based on 5th order B-Splines. This force arises due to self-consistent convergence of the solute induced dipoles and reaction field. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>induced</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Induced dipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Non-local induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index (returned) force </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g48b654f6a24e060e5555f438f850cae3"></a><!-- doxytag: member="vpmg.h::Vpmg_qfNLDirectPolForce" ref="g48b654f6a24e060e5555f438f850cae3" args="(Vpmg *thee, Vgrid *perm, Vgrid *nlInduced, int atomID, double force[3], double torque[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_qfNLDirectPolForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVgrid.html">Vgrid</a> *&nbsp;</td>
          <td class="paramname"> <em>nlInduced</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>torque</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
q-Phi direct polarization force between permanent multipoles and non-local induced dipoles based on 5th Order B-Splines. Keep in mind that the "non-local" induced dipooles are just a mathematical quantity that result from differentiation of the AMOEBA polarization energy. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>perm</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>nlInduced</em>&nbsp;</td><td>
Permanent multipole potential </td></tr>
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Non-local induced dipole potential </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index </td></tr>
<tr><td valign="top"><em>torque</em>&nbsp;</td><td>
(returned) force (returned) torque </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="gfda741b9f0bdc8ef7b8bd623484db324"></a><!-- doxytag: member="vpmg.h::Vpmg_qfPermanentMultipoleEnergy" ref="gfda741b9f0bdc8ef7b8bd623484db324" args="(Vpmg *thee, int atomID)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_qfPermanentMultipoleEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Computes the permanent multipole electrostatic hydration energy (the polarization component of the hydration energy currently computed in TINKER). 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The permanent multipole electrostatic hydration energy </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Vpmg object Atom index </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g2faa5581fd5d20b1a78ccccbdb85b95a"></a><!-- doxytag: member="vpmg.h::Vpmg_qfPermanentMultipoleForce" ref="g2faa5581fd5d20b1a78ccccbdb85b95a" args="(Vpmg *thee, int atomID, double force[3], double torque[3])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_qfPermanentMultipoleForce           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>atomID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>force</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>torque</em>[3]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Computes the q-Phi Force for permanent multipoles based on 5th order B-splines. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Michael Schnieders </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>atomID</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>force</em>&nbsp;</td><td>
Atom index </td></tr>
<tr><td valign="top"><em>torque</em>&nbsp;</td><td>
(returned) force (returned) torque </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g72773d2eb289d3bf2d06ab23e198e926"></a><!-- doxytag: member="vpmg.h::Vpmg_qmEnergy" ref="g72773d2eb289d3bf2d06ab23e198e926" args="(Vpmg *thee, int extFlag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vpmg_qmEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>extFlag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the "mobile charge" contribution to the electrostatic energy. 
<p>
Using the solution at the finest mesh level, get the electrostatic energy due to the interaction of the mobile charges with the potential: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = \frac{1}{4 I_s} \sum_i c_i q_i^2 \int \kappa^2(x) e^{-q_i u(x)} dx \]" src="form_12.png">
<p>
 for the NPBE and <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = \frac{1}{2} \int \overline{\kappa}^2(x) u^2(x) dx \]" src="form_13.png">
<p>
 for the LPBE. Here i denotes the counterion species, I_s is the bulk ionic strength, kappa^2(x) is the modified Debye-Huckel parameter, c_i is the concentration of species i, q_i is the charge of species i, and u(x) is the dimensionless electrostatic potential. The energy is scaled to units of k_b T.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The value of this observable may be modified by setting restrictions on the subdomain over which it is calculated. Such limits can be set via Vpmg_setPart and are generally useful for parallel runs. </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The mobile charge electrostatic energy in units of k_B T. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>extFlag</em>&nbsp;</td><td>
Vpmg object If this was a focused calculation, include (1 -- for serial calculations) or ignore (0 -- for parallel calculations) energy contributions from outside the focusing domain </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00120">sVpbe::ipkey</a>, <a class="el" href="vhal_8h-source.html#l00163">IPKEY_SMPBE</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, and <a class="el" href="vpmg_8c-source.html#l01337">Vpmg_qmEnergySMPBE()</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l01056">energyMG()</a>, <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, and <a class="el" href="vpmg_8c-source.html#l01136">Vpmg_energy()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g72773d2eb289d3bf2d06ab23e198e926_cgraph.png" border="0" usemap="#group__Vpmg_g72773d2eb289d3bf2d06ab23e198e926_cgraph_map" alt=""></center>
<map name="group__Vpmg_g72773d2eb289d3bf2d06ab23e198e926_cgraph_map">
<area shape="rect" href="vpmg&#45;private_8h.html#9bbc2d7d63eea65e627e398cc05ee342" title="Vpmg_qmEnergy for SMPBE." alt="" coords="182,84,353,110"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="455,8,535,34"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="403,58,587,85"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="443,109,547,136"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="430,160,561,186"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gaef73d86f87bb23134c669f6a0dc571e"></a><!-- doxytag: member="vpmg.h::Vpmg_setPart" ref="gaef73d86f87bb23134c669f6a0dc571e" args="(Vpmg *thee, double lowerCorner[3], double upperCorner[3], int bflags[6])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_setPart           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>lowerCorner</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>upperCorner</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>bflags</em>[6]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set partition information which restricts the calculation of observables to a (rectangular) subset of the problem domain. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>lowerCorner</em>&nbsp;</td><td>
Vpmg object </td></tr>
<tr><td valign="top"><em>upperCorner</em>&nbsp;</td><td>
Partition lower corner </td></tr>
<tr><td valign="top"><em>bflags</em>&nbsp;</td><td>
Partition upper corner Booleans indicating whether a particular processor is on the boundary with another partition. 0 if the face is not bounded (next to) another partition, and 1 otherwise. </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vatom_8h-source.html#l00078">sVatom::partID</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vatom_8h-source.html#l00075">sVatom::position</a>, <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>, <a class="el" href="valist_8c-source.html#l00114">Valist_getAtom()</a>, <a class="el" href="valist_8c-source.html#l00104">Valist_getNumberAtoms()</a>, <a class="el" href="vhal_8h-source.html#l00432">VAPBS_BACK</a>, <a class="el" href="vhal_8h-source.html#l00438">VAPBS_DOWN</a>, <a class="el" href="vhal_8h-source.html#l00414">VAPBS_FRONT</a>, <a class="el" href="vhal_8h-source.html#l00426">VAPBS_LEFT</a>, <a class="el" href="vhal_8h-source.html#l00408">VAPBS_RIGHT</a>, <a class="el" href="vhal_8h-source.html#l00420">VAPBS_UP</a>, <a class="el" href="vhal_8h-source.html#l00444">VPMGSMALL</a>, <a class="el" href="vpmgp_8h-source.html#l00114">sVpmgp::xcent</a>, <a class="el" href="vpmgp_8h-source.html#l00115">sVpmgp::ycent</a>, and <a class="el" href="vpmgp_8h-source.html#l00116">sVpmgp::zcent</a>.</p>

<p>Referenced by <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, and <a class="el" href="routines_8c-source.html#l01014">setPartMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_gaef73d86f87bb23134c669f6a0dc571e_cgraph.png" border="0" usemap="#group__Vpmg_gaef73d86f87bb23134c669f6a0dc571e_cgraph_map" alt=""></center>
<map name="group__Vpmg_gaef73d86f87bb23134c669f6a0dc571e_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="190,7,302,34"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="162,58,330,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g5ff93c6726088e1e33034f218d761017"></a><!-- doxytag: member="vpmg.h::Vpmg_solve" ref="g5ff93c6726088e1e33034f218d761017" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_solve           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Solve the PBE using PMG. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Vpmg object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00110">sVpmg::a1cf</a>, <a class="el" href="vpmg_8h-source.html#l00112">sVpmg::a2cf</a>, <a class="el" href="vpmg_8h-source.html#l00114">sVpmg::a3cf</a>, <a class="el" href="vpmg_8h-source.html#l00116">sVpmg::ccf</a>, <a class="el" href="vpmg_8h-source.html#l00104">sVpmg::charge</a>, <a class="el" href="vpmg_8h-source.html#l00100">sVpmg::epsx</a>, <a class="el" href="vpmg_8h-source.html#l00101">sVpmg::epsy</a>, <a class="el" href="vpmg_8h-source.html#l00102">sVpmg::epsz</a>, <a class="el" href="vpmg_8h-source.html#l00117">sVpmg::fcf</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmg_8h-source.html#l00123">sVpmg::gxcf</a>, <a class="el" href="vpmg_8h-source.html#l00124">sVpmg::gycf</a>, <a class="el" href="vpmg_8h-source.html#l00125">sVpmg::gzcf</a>, <a class="el" href="vpmg_8h-source.html#l00106">sVpmg::iparm</a>, <a class="el" href="vpmg_8h-source.html#l00108">sVpmg::iwork</a>, <a class="el" href="vpmg_8h-source.html#l00103">sVpmg::kappa</a>, <a class="el" href="vpmgp_8h-source.html#l00132">sVpmgp::key</a>, <a class="el" href="vpmgp_8h-source.html#l00140">sVpmgp::meth</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00107">sVpmg::rparm</a>, <a class="el" href="vpmg_8h-source.html#l00109">sVpmg::rwork</a>, <a class="el" href="vpmg_8h-source.html#l00118">sVpmg::tcf</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="vpbe_8c-source.html#l00147">Vpbe_getZkappa2()</a>, <a class="el" href="vhal_8h-source.html#l00444">VPMGSMALL</a>, <a class="el" href="vpmg_8h-source.html#l00120">sVpmg::xf</a>, <a class="el" href="vpmg_8h-source.html#l00121">sVpmg::yf</a>, and <a class="el" href="vpmg_8h-source.html#l00122">sVpmg::zf</a>.</p>

<p>Referenced by <a class="el" href="routines_8c-source.html#l00980">solveMG()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g5ff93c6726088e1e33034f218d761017_cgraph.png" border="0" usemap="#group__Vpmg_g5ff93c6726088e1e33034f218d761017_cgraph_map" alt=""></center>
<map name="group__Vpmg_g5ff93c6726088e1e33034f218d761017_cgraph_map">
<area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="152,8,282,34"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gc46c3028f8a1b5940afcf6df39e4e2c3"></a><!-- doxytag: member="vpmg.h::Vpmg_solveLaplace" ref="gc46c3028f8a1b5940afcf6df39e4e2c3" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vpmg_solveLaplace           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Solve Poisson's equation with a homogeneous Laplacian operator using the solvent dielectric constant. This solution is performed by a sine wave decomposition. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is really only for testing purposes as the PMG multigrid solver can solve the homogeneous system much more quickly. Perhaps we should implement an FFT version at some point... </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Vpmg object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpmg_8h-source.html#l00104">sVpmg::charge</a>, <a class="el" href="vpmg_8h-source.html#l00117">sVpmg::fcf</a>, <a class="el" href="vpmg_8h-source.html#l00140">sVpmg::filled</a>, <a class="el" href="vpmg_8h-source.html#l00123">sVpmg::gxcf</a>, <a class="el" href="vpmg_8h-source.html#l00124">sVpmg::gycf</a>, <a class="el" href="vpmg_8h-source.html#l00125">sVpmg::gzcf</a>, <a class="el" href="vpmgp_8h-source.html#l00083">sVpmgp::hx</a>, <a class="el" href="vpmgp_8h-source.html#l00084">sVpmgp::hy</a>, <a class="el" href="vpmgp_8h-source.html#l00085">sVpmgp::hzed</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00118">sVpmg::tcf</a>, <a class="el" href="vpmg_8h-source.html#l00119">sVpmg::u</a>, <a class="el" href="vpbe_8c-source.html#l00112">Vpbe_getSolventDiel()</a>, and <a class="el" href="vpmg_8c-source.html#l06094">zlapSolve()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_gc46c3028f8a1b5940afcf6df39e4e2c3_cgraph.png" border="0" usemap="#group__Vpmg_gc46c3028f8a1b5940afcf6df39e4e2c3_cgraph_map" alt=""></center>
<map name="group__Vpmg_gc46c3028f8a1b5940afcf6df39e4e2c3_cgraph_map">
<area shape="rect" href="group__Vpbe.html#g71c1fc1e8901630a97cf0f2bf0fcb18f" title="Get solvent dielectric constant." alt="" coords="201,7,347,34"><area shape="rect" href="vpmg&#45;private_8h.html#3667719ad7b6d35bb4ac587513be8b5c" title="Calculate the solution to Poisson&#39;s equation with a simple Laplacian operator..." alt="" coords="234,58,314,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g7b7c6cbfc1c468da596efff1d51fd28a"></a><!-- doxytag: member="vpmg.h::Vpmg_unsetPart" ref="g7b7c6cbfc1c468da596efff1d51fd28a" args="(Vpmg *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vpmg_unsetPart           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVpmg.html">Vpmg</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Remove partition restrictions. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>thee</em>&nbsp;</td><td>
Vpmg object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vpmgp_8h-source.html#l00079">sVpmgp::nx</a>, <a class="el" href="vpmgp_8h-source.html#l00080">sVpmgp::ny</a>, <a class="el" href="vpmgp_8h-source.html#l00081">sVpmgp::nz</a>, <a class="el" href="vatom_8h-source.html#l00078">sVatom::partID</a>, <a class="el" href="vpmg_8h-source.html#l00098">sVpmg::pbe</a>, <a class="el" href="vpmg_8h-source.html#l00097">sVpmg::pmgp</a>, <a class="el" href="vpmg_8h-source.html#l00126">sVpmg::pvec</a>, <a class="el" href="valist_8c-source.html#l00114">Valist_getAtom()</a>, and <a class="el" href="valist_8c-source.html#l00104">Valist_getNumberAtoms()</a>.</p>

<p>Referenced by <a class="el" href="vpmg_8c-source.html#l02127">extEnergy()</a>, and <a class="el" href="vpmg_8c-source.html#l00137">Vpmg_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vpmg_g7b7c6cbfc1c468da596efff1d51fd28a_cgraph.png" border="0" usemap="#group__Vpmg_g7b7c6cbfc1c468da596efff1d51fd28a_cgraph_map" alt=""></center>
<map name="group__Vpmg_g7b7c6cbfc1c468da596efff1d51fd28a_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="206,7,318,34"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="178,58,346,85"></map>
</div>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Feb 12 06:23:51 2009 for APBS by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address>
</body>
</html>