Sophie

Sophie

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

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: Vfetk 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>Vfetk class</h1>FEtk master class (interface between FEtk and APBS).  
<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="structsVfetk.html">sVfetk</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains public data members for Vfetk class/module.  <a href="structsVfetk.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsVfetk__LocalVar.html">sVfetk_LocalVar</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vfetk LocalVar subclass.  <a href="structsVfetk__LocalVar.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="vfetk_8h.html">vfetk.h</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains declarations for class Vfetk. <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="vfetk_8c.html">vfetk.c</a></td></tr>

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

<p>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g925ca870e2f549e3959f5a4c13353be2"></a><!-- doxytag: member="Vfetk::VRINGMAX" ref="g925ca870e2f549e3959f5a4c13353be2" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g925ca870e2f549e3959f5a4c13353be2">VRINGMAX</a>&nbsp;&nbsp;&nbsp;1000</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of simplices in a simplex ring. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g85534b6bb193629d9d1fd9dada92aacf"></a><!-- doxytag: member="Vfetk::VATOMMAX" ref="g85534b6bb193629d9d1fd9dada92aacf" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g85534b6bb193629d9d1fd9dada92aacf">VATOMMAX</a>&nbsp;&nbsp;&nbsp;1000000</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of atoms associated with a vertex. <br></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd4ff27df517f29ff2c62c8ea09072a9a"></a><!-- doxytag: member="Vfetk::Vfetk_LsolvType" ref="gd4ff27df517f29ff2c62c8ea09072a9a" args="" -->
typedef enum <a class="el" href="group__Vfetk.html#g0907bf1ea39b217715a8e6fb480bcaeb">eVfetk_LsolvType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gd4ff27df517f29ff2c62c8ea09072a9a">Vfetk_LsolvType</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declare FEMparm_LsolvType type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g0ae7e4598a4dfa736d291a33d341c808"></a><!-- doxytag: member="Vfetk::Vfetk_MeshLoad" ref="g0ae7e4598a4dfa736d291a33d341c808" args="" -->
typedef enum <a class="el" href="group__Vfetk.html#g983fd714f6d8ee74257eb04fd85f7e64">eVfetk_MeshLoad</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g0ae7e4598a4dfa736d291a33d341c808">Vfetk_MeshLoad</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declare FEMparm_GuessType type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9eb08aef7e138157fb80fae1e4734bfd"></a><!-- doxytag: member="Vfetk::Vfetk_NsolvType" ref="g9eb08aef7e138157fb80fae1e4734bfd" args="" -->
typedef enum <a class="el" href="group__Vfetk.html#gc13393fb20a9b60fbc804cc2da797994">eVfetk_NsolvType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g9eb08aef7e138157fb80fae1e4734bfd">Vfetk_NsolvType</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declare FEMparm_NsolvType type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g43a9e71e84198968cbe25331e23a9946"></a><!-- doxytag: member="Vfetk::Vfetk_GuessType" ref="g43a9e71e84198968cbe25331e23a9946" args="" -->
typedef enum <a class="el" href="group__Vfetk.html#ge86ea86a8b8b90820e4ffe91a2528303">eVfetk_GuessType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g43a9e71e84198968cbe25331e23a9946">Vfetk_GuessType</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declare FEMparm_GuessType type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gf1c9f6712d62ba31b38ebbcface6eaf5"></a><!-- doxytag: member="Vfetk::Vfetk_PrecType" ref="gf1c9f6712d62ba31b38ebbcface6eaf5" args="" -->
typedef enum <a class="el" href="group__Vfetk.html#gdc47cb025e2518628d09b7522c5ce9e0">eVfetk_PrecType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gf1c9f6712d62ba31b38ebbcface6eaf5">Vfetk_PrecType</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declare FEMparm_GuessType type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g3278b87b37cf1911f986521b40a9e7f7"></a><!-- doxytag: member="Vfetk::Vfetk_LocalVar" ref="g3278b87b37cf1911f986521b40a9e7f7" args="" -->
typedef struct <a class="el" href="structsVfetk__LocalVar.html">sVfetk_LocalVar</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g3278b87b37cf1911f986521b40a9e7f7">Vfetk_LocalVar</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declaration of the Vfetk_LocalVar subclass as the Vfetk_LocalVar structure. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd4361408b637321dd777408c6e79e191"></a><!-- doxytag: member="Vfetk::Vfetk" ref="gd4361408b637321dd777408c6e79e191" args="" -->
typedef struct <a class="el" href="structsVfetk.html">sVfetk</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gd4361408b637321dd777408c6e79e191">Vfetk</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Declaration of the Vfetk class as the Vfetk structure. <br></td></tr>
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g0907bf1ea39b217715a8e6fb480bcaeb">eVfetk_LsolvType</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg0907bf1ea39b217715a8e6fb480bcaeb79c08336fe9f91bca81326cb24628579">VLT_SLU</a> = 0, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg0907bf1ea39b217715a8e6fb480bcaebc922b471c1bebe4fdee86bb62420ef50">VLT_MG</a> = 1, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg0907bf1ea39b217715a8e6fb480bcaebc7a1fcaf1acae2239ed423e062b8da3e">VLT_CG</a> = 2, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg0907bf1ea39b217715a8e6fb480bcaeb9e8ddc8d7e06a0c00e6b11c3d795358a">VLT_BCG</a> = 3
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Linear solver type.  <a href="group__Vfetk.html#g0907bf1ea39b217715a8e6fb480bcaeb">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g983fd714f6d8ee74257eb04fd85f7e64">eVfetk_MeshLoad</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg983fd714f6d8ee74257eb04fd85f7e64741922e00a746924cfab60586427bda3">VML_DIRICUBE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg983fd714f6d8ee74257eb04fd85f7e6482aafe9b8ad86202e5db686dc5a8a3c8">VML_NEUMCUBE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gg983fd714f6d8ee74257eb04fd85f7e64915bea688c881263d25d8026f8d3fddd">VML_EXTERNAL</a>
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mesh loading operation.  <a href="group__Vfetk.html#g983fd714f6d8ee74257eb04fd85f7e64">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gc13393fb20a9b60fbc804cc2da797994">eVfetk_NsolvType</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggc13393fb20a9b60fbc804cc2da7979941a4fdde4d4a9515af300ef23b6d7acdd">VNT_NEW</a> = 0, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggc13393fb20a9b60fbc804cc2da79799417ef9aaa047d540a59688087090ea31e">VNT_INC</a> = 1, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggc13393fb20a9b60fbc804cc2da7979941adcc75d4f8f810301c7012aa612d8dc">VNT_ARC</a> = 2
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Non-linear solver type.  <a href="group__Vfetk.html#gc13393fb20a9b60fbc804cc2da797994">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#ge86ea86a8b8b90820e4ffe91a2528303">eVfetk_GuessType</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gge86ea86a8b8b90820e4ffe91a2528303cef2f75da1dede20ad46617c90cedf7d">VGT_ZERO</a> = 0, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gge86ea86a8b8b90820e4ffe91a25283032031ed6ed19f69a42fb498e1862d3030">VGT_DIRI</a> = 1, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#gge86ea86a8b8b90820e4ffe91a252830337c983520e9dc5f189afd2f8778a5e3c">VGT_PREV</a> = 2
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initial guess type.  <a href="group__Vfetk.html#ge86ea86a8b8b90820e4ffe91a2528303">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gdc47cb025e2518628d09b7522c5ce9e0">eVfetk_PrecType</a> { <br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggdc47cb025e2518628d09b7522c5ce9e06219934b8d4d5e4a847dc3f75ffe9432">VPT_IDEN</a> = 0, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggdc47cb025e2518628d09b7522c5ce9e03a149ed46e9f4ac954676f197573a099">VPT_DIAG</a> = 1, 
<br>
&nbsp;&nbsp;<a class="el" href="group__Vfetk.html#ggdc47cb025e2518628d09b7522c5ce9e0421cf15849be3c69439c2cffec1ec887">VPT_MG</a> = 2
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Preconditioner type.  <a href="group__Vfetk.html#gdc47cb025e2518628d09b7522c5ce9e0">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">Gem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d">Vfetk_getGem</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a pointer to the Gem (grid manager) object.  <a href="#ge996913edc49d3be58cfad38cf2ead4d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">AM *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gf9e2cfba465b60e1cbd0fa228f969596">Vfetk_getAM</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a pointer to the AM (algebra manager) object.  <a href="#gf9e2cfba465b60e1cbd0fa228f969596"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structsVpbe.html">Vpbe</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g1231ccdd3888cc5f45ade93470c4cd1b">Vfetk_getVpbe</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a pointer to the Vpbe (PBE manager) object.  <a href="#g1231ccdd3888cc5f45ade93470c4cd1b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structsVcsm.html">Vcsm</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3">Vfetk_getVcsm</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a pointer to the Vcsm (charge-simplex map) object.  <a href="#ge16c17016c3f527e1639f0e2e2ece7f3"></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__Vfetk.html#g64e3f8c9df71e989da14be147d378625">Vfetk_getAtomColor</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int iatom)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the partition information for a particular atom.  <a href="#g64e3f8c9df71e989da14be147d378625"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g851988acbdf7739d5bd979defe7ae90d">Vfetk_ctor</a> (<a class="el" href="structsVpbe.html">Vpbe</a> *pbe, <a class="el" href="group__Vhal.html#ga0aabb1579af98f26effe7796b2d0a0c">Vhal_PBEType</a> type)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for Vfetk object.  <a href="#g851988acbdf7739d5bd979defe7ae90d"></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__Vfetk.html#g8c63795e10686e806cb369af8f543387">Vfetk_ctor2</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, <a class="el" href="structsVpbe.html">Vpbe</a> *pbe, <a class="el" href="group__Vhal.html#ga0aabb1579af98f26effe7796b2d0a0c">Vhal_PBEType</a> type)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FORTRAN stub constructor for Vfetk object.  <a href="#g8c63795e10686e806cb369af8f543387"></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__Vfetk.html#g79f12393399e3ba28244d96dbd0bca4e">Vfetk_dtor</a> (<a class="el" href="structsVfetk.html">Vfetk</a> **thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Object destructor.  <a href="#g79f12393399e3ba28244d96dbd0bca4e"></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__Vfetk.html#gc300393d5c7bdda4b66389a24127d138">Vfetk_dtor2</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FORTRAN stub object destructor.  <a href="#gc300393d5c7bdda4b66389a24127d138"></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__Vfetk.html#g414150bb3abf21e2d461b7fd596befa9">Vfetk_getSolution</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int *length)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create an array containing the solution (electrostatic potential in units of <img class="formulaInl" alt="$k_B T/e$" src="form_48.png">) at the finest mesh level.  <a href="#g414150bb3abf21e2d461b7fd596befa9"></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__Vfetk.html#gf64eaf3618d20138562a8cc5ba595f28">Vfetk_setParameters</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, <a class="el" href="structsPBEparm.html">PBEparm</a> *pbeparm, <a class="el" href="structsFEMparm.html">FEMparm</a> *feparm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the parameter objects.  <a href="#gf64eaf3618d20138562a8cc5ba595f28"></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__Vfetk.html#g8d59079781d2ee65d5073de3b63c530a">Vfetk_energy</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int color, int nonlin)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the total electrostatic energy.  <a href="#g8d59079781d2ee65d5073de3b63c530a"></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__Vfetk.html#g8fe6ab903982db4198a1d075b9ff5021">Vfetk_dqmEnergy</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int color)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the "mobile charge" and "polarization" contributions to the electrostatic energy.  <a href="#g8fe6ab903982db4198a1d075b9ff5021"></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__Vfetk.html#gdfc571213f31e96d961f0828fa8fcda7">Vfetk_qfEnergy</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int color)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the "fixed charge" contribution to the electrostatic energy.  <a href="#gdfc571213f31e96d961f0828fa8fcda7"></a><br></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__Vfetk.html#g1317d1cbf17e934f5b88f9238bf763f6">Vfetk_memChk</a> (<a class="el" href="structsVfetk.html">Vfetk</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="#g1317d1cbf17e934f5b88f9238bf763f6"></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__Vfetk.html#g4be8c4c7a641a5fa2c5f8e2ae02d00fb">Vfetk_setAtomColors</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transfer color (partition ID) information frmo a partitioned mesh to the atoms.  <a href="#g4be8c4c7a641a5fa2c5f8e2ae02d00fb"></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__Vfetk.html#g5b3d793fc3603320481b598c85f2201d">Bmat_printHB</a> (Bmat *thee, char *fname)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a Bmat to disk in Harwell-Boeing sparse matrix format.  <a href="#g5b3d793fc3603320481b598c85f2201d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">Vrc_Codes&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#ge473241047881ecd91d72cba8b037999">Vfetk_genCube</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, double center[3], double length[3], <a class="el" href="group__Vfetk.html#g0ae7e4598a4dfa736d291a33d341c808">Vfetk_MeshLoad</a> meshType)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a rectangular mesh (in the current Vfetk object).  <a href="#ge473241047881ecd91d72cba8b037999"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">Vrc_Codes&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gfd508383dd1b2fbcacad0aee73373b57">Vfetk_loadMesh</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, double center[3], double length[3], <a class="el" href="group__Vfetk.html#g0ae7e4598a4dfa736d291a33d341c808">Vfetk_MeshLoad</a> meshType, Vio *sock)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Loads a mesh into the Vfetk (and associated) object(s).  <a href="#gfd508383dd1b2fbcacad0aee73373b57"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">PDE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#g4bb67f5500dd28dcd582d920b50d0b4e">Vfetk_PDE_ctor</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *fetk)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs the FEtk PDE object.  <a href="#g4bb67f5500dd28dcd582d920b50d0b4e"></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__Vfetk.html#g40b301931083038af40312b49b167794">Vfetk_PDE_ctor2</a> (PDE *thee, <a class="el" href="structsVfetk.html">Vfetk</a> *fetk)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Intializes the FEtk PDE object.  <a href="#g40b301931083038af40312b49b167794"></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__Vfetk.html#gf53be91ac6774829c8f377c15dda8ea5">Vfetk_PDE_dtor</a> (PDE **thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroys FEtk PDE object.  <a href="#gf53be91ac6774829c8f377c15dda8ea5"></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__Vfetk.html#gea58e1b29973b503b24ef85c08320253">Vfetk_PDE_dtor2</a> (PDE *thee)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">FORTRAN stub: destroys FEtk PDE object.  <a href="#gea58e1b29973b503b24ef85c08320253"></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__Vfetk.html#g850c1f0593b2b3ba8ad2795b5642d340">Vfetk_PDE_initAssemble</a> (PDE *thee, int ip[], double rp[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do once-per-assembly initialization.  <a href="#g850c1f0593b2b3ba8ad2795b5642d340"></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__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa">Vfetk_PDE_initElement</a> (PDE *thee, int elementType, int chart, double tvx[][VAPBS_DIM], void *data)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do once-per-element initialization.  <a href="#gecb946cbd53bd9aeddd67c1e4494b6fa"></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__Vfetk.html#g92f682b4b349b1236be7306b8091a6f0">Vfetk_PDE_initFace</a> (PDE *thee, int faceType, int chart, double tnvec[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do once-per-face initialization.  <a href="#g92f682b4b349b1236be7306b8091a6f0"></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__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1">Vfetk_PDE_initPoint</a> (PDE *thee, int pointType, int chart, double txq[], double tU[], double tdU[][VAPBS_DIM])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do once-per-point initialization.  <a href="#gb2c9190ba012844d51836146e4c0a6c1"></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__Vfetk.html#g6ab828dbe466030949f3332a6370a22a">Vfetk_PDE_Fu</a> (PDE *thee, int key, double F[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluate strong form of PBE. For interior points, this is: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ -\nabla \cdot \epsilon \nabla u + b(u) - f \]" src="form_56.png">
<p>
 where <img class="formulaInl" alt="$b(u)$" src="form_57.png"> is the (possibly nonlinear) mobile ion term and <img class="formulaInl" alt="$f$" src="form_58.png"> is the source charge distribution term (for PBE) or the induced surface charge distribution (for RPBE). For an interior-boundary (simplex face) point, this is: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ [\epsilon(x) \nabla u(x) \cdot n(x)]_{x=0^+} - [\epsilon(x) \nabla u(x) \cdot n(x)]_{x=0^-} \]" src="form_59.png">
<p>
 where <img class="formulaInl" alt="$n(x)$" src="form_60.png"> is the normal to the simplex face and the term represents the jump in dielectric displacement across the face. There is no outer-boundary contribution for this problem.  <a href="#g6ab828dbe466030949f3332a6370a22a"></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__Vfetk.html#gd8bfaaca31087ca5c98663f1a9839bcc">Vfetk_PDE_Fu_v</a> (PDE *thee, int key, double V[], double dV[][VAPBS_DIM])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is the weak form of the PBE; i.e. the strong form integrated with a test function to give: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int_\Omega \left[ \epsilon \nabla u \cdot \nabla v + b(u) v - f v \right] dx \]" src="form_61.png">
<p>
 where <img class="formulaInl" alt="$b(u)$" src="form_57.png"> denotes the mobile ion term.  <a href="#gd8bfaaca31087ca5c98663f1a9839bcc"></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__Vfetk.html#g58889daff822d088b8286402228eb8e2">Vfetk_PDE_DFu_wv</a> (PDE *thee, int key, double W[], double dW[][VAPBS_DIM], double V[], double dV[][VAPBS_DIM])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is the linearization of the weak form of the PBE; e.g., for use in a Newton iteration. This is the functional linearization of the strong form integrated with a test function to give: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int_\Omega \left[ \epsilon \nabla w \cdot \nabla v + b'(u) w v - f v \right] dx \]" src="form_62.png">
<p>
 where <img class="formulaInl" alt="$b'(u)$" src="form_63.png"> denotes the functional derivation of the mobile ion term.  <a href="#g58889daff822d088b8286402228eb8e2"></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__Vfetk.html#gd8b11d6436d7ea407c94ac79eb1f9e99">Vfetk_PDE_delta</a> (PDE *thee, int type, int chart, double txq[], void *user, double F[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluate a (discretized) delta function source term at the given point.  <a href="#gd8b11d6436d7ea407c94ac79eb1f9e99"></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__Vfetk.html#gc37aeabeafd642e7a67b0654497ce2ab">Vfetk_PDE_u_D</a> (PDE *thee, int type, int chart, double txq[], double F[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluate the Dirichlet boundary condition at the given point.  <a href="#gc37aeabeafd642e7a67b0654497ce2ab"></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__Vfetk.html#g0d6f246e3a44d57b2907972efe97bb14">Vfetk_PDE_u_T</a> (PDE *thee, int type, int chart, double txq[], double F[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluate the "true solution" at the given point for comparison with the numerical solution.  <a href="#g0d6f246e3a44d57b2907972efe97bb14"></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__Vfetk.html#g877160adf876489f6493322cf34831d9">Vfetk_PDE_bisectEdge</a> (int dim, int dimII, int edgeType, int chart[], double vx[][VAPBS_DIM])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Define the way manifold edges are bisected.  <a href="#g877160adf876489f6493322cf34831d9"></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__Vfetk.html#gab7c03cc5568407794999c0f617ab889">Vfetk_PDE_mapBoundary</a> (int dim, int dimII, int vertexType, int chart, double vx[VAPBS_DIM])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Map a boundary point to some pre-defined shape.  <a href="#gab7c03cc5568407794999c0f617ab889"></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__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2">Vfetk_PDE_markSimplex</a> (int dim, int dimII, int simplexType, int faceType[VAPBS_NVS], int vertexType[VAPBS_NVS], int chart[], double vx[][VAPBS_DIM], void *simplex)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User-defined error estimator -- in our case, a geometry-based refinement method; forcing simplex refinement at the dielectric boundary and (for non-regularized PBE) the charges.  <a href="#gc35880a0b1dcab29fb0eb12aeae116b2"></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__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c">Vfetk_PDE_oneChart</a> (int dim, int dimII, int objType, int chart[], double vx[][VAPBS_DIM], int dimV)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unify the chart for different coordinate systems -- a no-op for us.  <a href="#g0e48a1a433ae34229a1cf5157260eb8c"></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__Vfetk.html#gcd6aede0ecf4ee5b7cd103a68a28aeee">Vfetk_PDE_Ju</a> (PDE *thee, int key)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Energy functional. This returns the energy (less delta function terms) in the form: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ c^{-1}/2 \int (\epsilon (\nabla u)^2 + \kappa^2 (cosh u - 1)) dx \]" src="form_64.png">
<p>
 for a 1:1 electrolyte where <img class="formulaInl" alt="$c$" src="form_65.png"> is the output from Vpbe_getZmagic.  <a href="#gcd6aede0ecf4ee5b7cd103a68a28aeee"></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__Vfetk.html#g130f353b0f7c1c432f9e208a43e645b1">Vfetk_externalUpdateFunction</a> (SS **simps, int num)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">External hook to simplex subdivision routines in Gem. Called each time a simplex is subdivided (we use it to update the charge-simplex map).  <a href="#g130f353b0f7c1c432f9e208a43e645b1"></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__Vfetk.html#g0ba7af67b39b140e8150e5699eb2ad31">Vfetk_PDE_simplexBasisInit</a> (int key, int dim, int comp, int *ndof, int dof[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the bases for the trial or the test space, for a particular component of the system, at all quadrature points on the master simplex element.  <a href="#g0ba7af67b39b140e8150e5699eb2ad31"></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__Vfetk.html#gb42e012aef0ff3f23862dacdbaf86f0a">Vfetk_PDE_simplexBasisForm</a> (int key, int dim, int comp, int pdkey, double xq[], double basis[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluate the bases for the trial or test space, for a particular component of the system, at all quadrature points on the master simplex element.  <a href="#gb42e012aef0ff3f23862dacdbaf86f0a"></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__Vfetk.html#gcc1cb65fc774540f00795cfde20d9532">Vfetk_readMesh</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, int skey, Vio *sock)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read in mesh and initialize associated internal structures.  <a href="#gcc1cb65fc774540f00795cfde20d9532"></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__Vfetk.html#g2f59ed59d82530c900326b5aa6f101cd">Vfetk_dumpLocalVar</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Debugging routine to print out local variables used by PDE object.  <a href="#g2f59ed59d82530c900326b5aa6f101cd"></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__Vfetk.html#gc16966273dd20c0a4eb7e3ef7f2f0d84">Vfetk_fillArray</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, Bvec *vec, <a class="el" href="group__Vhal.html#gdfc214425db779e6548c11fab04ab043">Vdata_Type</a> type)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fill an array with the specified data.  <a href="#gc16966273dd20c0a4eb7e3ef7f2f0d84"></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__Vfetk.html#g40b0e35447fa6d193bd2fdf2f4a0a86d">Vfetk_write</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, const char *iodev, const char *iofmt, const char *thost, const char *fname, Bvec *vec, <a class="el" href="group__Vhal.html#gc4f593940585c6a15518f6a7e60ac255">Vdata_Format</a> format)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Write out data.  <a href="#g40b0e35447fa6d193bd2fdf2f4a0a86d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">Vrc_Codes&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Vfetk.html#gd6be15a2e00968d685a09131436bcc10">Vfetk_loadGem</a> (<a class="el" href="structsVfetk.html">Vfetk</a> *thee, Gem *gm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Load a Gem geometry manager object into Vfetk.  <a href="#gd6be15a2e00968d685a09131436bcc10"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
FEtk master class (interface between FEtk and APBS). <hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="ge86ea86a8b8b90820e4ffe91a2528303"></a><!-- doxytag: member="vfetk.h::eVfetk_GuessType" ref="ge86ea86a8b8b90820e4ffe91a2528303" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__Vfetk.html#ge86ea86a8b8b90820e4ffe91a2528303">eVfetk_GuessType</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initial guess type. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Do not change these values; they correspond to settings in FEtk </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="gge86ea86a8b8b90820e4ffe91a2528303cef2f75da1dede20ad46617c90cedf7d"></a><!-- doxytag: member="VGT_ZERO" ref="gge86ea86a8b8b90820e4ffe91a2528303cef2f75da1dede20ad46617c90cedf7d" args="" -->VGT_ZERO</em>&nbsp;</td><td>
Zero initial guess </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gge86ea86a8b8b90820e4ffe91a25283032031ed6ed19f69a42fb498e1862d3030"></a><!-- doxytag: member="VGT_DIRI" ref="gge86ea86a8b8b90820e4ffe91a25283032031ed6ed19f69a42fb498e1862d3030" args="" -->VGT_DIRI</em>&nbsp;</td><td>
Dirichlet boundary condition initial guess </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gge86ea86a8b8b90820e4ffe91a252830337c983520e9dc5f189afd2f8778a5e3c"></a><!-- doxytag: member="VGT_PREV" ref="gge86ea86a8b8b90820e4ffe91a252830337c983520e9dc5f189afd2f8778a5e3c" args="" -->VGT_PREV</em>&nbsp;</td><td>
Previous level initial guess </td></tr>
</table>
</dl>

</div>
</div><p>
<a class="anchor" name="g0907bf1ea39b217715a8e6fb480bcaeb"></a><!-- doxytag: member="vfetk.h::eVfetk_LsolvType" ref="g0907bf1ea39b217715a8e6fb480bcaeb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__Vfetk.html#g0907bf1ea39b217715a8e6fb480bcaeb">eVfetk_LsolvType</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Linear solver type. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Do not change these values; they correspond to settings in FEtk </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="gg0907bf1ea39b217715a8e6fb480bcaeb79c08336fe9f91bca81326cb24628579"></a><!-- doxytag: member="VLT_SLU" ref="gg0907bf1ea39b217715a8e6fb480bcaeb79c08336fe9f91bca81326cb24628579" args="" -->VLT_SLU</em>&nbsp;</td><td>
SuperLU direct solve </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg0907bf1ea39b217715a8e6fb480bcaebc922b471c1bebe4fdee86bb62420ef50"></a><!-- doxytag: member="VLT_MG" ref="gg0907bf1ea39b217715a8e6fb480bcaebc922b471c1bebe4fdee86bb62420ef50" args="" -->VLT_MG</em>&nbsp;</td><td>
Multigrid </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg0907bf1ea39b217715a8e6fb480bcaebc7a1fcaf1acae2239ed423e062b8da3e"></a><!-- doxytag: member="VLT_CG" ref="gg0907bf1ea39b217715a8e6fb480bcaebc7a1fcaf1acae2239ed423e062b8da3e" args="" -->VLT_CG</em>&nbsp;</td><td>
Conjugate gradient </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg0907bf1ea39b217715a8e6fb480bcaeb9e8ddc8d7e06a0c00e6b11c3d795358a"></a><!-- doxytag: member="VLT_BCG" ref="gg0907bf1ea39b217715a8e6fb480bcaeb9e8ddc8d7e06a0c00e6b11c3d795358a" args="" -->VLT_BCG</em>&nbsp;</td><td>
BiCGStab </td></tr>
</table>
</dl>

</div>
</div><p>
<a class="anchor" name="g983fd714f6d8ee74257eb04fd85f7e64"></a><!-- doxytag: member="vfetk.h::eVfetk_MeshLoad" ref="g983fd714f6d8ee74257eb04fd85f7e64" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__Vfetk.html#g983fd714f6d8ee74257eb04fd85f7e64">eVfetk_MeshLoad</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mesh loading operation. 
<p>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="gg983fd714f6d8ee74257eb04fd85f7e64741922e00a746924cfab60586427bda3"></a><!-- doxytag: member="VML_DIRICUBE" ref="gg983fd714f6d8ee74257eb04fd85f7e64741922e00a746924cfab60586427bda3" args="" -->VML_DIRICUBE</em>&nbsp;</td><td>
Dirichlet cube </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg983fd714f6d8ee74257eb04fd85f7e6482aafe9b8ad86202e5db686dc5a8a3c8"></a><!-- doxytag: member="VML_NEUMCUBE" ref="gg983fd714f6d8ee74257eb04fd85f7e6482aafe9b8ad86202e5db686dc5a8a3c8" args="" -->VML_NEUMCUBE</em>&nbsp;</td><td>
Neumann cube </td></tr>
<tr><td valign="top"><em><a class="anchor" name="gg983fd714f6d8ee74257eb04fd85f7e64915bea688c881263d25d8026f8d3fddd"></a><!-- doxytag: member="VML_EXTERNAL" ref="gg983fd714f6d8ee74257eb04fd85f7e64915bea688c881263d25d8026f8d3fddd" args="" -->VML_EXTERNAL</em>&nbsp;</td><td>
External mesh (from socket) </td></tr>
</table>
</dl>

</div>
</div><p>
<a class="anchor" name="gc13393fb20a9b60fbc804cc2da797994"></a><!-- doxytag: member="vfetk.h::eVfetk_NsolvType" ref="gc13393fb20a9b60fbc804cc2da797994" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__Vfetk.html#gc13393fb20a9b60fbc804cc2da797994">eVfetk_NsolvType</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Non-linear solver type. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Do not change these values; they correspond to settings in FEtk </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="ggc13393fb20a9b60fbc804cc2da7979941a4fdde4d4a9515af300ef23b6d7acdd"></a><!-- doxytag: member="VNT_NEW" ref="ggc13393fb20a9b60fbc804cc2da7979941a4fdde4d4a9515af300ef23b6d7acdd" args="" -->VNT_NEW</em>&nbsp;</td><td>
Newton solver </td></tr>
<tr><td valign="top"><em><a class="anchor" name="ggc13393fb20a9b60fbc804cc2da79799417ef9aaa047d540a59688087090ea31e"></a><!-- doxytag: member="VNT_INC" ref="ggc13393fb20a9b60fbc804cc2da79799417ef9aaa047d540a59688087090ea31e" args="" -->VNT_INC</em>&nbsp;</td><td>
Incremental </td></tr>
<tr><td valign="top"><em><a class="anchor" name="ggc13393fb20a9b60fbc804cc2da7979941adcc75d4f8f810301c7012aa612d8dc"></a><!-- doxytag: member="VNT_ARC" ref="ggc13393fb20a9b60fbc804cc2da7979941adcc75d4f8f810301c7012aa612d8dc" args="" -->VNT_ARC</em>&nbsp;</td><td>
Psuedo-arclength </td></tr>
</table>
</dl>

</div>
</div><p>
<a class="anchor" name="gdc47cb025e2518628d09b7522c5ce9e0"></a><!-- doxytag: member="vfetk.h::eVfetk_PrecType" ref="gdc47cb025e2518628d09b7522c5ce9e0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__Vfetk.html#gdc47cb025e2518628d09b7522c5ce9e0">eVfetk_PrecType</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Preconditioner type. 
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Do not change these values; they correspond to settings in FEtk </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="ggdc47cb025e2518628d09b7522c5ce9e06219934b8d4d5e4a847dc3f75ffe9432"></a><!-- doxytag: member="VPT_IDEN" ref="ggdc47cb025e2518628d09b7522c5ce9e06219934b8d4d5e4a847dc3f75ffe9432" args="" -->VPT_IDEN</em>&nbsp;</td><td>
Identity matrix </td></tr>
<tr><td valign="top"><em><a class="anchor" name="ggdc47cb025e2518628d09b7522c5ce9e03a149ed46e9f4ac954676f197573a099"></a><!-- doxytag: member="VPT_DIAG" ref="ggdc47cb025e2518628d09b7522c5ce9e03a149ed46e9f4ac954676f197573a099" args="" -->VPT_DIAG</em>&nbsp;</td><td>
Diagonal scaling </td></tr>
<tr><td valign="top"><em><a class="anchor" name="ggdc47cb025e2518628d09b7522c5ce9e0421cf15849be3c69439c2cffec1ec887"></a><!-- doxytag: member="VPT_MG" ref="ggdc47cb025e2518628d09b7522c5ce9e0421cf15849be3c69439c2cffec1ec887" args="" -->VPT_MG</em>&nbsp;</td><td>
Multigrid </td></tr>
</table>
</dl>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="g5b3d793fc3603320481b598c85f2201d"></a><!-- doxytag: member="vfetk.h::Bmat_printHB" ref="g5b3d793fc3603320481b598c85f2201d" args="(Bmat *thee, char *fname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Bmat_printHB           </td>
          <td>(</td>
          <td class="paramtype">Bmat *&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>fname</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Writes a Bmat to disk in Harwell-Boeing sparse matrix format. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Stephen Bond </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This is a friend function of Bmat </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000009">Bug:</a></b></dt><dd>Hardwired to only handle the single block symmetric case. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>fname</em>&nbsp;</td><td>
The matrix to write Filename for output </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g851988acbdf7739d5bd979defe7ae90d"></a><!-- doxytag: member="vfetk.h::Vfetk_ctor" ref="g851988acbdf7739d5bd979defe7ae90d" args="(Vpbe *pbe, Vhal_PBEType type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structsVfetk.html">Vfetk</a>* Vfetk_ctor           </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"><a class="el" href="group__Vhal.html#ga0aabb1579af98f26effe7796b2d0a0c">Vhal_PBEType</a>&nbsp;</td>
          <td class="paramname"> <em>type</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 Vfetk object. 
<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 Vfetk object </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This sets up the Gem, AM, and Aprx FEtk objects but does not create a mesh. The easiest way to create a mesh is to then call Vfetk_genCube </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
Vpbe (PBE manager object) Version of PBE to solve </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8c-source.html#l00544">Vfetk_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g851988acbdf7739d5bd979defe7ae90d_cgraph.png" border="0" usemap="#group__Vfetk_g851988acbdf7739d5bd979defe7ae90d_cgraph_map" alt=""></center>
<map name="group__Vfetk_g851988acbdf7739d5bd979defe7ae90d_cgraph_map">
<area shape="rect" href="group__Vfetk.html#g8c63795e10686e806cb369af8f543387" title="FORTRAN stub constructor for Vfetk object." alt="" coords="138,337,229,364"><area shape="rect" href="group__Vcsm.html#g8b61bc1d195da9bf2019d131e4e76043" title="External function for FEtk Gem class to use during mesh refinement." alt="" coords="277,210,498,237"><area shape="rect" href="group__Vfetk.html#g130f353b0f7c1c432f9e208a43e645b1" title="External hook to simplex subdivision routines in Gem. Called each time a simplex..." alt="" coords="548,58,750,85"><area shape="rect" href="group__Vfetk.html#g4bb67f5500dd28dcd582d920b50d0b4e" title="Constructs the FEtk PDE object." alt="" coords="329,312,446,338"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="296,362,480,389"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="336,413,440,440"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="322,464,453,490"><area shape="rect" href="group__Vcsm.html#g23ba96a1f619c002a84a96d09c66205a" title="Update the charge&#45;simplex and simplex&#45;charge maps after refinement." alt="" coords="850,8,954,34"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="1081,153,1193,180"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="1270,138,1382,165"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="1069,90,1205,117"><area shape="rect" href="group__Vfetk.html#g40b301931083038af40312b49b167794" title="Intializes the FEtk PDE object." alt="" coords="586,489,712,516"><area shape="rect" href="group__Vfetk.html#g877160adf876489f6493322cf34831d9" title="Define the way manifold edges are bisected." alt="" coords="822,514,982,541"><area shape="rect" href="group__Vfetk.html#gd8b11d6436d7ea407c94ac79eb1f9e99" title="Evaluate a (discretized) delta function source term at the given point." alt="" coords="841,413,964,440"><area shape="rect" href="group__Vfetk.html#g58889daff822d088b8286402228eb8e2" title="This is the linearization of the weak form of the PBE; e.g., for use in a Newton..." alt="" coords="830,565,974,592"><area shape="rect" href="group__Vfetk.html#g6ab828dbe466030949f3332a6370a22a" title="Evaluate strong form of PBE. For interior points, this is:  where  is the (possibly..." alt="" coords="846,616,958,642"><area shape="rect" href="group__Vfetk.html#gd8bfaaca31087ca5c98663f1a9839bcc" title="This is the weak form of the PBE; i.e. the strong form integrated with a test function..." alt="" coords="840,666,965,693"><area shape="rect" href="group__Vfetk.html#g850c1f0593b2b3ba8ad2795b5642d340" title="Do once&#45;per&#45;assembly initialization." alt="" coords="817,717,988,744"><area shape="rect" href="group__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa" title="Do once&#45;per&#45;element initialization." alt="" coords="821,768,984,794"><area shape="rect" href="group__Vfetk.html#g92f682b4b349b1236be7306b8091a6f0" title="Do once&#45;per&#45;face initialization." alt="" coords="832,818,973,845"><area shape="rect" href="group__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1" title="Do once&#45;per&#45;point initialization." alt="" coords="830,869,974,896"><area shape="rect" href="group__Vfetk.html#gcd6aede0ecf4ee5b7cd103a68a28aeee" title="Energy functional. This returns the energy (less delta function terms) in the form:..." alt="" coords="848,464,957,490"><area shape="rect" href="group__Vfetk.html#gab7c03cc5568407794999c0f617ab889" title="Map a boundary point to some pre&#45;defined shape." alt="" coords="813,920,992,946"><area shape="rect" href="group__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2" title="User&#45;defined error estimator &#45;&#45; in our case, a geometry&#45;based refinement method;..." alt="" coords="816,109,989,136"><area shape="rect" href="group__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c" title="Unify the chart for different coordinate systems &#45;&#45; a no&#45;op for us." alt="" coords="828,160,977,186"><area shape="rect" href="group__Vfetk.html#gb42e012aef0ff3f23862dacdbaf86f0a" title="Evaluate the bases for the trial or test space, for a particular component of the..." alt="" coords="800,210,1005,237"><area shape="rect" href="group__Vfetk.html#g0ba7af67b39b140e8150e5699eb2ad31" title="Initialize the bases for the trial or the test space, for a particular component..." alt="" coords="806,261,998,288"><area shape="rect" href="group__Vfetk.html#gc37aeabeafd642e7a67b0654497ce2ab" title="Evaluate the Dirichlet boundary condition at the given point." alt="" coords="842,312,962,338"><area shape="rect" href="group__Vfetk.html#g0d6f246e3a44d57b2907972efe97bb14" title="Evaluate the &quot;true solution&quot; at the given point for comparison with the..." alt="" coords="844,362,961,389"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="1072,312,1202,338"><area shape="rect" href="group__Vcsm.html#g9fb0ff4858be085d6698bd1a1bac8d0d" title="Get particular atom associated with a simplex." alt="" coords="1081,261,1193,288"><area shape="rect" href="group__Vcsm.html#g0e64a5068f0bb54b5c0603ff87b47d55" title="Get ID of particular atom in a simplex." alt="" coords="1064,362,1210,389"><area shape="rect" href="group__Vcsm.html#g66a9b72b572a2e69ecbf31d756739a30" title="Get number of atoms associated with a simplex." alt="" coords="1053,413,1221,440"><area shape="rect" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d" title="Get a pointer to the Gem (grid manager) object." alt="" coords="1084,210,1190,237"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="1076,464,1198,490"><area shape="rect" href="group__Vgreen.html#g40625a240b34a5eddec5d98925aa3061" title="Construct the Green&#39;s function oracle." alt="" coords="1090,692,1184,718"><area shape="rect" href="group__Vgreen.html#gc60c5788fc669e5f7b48502bcecfb174" title="Destruct the Green&#39;s function oracle." alt="" coords="1089,742,1185,769"><area shape="rect" href="group__Vgreen.html#gbf630ca7658e483fc8e58ee3e0353d44" title="FORTRAN stub to construct the Green&#39;s function oracle." alt="" coords="1276,692,1377,718"><area shape="rect" href="group__Vgreen.html#gb6dced702dabd03e72f9a46ee540f94e" title="FORTRAN stub to destruct the Green&#39;s function oracle." alt="" coords="1274,742,1378,769"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="1097,514,1177,541"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g8c63795e10686e806cb369af8f543387"></a><!-- doxytag: member="vfetk.h::Vfetk_ctor2" ref="g8c63795e10686e806cb369af8f543387" args="(Vfetk *thee, Vpbe *pbe, Vhal_PBEType type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_ctor2           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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="structsVpbe.html">Vpbe</a> *&nbsp;</td>
          <td class="paramname"> <em>pbe</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>type</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 Vfetk object. 
<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 sets up the Gem, AM, and Aprx FEtk objects but does not create a mesh. The easiest way to create a mesh is to then call Vfetk_genCube </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>
Vfetk object memory </td></tr>
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
PBE manager object Version of PBE to solve </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="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00178">sVfetk::aprx</a>, <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>, <a class="el" href="vfetk_8h-source.html#l00193">sVfetk::feparm</a>, <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="group__Vcsm.html#g8b61bc1d195da9bf2019d131e4e76043">Gem_setExternalUpdateFunction()</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vfetk_8h-source.html#l00188">sVfetk::gues</a>, <a class="el" href="vfetk_8h-source.html#l00230">sVfetk_LocalVar::initGreen</a>, <a class="el" href="vfetk_8h-source.html#l00236">sVfetk_LocalVar::ionConc</a>, <a class="el" href="vfetk_8h-source.html#l00237">sVfetk_LocalVar::ionQ</a>, <a class="el" href="vfetk_8h-source.html#l00238">sVfetk_LocalVar::ionRadii</a>, <a class="el" href="vfetk_8h-source.html#l00241">sVfetk_LocalVar::ionstr</a>, <a class="el" href="vfetk_8h-source.html#l00195">sVfetk::level</a>, <a class="el" href="vfetk_8h-source.html#l00182">sVfetk::lkey</a>, <a class="el" href="vfetk_8h-source.html#l00183">sVfetk::lmax</a>, <a class="el" href="vfetk_8h-source.html#l00189">sVfetk::lprec</a>, <a class="el" href="vfetk_8h-source.html#l00184">sVfetk::ltol</a>, <a class="el" href="vfetk_8h-source.html#l00242">sVfetk_LocalVar::nion</a>, <a class="el" href="vfetk_8h-source.html#l00185">sVfetk::nkey</a>, <a class="el" href="vfetk_8h-source.html#l00186">sVfetk::nmax</a>, <a class="el" href="vfetk_8h-source.html#l00187">sVfetk::ntol</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vfetk_8h-source.html#l00192">sVfetk::pbeparm</a>, <a class="el" href="vfetk_8h-source.html#l00179">sVfetk::pde</a>, <a class="el" href="vfetk_8h-source.html#l00190">sVfetk::pjac</a>, <a class="el" href="vfetk_8h-source.html#l00194">sVfetk::type</a>, <a class="el" href="vhal_8h-source.html#l00402">VAPBS_DIM</a>, <a class="el" href="vfetk_8c-source.html#l01994">Vfetk_externalUpdateFunction()</a>, <a class="el" href="vfetk_8c-source.html#l01112">Vfetk_PDE_ctor()</a>, <a class="el" href="vfetk_8h-source.html#l00134">VGT_ZERO</a>, <a class="el" href="vfetk_8h-source.html#l00083">VLT_MG</a>, <a class="el" href="vfetk_8h-source.html#l00173">sVfetk::vmem</a>, <a class="el" href="vfetk_8h-source.html#l00117">VNT_NEW</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="vfetk_8h-source.html#l00153">VPT_MG</a>, <a class="el" href="vfetk_8h-source.html#l00239">sVfetk_LocalVar::zkappa2</a>, and <a class="el" href="vfetk_8h-source.html#l00240">sVfetk_LocalVar::zks2</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00533">Vfetk_ctor()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g8c63795e10686e806cb369af8f543387_cgraph.png" border="0" usemap="#group__Vfetk_g8c63795e10686e806cb369af8f543387_cgraph_map" alt=""></center>
<map name="group__Vfetk_g8c63795e10686e806cb369af8f543387_cgraph_map">
<area shape="rect" href="group__Vcsm.html#g8b61bc1d195da9bf2019d131e4e76043" title="External function for FEtk Gem class to use during mesh refinement." alt="" coords="146,210,367,237"><area shape="rect" href="group__Vfetk.html#g130f353b0f7c1c432f9e208a43e645b1" title="External hook to simplex subdivision routines in Gem. Called each time a simplex..." alt="" coords="417,58,619,85"><area shape="rect" href="group__Vfetk.html#g4bb67f5500dd28dcd582d920b50d0b4e" title="Constructs the FEtk PDE object." alt="" coords="198,312,315,338"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="165,362,349,389"><area shape="rect" href="group__Vpbe.html#g23d965029db459d11f2bbbbaa2c7dbc7" title="Get information about the counterion species present." alt="" coords="205,413,309,440"><area shape="rect" href="group__Vpbe.html#ga4e725db086b16333664140ac3d25e79" title="Get modified squared Debye&#45;Huckel parameter." alt="" coords="191,464,322,490"><area shape="rect" href="group__Vcsm.html#g23ba96a1f619c002a84a96d09c66205a" title="Update the charge&#45;simplex and simplex&#45;charge maps after refinement." alt="" coords="719,8,823,34"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="950,153,1062,180"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="1139,138,1251,165"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="938,90,1074,117"><area shape="rect" href="group__Vfetk.html#g40b301931083038af40312b49b167794" title="Intializes the FEtk PDE object." alt="" coords="455,489,581,516"><area shape="rect" href="group__Vfetk.html#g877160adf876489f6493322cf34831d9" title="Define the way manifold edges are bisected." alt="" coords="691,514,851,541"><area shape="rect" href="group__Vfetk.html#gd8b11d6436d7ea407c94ac79eb1f9e99" title="Evaluate a (discretized) delta function source term at the given point." alt="" coords="710,413,833,440"><area shape="rect" href="group__Vfetk.html#g58889daff822d088b8286402228eb8e2" title="This is the linearization of the weak form of the PBE; e.g., for use in a Newton..." alt="" coords="699,565,843,592"><area shape="rect" href="group__Vfetk.html#g6ab828dbe466030949f3332a6370a22a" title="Evaluate strong form of PBE. For interior points, this is:  where  is the (possibly..." alt="" coords="715,616,827,642"><area shape="rect" href="group__Vfetk.html#gd8bfaaca31087ca5c98663f1a9839bcc" title="This is the weak form of the PBE; i.e. the strong form integrated with a test function..." alt="" coords="709,666,834,693"><area shape="rect" href="group__Vfetk.html#g850c1f0593b2b3ba8ad2795b5642d340" title="Do once&#45;per&#45;assembly initialization." alt="" coords="686,717,857,744"><area shape="rect" href="group__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa" title="Do once&#45;per&#45;element initialization." alt="" coords="690,768,853,794"><area shape="rect" href="group__Vfetk.html#g92f682b4b349b1236be7306b8091a6f0" title="Do once&#45;per&#45;face initialization." alt="" coords="701,818,842,845"><area shape="rect" href="group__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1" title="Do once&#45;per&#45;point initialization." alt="" coords="699,869,843,896"><area shape="rect" href="group__Vfetk.html#gcd6aede0ecf4ee5b7cd103a68a28aeee" title="Energy functional. This returns the energy (less delta function terms) in the form:..." alt="" coords="717,464,826,490"><area shape="rect" href="group__Vfetk.html#gab7c03cc5568407794999c0f617ab889" title="Map a boundary point to some pre&#45;defined shape." alt="" coords="682,920,861,946"><area shape="rect" href="group__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2" title="User&#45;defined error estimator &#45;&#45; in our case, a geometry&#45;based refinement method;..." alt="" coords="685,109,858,136"><area shape="rect" href="group__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c" title="Unify the chart for different coordinate systems &#45;&#45; a no&#45;op for us." alt="" coords="697,160,846,186"><area shape="rect" href="group__Vfetk.html#gb42e012aef0ff3f23862dacdbaf86f0a" title="Evaluate the bases for the trial or test space, for a particular component of the..." alt="" coords="669,210,874,237"><area shape="rect" href="group__Vfetk.html#g0ba7af67b39b140e8150e5699eb2ad31" title="Initialize the bases for the trial or the test space, for a particular component..." alt="" coords="675,261,867,288"><area shape="rect" href="group__Vfetk.html#gc37aeabeafd642e7a67b0654497ce2ab" title="Evaluate the Dirichlet boundary condition at the given point." alt="" coords="711,312,831,338"><area shape="rect" href="group__Vfetk.html#g0d6f246e3a44d57b2907972efe97bb14" title="Evaluate the &quot;true solution&quot; at the given point for comparison with the..." alt="" coords="713,362,830,389"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="941,312,1071,338"><area shape="rect" href="group__Vcsm.html#g9fb0ff4858be085d6698bd1a1bac8d0d" title="Get particular atom associated with a simplex." alt="" coords="950,261,1062,288"><area shape="rect" href="group__Vcsm.html#g0e64a5068f0bb54b5c0603ff87b47d55" title="Get ID of particular atom in a simplex." alt="" coords="933,362,1079,389"><area shape="rect" href="group__Vcsm.html#g66a9b72b572a2e69ecbf31d756739a30" title="Get number of atoms associated with a simplex." alt="" coords="922,413,1090,440"><area shape="rect" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d" title="Get a pointer to the Gem (grid manager) object." alt="" coords="953,210,1059,237"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="945,464,1067,490"><area shape="rect" href="group__Vgreen.html#g40625a240b34a5eddec5d98925aa3061" title="Construct the Green&#39;s function oracle." alt="" coords="959,692,1053,718"><area shape="rect" href="group__Vgreen.html#gc60c5788fc669e5f7b48502bcecfb174" title="Destruct the Green&#39;s function oracle." alt="" coords="958,742,1054,769"><area shape="rect" href="group__Vgreen.html#gbf630ca7658e483fc8e58ee3e0353d44" title="FORTRAN stub to construct the Green&#39;s function oracle." alt="" coords="1145,692,1246,718"><area shape="rect" href="group__Vgreen.html#gb6dced702dabd03e72f9a46ee540f94e" title="FORTRAN stub to destruct the Green&#39;s function oracle." alt="" coords="1143,742,1247,769"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="966,514,1046,541"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g8fe6ab903982db4198a1d075b9ff5021"></a><!-- doxytag: member="vfetk.h::Vfetk_dqmEnergy" ref="g8fe6ab903982db4198a1d075b9ff5021" args="(Vfetk *thee, int color)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_dqmEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>color</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" and "polarization" contributions 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 and polarization of the dielectric medium: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ G = \frac{1}{4 I_s} \sum_i c_i q_i^2 \int \overline{\kappa}^2(x) e^{-q_i u(x)} dx + \frac{1}{2} \int \epsilon ( \nabla u )^2 dx \]" src="form_49.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 + \frac{1}{2} \int \epsilon ( \nabla u )^2 dx \]" src="form_50.png">
<p>
 for the LPBE. Here <img class="formulaInl" alt="$i$" src="form_23.png"> denotes the counterion species, <img class="formulaInl" alt="$I_s$" src="form_42.png"> is the bulk ionic strength, <img class="formulaInl" alt="$\overline{\kappa}^2(x)$" src="form_51.png"> is the modified Debye-Huckel parameter, <img class="formulaInl" alt="$c_i$" src="form_52.png"> is the concentration of species <img class="formulaInl" alt="$i$" src="form_23.png">, <img class="formulaInl" alt="$q_i$" src="form_21.png"> is the charge of species <img class="formulaInl" alt="$i$" src="form_23.png">, <img class="formulaInl" alt="$\epsilon$" src="form_53.png"> is the dielectric function, and <img class="formulaInl" alt="$u(x)$" src="form_54.png"> is the dimensionless electrostatic potential. The energy is scaled to units of <img class="formulaInl" alt="$k_b T$" src="form_55.png">.<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"></td><td valign="top"><em>thee</em>&nbsp;</td><td>Vfetk object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>color</em>&nbsp;</td><td>Partition restriction for energy evaluation, only used if non-negative </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The "mobile charge" and "polarization" contributions to the electrostatic energy in units of <img class="formulaInl" alt="$k_B T$" src="form_45.png">. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>color</em>&nbsp;</td><td>
The Vfetk object Partition restriction for energy calculation; if non-negative, energy calculation is restricted to the specified partition (indexed by simplex and atom colors </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00666">Vfetk_energy()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g79f12393399e3ba28244d96dbd0bca4e"></a><!-- doxytag: member="vfetk.h::Vfetk_dtor" ref="g79f12393399e3ba28244d96dbd0bca4e" args="(Vfetk **thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_dtor           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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 Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8c-source.html#l00627">Vfetk_dtor2()</a>.</p>

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

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g79f12393399e3ba28244d96dbd0bca4e_cgraph.png" border="0" usemap="#group__Vfetk_g79f12393399e3ba28244d96dbd0bca4e_cgraph_map" alt=""></center>
<map name="group__Vfetk_g79f12393399e3ba28244d96dbd0bca4e_cgraph_map">
<area shape="rect" href="group__Vfetk.html#gc300393d5c7bdda4b66389a24127d138" title="FORTRAN stub object destructor." alt="" coords="141,33,231,59"><area shape="rect" href="group__Vcsm.html#g2bc0fee3715143539faf899297555398" title="Destroy Vcsm object." alt="" coords="297,7,382,34"><area shape="rect" href="group__Vfetk.html#gf53be91ac6774829c8f377c15dda8ea5" title="Destroys FEtk PDE object." alt="" coords="281,58,398,85"><area shape="rect" href="group__Vcsm.html#g3c31f8010c42b53a7454bdac94aa9acf" title="FORTRAN stub to destroy Vcsm object." alt="" coords="463,7,557,34"><area shape="rect" href="group__Vfetk.html#gea58e1b29973b503b24ef85c08320253" title="FORTRAN stub: destroys FEtk PDE object." alt="" coords="447,58,573,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gc300393d5c7bdda4b66389a24127d138"></a><!-- doxytag: member="vfetk.h::Vfetk_dtor2" ref="gc300393d5c7bdda4b66389a24127d138" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_dtor2           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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 Vfetk object to be destroyed </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00178">sVfetk::aprx</a>, <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>, <a class="el" href="vfetk_8h-source.html#l00179">sVfetk::pde</a>, <a class="el" href="vcsm_8c-source.html#l00290">Vcsm_dtor()</a>, <a class="el" href="vfetk_8c-source.html#l01165">Vfetk_PDE_dtor()</a>, and <a class="el" href="vfetk_8h-source.html#l00173">sVfetk::vmem</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00619">Vfetk_dtor()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gc300393d5c7bdda4b66389a24127d138_cgraph.png" border="0" usemap="#group__Vfetk_gc300393d5c7bdda4b66389a24127d138_cgraph_map" alt=""></center>
<map name="group__Vfetk_gc300393d5c7bdda4b66389a24127d138_cgraph_map">
<area shape="rect" href="group__Vcsm.html#g2bc0fee3715143539faf899297555398" title="Destroy Vcsm object." alt="" coords="164,7,249,34"><area shape="rect" href="group__Vfetk.html#gf53be91ac6774829c8f377c15dda8ea5" title="Destroys FEtk PDE object." alt="" coords="148,58,265,85"><area shape="rect" href="group__Vcsm.html#g3c31f8010c42b53a7454bdac94aa9acf" title="FORTRAN stub to destroy Vcsm object." alt="" coords="330,7,424,34"><area shape="rect" href="group__Vfetk.html#gea58e1b29973b503b24ef85c08320253" title="FORTRAN stub: destroys FEtk PDE object." alt="" coords="314,58,440,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g2f59ed59d82530c900326b5aa6f101cd"></a><!-- doxytag: member="vfetk.h::Vfetk_dumpLocalVar" ref="g2f59ed59d82530c900326b5aa6f101cd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_dumpLocalVar           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Debugging routine to print out local variables used by PDE object. 
<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#_bug000027">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>

<p>References <a class="el" href="vfetk_8h-source.html#l00223">sVfetk_LocalVar::A</a>, <a class="el" href="vfetk_8h-source.html#l00225">sVfetk_LocalVar::B</a>, <a class="el" href="vfetk_8h-source.html#l00218">sVfetk_LocalVar::d2W</a>, <a class="el" href="vfetk_8h-source.html#l00226">sVfetk_LocalVar::DB</a>, <a class="el" href="vfetk_8h-source.html#l00245">sVfetk_LocalVar::delta</a>, <a class="el" href="vfetk_8h-source.html#l00244">sVfetk_LocalVar::DFu_wv</a>, <a class="el" href="vfetk_8h-source.html#l00221">sVfetk_LocalVar::diel</a>, <a class="el" href="vfetk_8h-source.html#l00215">sVfetk_LocalVar::dU</a>, <a class="el" href="vfetk_8h-source.html#l00217">sVfetk_LocalVar::dW</a>, <a class="el" href="vfetk_8h-source.html#l00224">sVfetk_LocalVar::F</a>, <a class="el" href="vfetk_8h-source.html#l00220">sVfetk_LocalVar::fType</a>, <a class="el" href="vfetk_8h-source.html#l00243">sVfetk_LocalVar::Fu_v</a>, <a class="el" href="vfetk_8h-source.html#l00222">sVfetk_LocalVar::ionacc</a>, <a class="el" href="vfetk_8h-source.html#l00236">sVfetk_LocalVar::ionConc</a>, <a class="el" href="vfetk_8h-source.html#l00237">sVfetk_LocalVar::ionQ</a>, <a class="el" href="vfetk_8h-source.html#l00238">sVfetk_LocalVar::ionRadii</a>, <a class="el" href="vfetk_8h-source.html#l00242">sVfetk_LocalVar::nion</a>, <a class="el" href="vfetk_8h-source.html#l00211">sVfetk_LocalVar::nvec</a>, <a class="el" href="vfetk_8h-source.html#l00235">sVfetk_LocalVar::nverts</a>, <a class="el" href="vfetk_8h-source.html#l00232">sVfetk_LocalVar::simp</a>, <a class="el" href="vfetk_8h-source.html#l00219">sVfetk_LocalVar::sType</a>, <a class="el" href="vfetk_8h-source.html#l00214">sVfetk_LocalVar::U</a>, <a class="el" href="vfetk_8h-source.html#l00246">sVfetk_LocalVar::u_D</a>, <a class="el" href="vfetk_8h-source.html#l00247">sVfetk_LocalVar::u_T</a>, <a class="el" href="vfetk_8h-source.html#l00234">sVfetk_LocalVar::verts</a>, <a class="el" href="vfetk_8h-source.html#l00212">sVfetk_LocalVar::vx</a>, <a class="el" href="vfetk_8h-source.html#l00216">sVfetk_LocalVar::W</a>, <a class="el" href="vfetk_8h-source.html#l00213">sVfetk_LocalVar::xq</a>, <a class="el" href="vfetk_8h-source.html#l00239">sVfetk_LocalVar::zkappa2</a>, and <a class="el" href="vfetk_8h-source.html#l00240">sVfetk_LocalVar::zks2</a>.</p>

</div>
</div><p>
<a class="anchor" name="g8d59079781d2ee65d5073de3b63c530a"></a><!-- doxytag: member="vfetk.h::Vfetk_energy" ref="g8d59079781d2ee65d5073de3b63c530a" args="(Vfetk *thee, int color, int nonlin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_energy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nonlin</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the total electrostatic energy. 
<p>
Using the solution at the finest mesh level, get the electrostatic energy using the free energy functional for the Poisson-Boltzmann equation without removing any self-interaction terms (i.e., removing the reference state of isolated charges present in an infinite dielectric continuum with the same relative permittivity as the interior of the protein) and return the result in units of <img class="formulaInl" alt="$k_B T$" src="form_45.png">. The argument color allows the user to control the partition on which this energy is calculated; if (color == -1) no restrictions are used. The solution is obtained from the finest level of the passed AM object, but atomic data from the Vfetk object is used to calculate the energy.<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>Total electrostatic energy in units of <img class="formulaInl" alt="$k_B T$" src="form_45.png">. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>color</em>&nbsp;</td><td>
THe Vfetk object </td></tr>
<tr><td valign="top"><em>nonlin</em>&nbsp;</td><td>
Partition restriction for energy calculation; if non-negative, energy calculation is restricted to the specified partition (indexed by simplex and atom colors If 1, the NPBE energy functional is used; otherwise, the LPBE energy functional is used. If -2, SMPBE is used. </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vfetk_8c-source.html#l00800">Vfetk_dqmEnergy()</a>, <a class="el" href="vfetk_8c-source.html#l00698">Vfetk_qfEnergy()</a>, and <a class="el" href="vpbe_8c-source.html#l00083">Vpbe_getBulkIonicStrength()</a>.</p>

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

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g8d59079781d2ee65d5073de3b63c530a_cgraph.png" border="0" usemap="#group__Vfetk_g8d59079781d2ee65d5073de3b63c530a_cgraph_map" alt=""></center>
<map name="group__Vfetk_g8d59079781d2ee65d5073de3b63c530a_cgraph_map">
<area shape="rect" href="group__Vfetk.html#g8fe6ab903982db4198a1d075b9ff5021" title="Get the &quot;mobile charge&quot; and &quot;polarization&quot; contributions to the..." alt="" coords="186,8,314,34"><area shape="rect" href="group__Vfetk.html#gdfc571213f31e96d961f0828fa8fcda7" title="Get the &quot;fixed charge&quot; contribution to the electrostatic energy." alt="" coords="193,58,308,85"><area shape="rect" href="group__Vpbe.html#g49a4178cddec98a0388a0b0a42b402ad" title="Get bulk ionic strength." alt="" coords="158,109,342,136"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="392,33,560,60"><area shape="rect" href="group__Vfetk.html#g414150bb3abf21e2d461b7fd596befa9" title="Create an array containing the solution (electrostatic potential in units of ) at..." alt="" coords="412,84,540,110"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g130f353b0f7c1c432f9e208a43e645b1"></a><!-- doxytag: member="vfetk.h::Vfetk_externalUpdateFunction" ref="g130f353b0f7c1c432f9e208a43e645b1" args="(SS **simps, int num)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_externalUpdateFunction           </td>
          <td>(</td>
          <td class="paramtype">SS **&nbsp;</td>
          <td class="paramname"> <em>simps</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>num</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
External hook to simplex subdivision routines in Gem. Called each time a simplex is subdivided (we use it to update the charge-simplex map). 
<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#_bug000026">Bug:</a></b></dt><dd>This function is not thread-safe. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>num</em>&nbsp;</td><td>
List of parent (simps[0]) and children (remainder) simplices Number of simplices in list </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vcsm_8c-source.html#l00324">Vcsm_update()</a>, and <a class="el" href="vfetk_8c-source.html#l00513">Vfetk_getVcsm()</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00544">Vfetk_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g130f353b0f7c1c432f9e208a43e645b1_cgraph.png" border="0" usemap="#group__Vfetk_g130f353b0f7c1c432f9e208a43e645b1_cgraph_map" alt=""></center>
<map name="group__Vfetk_g130f353b0f7c1c432f9e208a43e645b1_cgraph_map">
<area shape="rect" href="group__Vcsm.html#g23ba96a1f619c002a84a96d09c66205a" title="Update the charge&#45;simplex and simplex&#45;charge maps after refinement." alt="" coords="265,33,369,60"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="261,84,373,110"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="433,8,545,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="421,58,557,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gc16966273dd20c0a4eb7e3ef7f2f0d84"></a><!-- doxytag: member="vfetk.h::Vfetk_fillArray" ref="gc16966273dd20c0a4eb7e3ef7f2f0d84" args="(Vfetk *thee, Bvec *vec, Vdata_Type type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_fillArray           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Bvec *&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><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fill an array with the specified data. 
<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>This function is thread-safe </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000028">Bug:</a></b></dt><dd>Several values of type are not implemented </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>
The Vfetk object with the data </td></tr>
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
The vector to hold the data THe type of data to write </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00088">sVpbe::acc</a>, <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vcsm_8h-source.html#l00092">sVcsm::gm</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="vpbe_8h-source.html#l00098">sVpbe::maxIonRadius</a>, <a class="el" href="vpbe_8h-source.html#l00101">sVpbe::numIon</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::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="vfetk_8h-source.html#l00192">sVfetk::pbeparm</a>, <a class="el" href="vpbe_8h-source.html#l00094">sVpbe::solventRadius</a>, <a class="el" href="pbeparm_8h-source.html#l00147">sPBEparm::swin</a>, <a class="el" href="vfetk_8h-source.html#l00194">sVfetk::type</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>, and <a class="el" href="vhal_8h-source.html#l00280">VDT_VDW</a>.</p>

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

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gc16966273dd20c0a4eb7e3ef7f2f0d84_cgraph.png" border="0" usemap="#group__Vfetk_gc16966273dd20c0a4eb7e3ef7f2f0d84_cgraph_map" alt=""></center>
<map name="group__Vfetk_gc16966273dd20c0a4eb7e3ef7f2f0d84_cgraph_map">
<area shape="rect" href="group__Vacc.html#g6e3d06de84edfdedec72f6c39fe6b58f" title="Report inflated van der Waals accessibility." alt="" coords="322,110,432,137"><area shape="rect" href="group__Vacc.html#g14c8339e2806380b18aad1e88fe66b71" title="Report molecular accessibility." alt="" coords="162,161,266,188"><area shape="rect" href="group__Vacc.html#g2b52e74285215d0138d3a1bad46b556f" title="Report van der Waals accessibility." alt="" coords="325,212,429,238"><area shape="rect" href="group__Vacc.html#g6f4eb93667854820fbfc4478e60a618e" title="Report spline&#45;based accessibility." alt="" coords="318,440,436,466"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="174,313,254,340"><area shape="rect" href="group__Vacc.html#g771fa3d6536e75841ee6fcbead1660f0" title="Report molecular accessibility quickly." alt="" coords="314,161,440,188"><area shape="rect" href="group__Vacc.html#g7a741d87762baf5906802b6b9a670080" title="Build the solvent accessible surface (SAS) and calculate the solvent accessible surface..." alt="" coords="489,237,582,264"><area shape="rect" href="group__Vclist.html#g13dc2b36b0eb96f433ee79566bdd45e4" title="Return cell corresponding to specified position or return VNULL." alt="" coords="1045,313,1149,340"><area shape="rect" href="group__Vatom.html#g37404117f53ad617e4371df8a7c849bb" title="Get atom ID." alt="" coords="850,161,981,188"><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="658,313,773,340"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="848,364,984,390"><area shape="rect" href="group__Vacc.html#g90b879964a5faa185a82dc2f7c736a15" title="Destroy the surface object." alt="" coords="658,161,773,188"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="660,212,772,238"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="632,262,800,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="860,313,972,340"><area shape="rect" href="group__Vacc.html#gf645f700c467833a3611fadb606d16e5" title="Allocate and construct the surface object; do not assign surface points to positions..." alt="" coords="862,262,969,289"><area shape="rect" href="group__Vatom.html#gd3538039818c4279eb8a6b0e806dea7b" title="Get atomic position." alt="" coords="852,414,980,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="1033,440,1161,466"><area shape="rect" href="group__Vacc.html#g7b5d73ff3b8ae17c8efad24ce683de78" title="Construct the surface object using previously allocated memory; do not assign surface..." alt="" coords="1040,262,1154,289"><area shape="rect" href="vacc_8c.html#2a318b9e1df4d9a97ac47cf55498c4a8" title="Fast spline&#45;based surface computation subroutine." alt="" coords="496,414,576,441"><area shape="rect" href="group__Vacc.html#g6c202624954a3bd3fde446182415c769" title="Report spline&#45;based accessibility for a given atom." alt="" coords="641,414,790,441"></map>
</div>

</div>
</div><p>
<a class="anchor" name="ge473241047881ecd91d72cba8b037999"></a><!-- doxytag: member="vfetk.h::Vfetk_genCube" ref="ge473241047881ecd91d72cba8b037999" args="(Vfetk *thee, double center[3], double length[3], Vfetk_MeshLoad meshType)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Vrc_Codes Vfetk_genCube           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>center</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>length</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vfetk.html#g0ae7e4598a4dfa736d291a33d341c808">Vfetk_MeshLoad</a>&nbsp;</td>
          <td class="paramname"> <em>meshType</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a rectangular mesh (in the current Vfetk object). 
<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>center</em>&nbsp;</td><td>
Vfetk object </td></tr>
<tr><td valign="top"><em>length</em>&nbsp;</td><td>
Center for mesh </td></tr>
<tr><td valign="top"><em>meshType</em>&nbsp;</td><td>
Mesh lengths Mesh boundary conditions </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vcsm_8h-source.html#l00092">sVcsm::gm</a>, <a class="el" href="vfetk_8h-source.html#l00100">VML_DIRICUBE</a>, <a class="el" href="vfetk_8h-source.html#l00102">VML_EXTERNAL</a>, <a class="el" href="vfetk_8h-source.html#l00101">VML_NEUMCUBE</a>, <a class="el" href="vhal_8h-source.html#l00074">VRC_FAILURE</a>, and <a class="el" href="vhal_8h-source.html#l00075">VRC_SUCCESS</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00917">Vfetk_loadMesh()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gf9e2cfba465b60e1cbd0fa228f969596"></a><!-- doxytag: member="vfetk.h::Vfetk_getAM" ref="gf9e2cfba465b60e1cbd0fa228f969596" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">AM* Vfetk_getAM           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a pointer to the AM (algebra manager) object. 
<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 the AM (algebra manager) object </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>
The Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>.</p>

</div>
</div><p>
<a class="anchor" name="g64e3f8c9df71e989da14be147d378625"></a><!-- doxytag: member="vfetk.h::Vfetk_getAtomColor" ref="g64e3f8c9df71e989da14be147d378625" args="(Vfetk *thee, int iatom)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_getAtomColor           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>iatom</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 partition information for a particular atom. 
<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>Friend function of Vatom </dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>thee</em>&nbsp;</td><td>Vfetk object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>iatom</em>&nbsp;</td><td>Valist atom ID </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Partition ID </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>iatom</em>&nbsp;</td><td>
The Vfetk object Valist atom index </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</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="vatom_8c-source.html#l00069">Vatom_getPartID()</a>, and <a class="el" href="vpbe_8c-source.html#l00068">Vpbe_getValist()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g64e3f8c9df71e989da14be147d378625_cgraph.png" border="0" usemap="#group__Vfetk_g64e3f8c9df71e989da14be147d378625_cgraph_map" alt=""></center>
<map name="group__Vfetk_g64e3f8c9df71e989da14be147d378625_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="228,8,340,34"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="200,58,368,85"><area shape="rect" href="group__Vatom.html#g90459dff61fcde8c0da53f073deabdad" title="Get partition ID." alt="" coords="221,109,346,136"><area shape="rect" href="group__Vpbe.html#g541798ff5543ed7daaa597d661108408" title="Get atom list." alt="" coords="228,160,340,186"></map>
</div>

</div>
</div><p>
<a class="anchor" name="ge996913edc49d3be58cfad38cf2ead4d"></a><!-- doxytag: member="vfetk.h::Vfetk_getGem" ref="ge996913edc49d3be58cfad38cf2ead4d" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Gem* Vfetk_getGem           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a pointer to the Gem (grid manager) object. 
<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 the Gem (grid manager) object </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>
Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01709">Vfetk_PDE_delta()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g414150bb3abf21e2d461b7fd596befa9"></a><!-- doxytag: member="vfetk.h::Vfetk_getSolution" ref="g414150bb3abf21e2d461b7fd596befa9" args="(Vfetk *thee, int *length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double* Vfetk_getSolution           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>length</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create an array containing the solution (electrostatic potential in units of <img class="formulaInl" alt="$k_B T/e$" src="form_48.png">) at the finest mesh level. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Michael Holst </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The user is responsible for destroying the newly created array </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Newly created array of length "length" (see above); the user is responsible for destruction </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>length</em>&nbsp;</td><td>
Vfetk object with solution Ste to length of the newly created solution array </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00698">Vfetk_qfEnergy()</a>.</p>

</div>
</div><p>
<a class="anchor" name="ge16c17016c3f527e1639f0e2e2ece7f3"></a><!-- doxytag: member="vfetk.h::Vfetk_getVcsm" ref="ge16c17016c3f527e1639f0e2e2ece7f3" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structsVcsm.html">Vcsm</a>* Vfetk_getVcsm           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a pointer to the Vcsm (charge-simplex map) object. 
<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 the Vcsm (charge-simplex map) object </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>
The Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01994">Vfetk_externalUpdateFunction()</a>, and <a class="el" href="vfetk_8c-source.html#l01709">Vfetk_PDE_delta()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g1231ccdd3888cc5f45ade93470c4cd1b"></a><!-- doxytag: member="vfetk.h::Vfetk_getVpbe" ref="g1231ccdd3888cc5f45ade93470c4cd1b" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structsVpbe.html">Vpbe</a>* Vfetk_getVpbe           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a pointer to the Vpbe (PBE manager) object. 
<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 the Vpbe (PBE manager) object </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>
The Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>.</p>

</div>
</div><p>
<a class="anchor" name="gd6be15a2e00968d685a09131436bcc10"></a><!-- doxytag: member="vfetk.h::Vfetk_loadGem" ref="gd6be15a2e00968d685a09131436bcc10" args="(Vfetk *thee, Gem *gm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Vrc_Codes Vfetk_loadGem           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Gem *&nbsp;</td>
          <td class="paramname"> <em>gm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Load a Gem geometry manager object into Vfetk. 
<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>
Destination </td></tr>
<tr><td valign="top"><em>gm</em>&nbsp;</td><td>
Geometry manager source </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="gfd508383dd1b2fbcacad0aee73373b57"></a><!-- doxytag: member="vfetk.h::Vfetk_loadMesh" ref="gfd508383dd1b2fbcacad0aee73373b57" args="(Vfetk *thee, double center[3], double length[3], Vfetk_MeshLoad meshType, Vio *sock)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Vrc_Codes Vfetk_loadMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>center</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>length</em>[3], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Vfetk.html#g0ae7e4598a4dfa736d291a33d341c808">Vfetk_MeshLoad</a>&nbsp;</td>
          <td class="paramname"> <em>meshType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Vio *&nbsp;</td>
          <td class="paramname"> <em>sock</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Loads a mesh into the Vfetk (and associated) object(s). 
<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>center</em>&nbsp;</td><td>
Vfetk object to load into </td></tr>
<tr><td valign="top"><em>length</em>&nbsp;</td><td>
Center for mesh (if constructed) </td></tr>
<tr><td valign="top"><em>meshType</em>&nbsp;</td><td>
Mesh lengths (if constructed) </td></tr>
<tr><td valign="top"><em>sock</em>&nbsp;</td><td>
Type of mesh to load Socket for external mesh data (NULL otherwise) </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vcsm_8c-source.html#l00138">Vcsm_ctor()</a>, <a class="el" href="vcsm_8c-source.html#l00172">Vcsm_init()</a>, <a class="el" href="vfetk_8c-source.html#l00836">Vfetk_genCube()</a>, <a class="el" href="vfetk_8h-source.html#l00100">VML_DIRICUBE</a>, <a class="el" href="vfetk_8h-source.html#l00102">VML_EXTERNAL</a>, <a class="el" href="vfetk_8h-source.html#l00101">VML_NEUMCUBE</a>, <a class="el" href="vpbe_8c-source.html#l00068">Vpbe_getValist()</a>, <a class="el" href="vhal_8h-source.html#l00074">VRC_FAILURE</a>, and <a class="el" href="vhal_8h-source.html#l00075">VRC_SUCCESS</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gfd508383dd1b2fbcacad0aee73373b57_cgraph.png" border="0" usemap="#group__Vfetk_gfd508383dd1b2fbcacad0aee73373b57_cgraph_map" alt=""></center>
<map name="group__Vfetk_gfd508383dd1b2fbcacad0aee73373b57_cgraph_map">
<area shape="rect" href="group__Vcsm.html#g9d6d4cd551a393c05dab3022a8eb401b" title="Construct Vcsm object." alt="" coords="190,33,276,60"><area shape="rect" href="group__Vcsm.html#ge1506d49d6faaf810fa884c18f9c3bba" title="Initialize charge&#45;simplex map with mesh and atom data." alt="" coords="193,96,273,122"><area shape="rect" href="group__Vfetk.html#ge473241047881ecd91d72cba8b037999" title="Construct a rectangular mesh (in the current Vfetk object)." alt="" coords="176,146,290,173"><area shape="rect" href="group__Vpbe.html#g541798ff5543ed7daaa597d661108408" title="Get atom list." alt="" coords="177,197,289,224"><area shape="rect" href="group__Vcsm.html#g9e2eed4344b173d8cf5125bfdb8be8fb" title="FORTRAN stub to construct Vcsm object." alt="" coords="376,8,469,34"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="366,58,478,85"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="338,109,506,136"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="354,160,490,186"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g1317d1cbf17e934f5b88f9238bf763f6"></a><!-- doxytag: member="vfetk.h::Vfetk_memChk" ref="g1317d1cbf17e934f5b88f9238bf763f6" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned long int Vfetk_memChk           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>
THe Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>, and <a class="el" href="vcsm_8c-source.html#l00131">Vcsm_memChk()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g1317d1cbf17e934f5b88f9238bf763f6_cgraph.png" border="0" usemap="#group__Vfetk_g1317d1cbf17e934f5b88f9238bf763f6_cgraph_map" alt=""></center>
<map name="group__Vfetk_g1317d1cbf17e934f5b88f9238bf763f6_cgraph_map">
<area shape="rect" href="group__Vcsm.html#gde3d06b69f9a830c2a801cea8576eddb" title="Return the memory used by this structure (and its contents) in bytes." alt="" coords="170,8,288,34"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g877160adf876489f6493322cf34831d9"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_bisectEdge" ref="g877160adf876489f6493322cf34831d9" args="(int dim, int dimII, int edgeType, int chart[], double vx[][VAPBS_DIM])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_bisectEdge           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dimII</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>edgeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>vx</em>[][VAPBS_DIM]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Define the way manifold edges are bisected. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is thread-safe. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dimII</em>&nbsp;</td><td>
Intrinsic dimension of manifold </td></tr>
<tr><td valign="top"><em>edgeType</em>&nbsp;</td><td>
Embedding dimension of manifold </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Type of edge being refined </td></tr>
<tr><td valign="top"><em>vx</em>&nbsp;</td><td>
Chart for edge vertices, used here as accessibility bitfields Edge vertex coordindates </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g4bb67f5500dd28dcd582d920b50d0b4e"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_ctor" ref="g4bb67f5500dd28dcd582d920b50d0b4e" args="(Vfetk *fetk)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PDE* Vfetk_PDE_ctor           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>fetk</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructs the FEtk PDE object. 
<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>Newly-allocated PDE object </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000010">Bug:</a></b></dt><dd>Not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>fetk</em>&nbsp;</td><td>
The Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>, and <a class="el" href="vfetk_8h-source.html#l00173">sVfetk::vmem</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00544">Vfetk_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g4bb67f5500dd28dcd582d920b50d0b4e_cgraph.png" border="0" usemap="#group__Vfetk_g4bb67f5500dd28dcd582d920b50d0b4e_cgraph_map" alt=""></center>
<map name="group__Vfetk_g4bb67f5500dd28dcd582d920b50d0b4e_cgraph_map">
<area shape="rect" href="group__Vfetk.html#g40b301931083038af40312b49b167794" title="Intializes the FEtk PDE object." alt="" coords="173,602,298,629"><area shape="rect" href="group__Vfetk.html#g877160adf876489f6493322cf34831d9" title="Define the way manifold edges are bisected." alt="" coords="369,172,529,198"><area shape="rect" href="group__Vfetk.html#gd8b11d6436d7ea407c94ac79eb1f9e99" title="Evaluate a (discretized) delta function source term at the given point." alt="" coords="388,222,510,249"><area shape="rect" href="group__Vfetk.html#g58889daff822d088b8286402228eb8e2" title="This is the linearization of the weak form of the PBE; e.g., for use in a Newton..." alt="" coords="377,349,521,376"><area shape="rect" href="group__Vfetk.html#g6ab828dbe466030949f3332a6370a22a" title="Evaluate strong form of PBE. For interior points, this is:  where  is the (possibly..." alt="" coords="393,400,505,426"><area shape="rect" href="group__Vfetk.html#gd8bfaaca31087ca5c98663f1a9839bcc" title="This is the weak form of the PBE; i.e. the strong form integrated with a test function..." alt="" coords="386,450,512,477"><area shape="rect" href="group__Vfetk.html#g850c1f0593b2b3ba8ad2795b5642d340" title="Do once&#45;per&#45;assembly initialization." alt="" coords="364,501,534,528"><area shape="rect" href="group__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa" title="Do once&#45;per&#45;element initialization." alt="" coords="368,552,530,578"><area shape="rect" href="group__Vfetk.html#g92f682b4b349b1236be7306b8091a6f0" title="Do once&#45;per&#45;face initialization." alt="" coords="378,602,520,629"><area shape="rect" href="group__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1" title="Do once&#45;per&#45;point initialization." alt="" coords="377,653,521,680"><area shape="rect" href="group__Vfetk.html#gcd6aede0ecf4ee5b7cd103a68a28aeee" title="Energy functional. This returns the energy (less delta function terms) in the form:..." alt="" coords="394,298,504,325"><area shape="rect" href="group__Vfetk.html#gab7c03cc5568407794999c0f617ab889" title="Map a boundary point to some pre&#45;defined shape." alt="" coords="360,704,538,730"><area shape="rect" href="group__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2" title="User&#45;defined error estimator &#45;&#45; in our case, a geometry&#45;based refinement method;..." alt="" coords="362,754,536,781"><area shape="rect" href="group__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c" title="Unify the chart for different coordinate systems &#45;&#45; a no&#45;op for us." alt="" coords="374,805,524,832"><area shape="rect" href="group__Vfetk.html#gb42e012aef0ff3f23862dacdbaf86f0a" title="Evaluate the bases for the trial or test space, for a particular component of the..." alt="" coords="346,856,552,882"><area shape="rect" href="group__Vfetk.html#g0ba7af67b39b140e8150e5699eb2ad31" title="Initialize the bases for the trial or the test space, for a particular component..." alt="" coords="353,906,545,933"><area shape="rect" href="group__Vfetk.html#gc37aeabeafd642e7a67b0654497ce2ab" title="Evaluate the Dirichlet boundary condition at the given point." alt="" coords="389,957,509,984"><area shape="rect" href="group__Vfetk.html#g0d6f246e3a44d57b2907972efe97bb14" title="Evaluate the &quot;true solution&quot; at the given point for comparison with the..." alt="" coords="390,1008,508,1034"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="618,8,749,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="616,58,752,85"><area shape="rect" href="group__Vcsm.html#g9fb0ff4858be085d6698bd1a1bac8d0d" title="Get particular atom associated with a simplex." alt="" coords="628,109,740,136"><area shape="rect" href="group__Vcsm.html#g0e64a5068f0bb54b5c0603ff87b47d55" title="Get ID of particular atom in a simplex." alt="" coords="610,160,757,186"><area shape="rect" href="group__Vcsm.html#g66a9b72b572a2e69ecbf31d756739a30" title="Get number of atoms associated with a simplex." alt="" coords="600,210,768,237"><area shape="rect" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d" title="Get a pointer to the Gem (grid manager) object." alt="" coords="630,261,737,288"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="628,312,740,338"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="622,362,745,389"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="817,109,929,136"><area shape="rect" href="group__Vgreen.html#g40625a240b34a5eddec5d98925aa3061" title="Construct the Green&#39;s function oracle." alt="" coords="637,464,730,490"><area shape="rect" href="group__Vgreen.html#gc60c5788fc669e5f7b48502bcecfb174" title="Destruct the Green&#39;s function oracle." alt="" coords="636,514,732,541"><area shape="rect" href="group__Vgreen.html#gbf630ca7658e483fc8e58ee3e0353d44" title="FORTRAN stub to construct the Green&#39;s function oracle." alt="" coords="822,464,924,490"><area shape="rect" href="group__Vgreen.html#gb6dced702dabd03e72f9a46ee540f94e" title="FORTRAN stub to destruct the Green&#39;s function oracle." alt="" coords="821,514,925,541"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="644,413,724,440"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g40b301931083038af40312b49b167794"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_ctor2" ref="g40b301931083038af40312b49b167794" args="(PDE *thee, Vfetk *fetk)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_PDE_ctor2           </td>
          <td>(</td>
          <td class="paramtype">PDE *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>fetk</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Intializes the FEtk PDE object. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker (with code by Mike Holst) </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if successful, 0 otherwise </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000011">Bug:</a></b></dt><dd>Not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>fetk</em>&nbsp;</td><td>
The newly-allocated PDE object The parent Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="group__Vfetk.html#g877160adf876489f6493322cf34831d9">Vfetk_PDE_bisectEdge()</a>, <a class="el" href="vfetk_8c-source.html#l01709">Vfetk_PDE_delta()</a>, <a class="el" href="group__Vfetk.html#g58889daff822d088b8286402228eb8e2">Vfetk_PDE_DFu_wv()</a>, <a class="el" href="vfetk_8c-source.html#l01624">Vfetk_PDE_Fu()</a>, <a class="el" href="vfetk_8c-source.html#l01632">Vfetk_PDE_Fu_v()</a>, <a class="el" href="vfetk_8c-source.html#l01437">Vfetk_PDE_initAssemble()</a>, <a class="el" href="group__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa">Vfetk_PDE_initElement()</a>, <a class="el" href="vfetk_8c-source.html#l01488">Vfetk_PDE_initFace()</a>, <a class="el" href="group__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1">Vfetk_PDE_initPoint()</a>, <a class="el" href="vfetk_8c-source.html#l01919">Vfetk_PDE_Ju()</a>, <a class="el" href="group__Vfetk.html#gab7c03cc5568407794999c0f617ab889">Vfetk_PDE_mapBoundary()</a>, <a class="el" href="group__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2">Vfetk_PDE_markSimplex()</a>, <a class="el" href="group__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c">Vfetk_PDE_oneChart()</a>, <a class="el" href="vfetk_8c-source.html#l02119">Vfetk_PDE_simplexBasisForm()</a>, <a class="el" href="vfetk_8c-source.html#l02056">Vfetk_PDE_simplexBasisInit()</a>, <a class="el" href="vfetk_8c-source.html#l01796">Vfetk_PDE_u_D()</a>, and <a class="el" href="vfetk_8c-source.html#l01809">Vfetk_PDE_u_T()</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01112">Vfetk_PDE_ctor()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g40b301931083038af40312b49b167794_cgraph.png" border="0" usemap="#group__Vfetk_g40b301931083038af40312b49b167794_cgraph_map" alt=""></center>
<map name="group__Vfetk_g40b301931083038af40312b49b167794_cgraph_map">
<area shape="rect" href="group__Vfetk.html#g877160adf876489f6493322cf34831d9" title="Define the way manifold edges are bisected." alt="" coords="203,172,363,198"><area shape="rect" href="group__Vfetk.html#gd8b11d6436d7ea407c94ac79eb1f9e99" title="Evaluate a (discretized) delta function source term at the given point." alt="" coords="222,222,345,249"><area shape="rect" href="group__Vfetk.html#g58889daff822d088b8286402228eb8e2" title="This is the linearization of the weak form of the PBE; e.g., for use in a Newton..." alt="" coords="211,349,355,376"><area shape="rect" href="group__Vfetk.html#g6ab828dbe466030949f3332a6370a22a" title="Evaluate strong form of PBE. For interior points, this is:  where  is the (possibly..." alt="" coords="227,400,339,426"><area shape="rect" href="group__Vfetk.html#gd8bfaaca31087ca5c98663f1a9839bcc" title="This is the weak form of the PBE; i.e. the strong form integrated with a test function..." alt="" coords="221,450,346,477"><area shape="rect" href="group__Vfetk.html#g850c1f0593b2b3ba8ad2795b5642d340" title="Do once&#45;per&#45;assembly initialization." alt="" coords="198,501,369,528"><area shape="rect" href="group__Vfetk.html#gecb946cbd53bd9aeddd67c1e4494b6fa" title="Do once&#45;per&#45;element initialization." alt="" coords="202,552,365,578"><area shape="rect" href="group__Vfetk.html#g92f682b4b349b1236be7306b8091a6f0" title="Do once&#45;per&#45;face initialization." alt="" coords="213,602,354,629"><area shape="rect" href="group__Vfetk.html#gb2c9190ba012844d51836146e4c0a6c1" title="Do once&#45;per&#45;point initialization." alt="" coords="211,653,355,680"><area shape="rect" href="group__Vfetk.html#gcd6aede0ecf4ee5b7cd103a68a28aeee" title="Energy functional. This returns the energy (less delta function terms) in the form:..." alt="" coords="229,298,338,325"><area shape="rect" href="group__Vfetk.html#gab7c03cc5568407794999c0f617ab889" title="Map a boundary point to some pre&#45;defined shape." alt="" coords="194,704,373,730"><area shape="rect" href="group__Vfetk.html#gc35880a0b1dcab29fb0eb12aeae116b2" title="User&#45;defined error estimator &#45;&#45; in our case, a geometry&#45;based refinement method;..." alt="" coords="197,754,370,781"><area shape="rect" href="group__Vfetk.html#g0e48a1a433ae34229a1cf5157260eb8c" title="Unify the chart for different coordinate systems &#45;&#45; a no&#45;op for us." alt="" coords="209,805,358,832"><area shape="rect" href="group__Vfetk.html#gb42e012aef0ff3f23862dacdbaf86f0a" title="Evaluate the bases for the trial or test space, for a particular component of the..." alt="" coords="181,856,386,882"><area shape="rect" href="group__Vfetk.html#g0ba7af67b39b140e8150e5699eb2ad31" title="Initialize the bases for the trial or the test space, for a particular component..." alt="" coords="187,906,379,933"><area shape="rect" href="group__Vfetk.html#gc37aeabeafd642e7a67b0654497ce2ab" title="Evaluate the Dirichlet boundary condition at the given point." alt="" coords="223,957,343,984"><area shape="rect" href="group__Vfetk.html#g0d6f246e3a44d57b2907972efe97bb14" title="Evaluate the &quot;true solution&quot; at the given point for comparison with the..." alt="" coords="225,1008,342,1034"><area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="453,8,583,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="450,58,586,85"><area shape="rect" href="group__Vcsm.html#g9fb0ff4858be085d6698bd1a1bac8d0d" title="Get particular atom associated with a simplex." alt="" coords="462,109,574,136"><area shape="rect" href="group__Vcsm.html#g0e64a5068f0bb54b5c0603ff87b47d55" title="Get ID of particular atom in a simplex." alt="" coords="445,160,591,186"><area shape="rect" href="group__Vcsm.html#g66a9b72b572a2e69ecbf31d756739a30" title="Get number of atoms associated with a simplex." alt="" coords="434,210,602,237"><area shape="rect" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d" title="Get a pointer to the Gem (grid manager) object." alt="" coords="465,261,571,288"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="462,312,574,338"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="457,362,579,389"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="651,109,763,136"><area shape="rect" href="group__Vgreen.html#g40625a240b34a5eddec5d98925aa3061" title="Construct the Green&#39;s function oracle." alt="" coords="471,464,565,490"><area shape="rect" href="group__Vgreen.html#gc60c5788fc669e5f7b48502bcecfb174" title="Destruct the Green&#39;s function oracle." alt="" coords="470,514,566,541"><area shape="rect" href="group__Vgreen.html#gbf630ca7658e483fc8e58ee3e0353d44" title="FORTRAN stub to construct the Green&#39;s function oracle." alt="" coords="657,464,758,490"><area shape="rect" href="group__Vgreen.html#gb6dced702dabd03e72f9a46ee540f94e" title="FORTRAN stub to destruct the Green&#39;s function oracle." alt="" coords="655,514,759,541"><area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="478,413,558,440"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gd8b11d6436d7ea407c94ac79eb1f9e99"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_delta" ref="gd8b11d6436d7ea407c94ac79eb1f9e99" args="(PDE *thee, int type, int chart, double txq[], void *user, double F[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_delta           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>txq</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>F</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Evaluate a (discretized) delta function source term at the given point. 
<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#_bug000020">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Vertex type </td></tr>
<tr><td valign="top"><em>txq</em>&nbsp;</td><td>
Chart for point coordinates </td></tr>
<tr><td valign="top"><em>user</em>&nbsp;</td><td>
Point coordinates </td></tr>
<tr><td valign="top"><em>F</em>&nbsp;</td><td>
Vertex object pointer Set to delta function value </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00245">sVfetk_LocalVar::delta</a>, <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vhal_8h-source.html#l00145">PBE_LPBE</a>, <a class="el" href="vhal_8h-source.html#l00147">PBE_LRPBE</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="vfetk_8h-source.html#l00194">sVfetk::type</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="vfetk_8c-source.html#l01708">VATOMMAX</a>, <a class="el" href="vcsm_8c-source.html#l00079">Vcsm_getAtom()</a>, <a class="el" href="vcsm_8c-source.html#l00090">Vcsm_getAtomIndex()</a>, <a class="el" href="vcsm_8c-source.html#l00071">Vcsm_getNumberAtoms()</a>, <a class="el" href="vfetk_8c-source.html#l00493">Vfetk_getGem()</a>, <a class="el" href="vfetk_8c-source.html#l00513">Vfetk_getVcsm()</a>, <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>, and <a class="el" href="vfetk_8c-source.html#l01705">VRINGMAX</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gd8b11d6436d7ea407c94ac79eb1f9e99_cgraph.png" border="0" usemap="#group__Vfetk_gd8b11d6436d7ea407c94ac79eb1f9e99_cgraph_map" alt=""></center>
<map name="group__Vfetk_gd8b11d6436d7ea407c94ac79eb1f9e99_cgraph_map">
<area shape="rect" href="group__Vatom.html#g6123ac049c637301d5aa730c18c94756" title="Get atomic charge." alt="" coords="200,7,330,34"><area shape="rect" href="group__Vatom.html#gbe19ed4ab35365a2e8f7505bcbb6bca2" title="Get atomic position." alt="" coords="197,58,333,85"><area shape="rect" href="group__Vcsm.html#g9fb0ff4858be085d6698bd1a1bac8d0d" title="Get particular atom associated with a simplex." alt="" coords="209,109,321,135"><area shape="rect" href="group__Vcsm.html#g0e64a5068f0bb54b5c0603ff87b47d55" title="Get ID of particular atom in a simplex." alt="" coords="192,159,338,186"><area shape="rect" href="group__Vcsm.html#g66a9b72b572a2e69ecbf31d756739a30" title="Get number of atoms associated with a simplex." alt="" coords="181,210,349,237"><area shape="rect" href="group__Vfetk.html#ge996913edc49d3be58cfad38cf2ead4d" title="Get a pointer to the Gem (grid manager) object." alt="" coords="212,261,318,287"><area shape="rect" href="group__Vfetk.html#ge16c17016c3f527e1639f0e2e2ece7f3" title="Get a pointer to the Vcsm (charge&#45;simplex map) object." alt="" coords="209,311,321,338"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="204,362,326,389"><area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="398,109,510,135"></map>
</div>

</div>
</div><p>
<a class="anchor" name="g58889daff822d088b8286402228eb8e2"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_DFu_wv" ref="g58889daff822d088b8286402228eb8e2" args="(PDE *thee, int key, double W[], double dW[][VAPBS_DIM], double V[], double dV[][VAPBS_DIM])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_PDE_DFu_wv           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>W</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>dW</em>[][VAPBS_DIM], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>V</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>dV</em>[][VAPBS_DIM]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is the linearization of the weak form of the PBE; e.g., for use in a Newton iteration. This is the functional linearization of the strong form integrated with a test function to give: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int_\Omega \left[ \epsilon \nabla w \cdot \nabla v + b'(u) w v - f v \right] dx \]" src="form_62.png">
<p>
 where <img class="formulaInl" alt="$b'(u)$" src="form_63.png"> denotes the functional derivation of the mobile ion term. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Integrand value </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000019">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>key</em>&nbsp;</td><td>
The PDE object </td></tr>
<tr><td valign="top"><em>W</em>&nbsp;</td><td>
Integrand to evaluate (0 = interior weak form, 1 = boundary weak form) </td></tr>
<tr><td valign="top"><em>dW</em>&nbsp;</td><td>
Trial function value at current point </td></tr>
<tr><td valign="top"><em>V</em>&nbsp;</td><td>
Trial function gradient at current point </td></tr>
<tr><td valign="top"><em>dV</em>&nbsp;</td><td>
Test function value at current point Test function gradient </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gf53be91ac6774829c8f377c15dda8ea5"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_dtor" ref="gf53be91ac6774829c8f377c15dda8ea5" args="(PDE **thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_dtor           </td>
          <td>(</td>
          <td class="paramtype">PDE **&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destroys FEtk PDE object. 
<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>Thread-safe </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 PDE object memory </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8c-source.html#l01175">Vfetk_PDE_dtor2()</a>, and <a class="el" href="vfetk_8h-source.html#l00173">sVfetk::vmem</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00627">Vfetk_dtor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gf53be91ac6774829c8f377c15dda8ea5_cgraph.png" border="0" usemap="#group__Vfetk_gf53be91ac6774829c8f377c15dda8ea5_cgraph_map" alt=""></center>
<map name="group__Vfetk_gf53be91ac6774829c8f377c15dda8ea5_cgraph_map">
<area shape="rect" href="group__Vfetk.html#gea58e1b29973b503b24ef85c08320253" title="FORTRAN stub: destroys FEtk PDE object." alt="" coords="175,8,301,34"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gea58e1b29973b503b24ef85c08320253"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_dtor2" ref="gea58e1b29973b503b24ef85c08320253" args="(PDE *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_dtor2           </td>
          <td>(</td>
          <td class="paramtype">PDE *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
FORTRAN stub: destroys FEtk PDE object. 
<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>Thread-safe </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>
PDE object memory </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01165">Vfetk_PDE_dtor()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g6ab828dbe466030949f3332a6370a22a"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_Fu" ref="g6ab828dbe466030949f3332a6370a22a" args="(PDE *thee, int key, double F[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_Fu           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>F</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Evaluate strong form of PBE. For interior points, this is: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ -\nabla \cdot \epsilon \nabla u + b(u) - f \]" src="form_56.png">
<p>
 where <img class="formulaInl" alt="$b(u)$" src="form_57.png"> is the (possibly nonlinear) mobile ion term and <img class="formulaInl" alt="$f$" src="form_58.png"> is the source charge distribution term (for PBE) or the induced surface charge distribution (for RPBE). For an interior-boundary (simplex face) point, this is: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ [\epsilon(x) \nabla u(x) \cdot n(x)]_{x=0^+} - [\epsilon(x) \nabla u(x) \cdot n(x)]_{x=0^-} \]" src="form_59.png">
<p>
 where <img class="formulaInl" alt="$n(x)$" src="form_60.png"> is the normal to the simplex face and the term represents the jump in dielectric displacement across the face. There is no outer-boundary contribution for this problem. 
<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#_bug000016">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000016">Bug:</a></b></dt><dd>This function is not implemented (sets error to zero) </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>key</em>&nbsp;</td><td>
The PDE object </td></tr>
<tr><td valign="top"><em>F</em>&nbsp;</td><td>
Type of point (0 = interior, 1 = boundary, 2 = interior boundary Set to value of residual </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gd8bfaaca31087ca5c98663f1a9839bcc"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_Fu_v" ref="gd8bfaaca31087ca5c98663f1a9839bcc" args="(PDE *thee, int key, double V[], double dV[][VAPBS_DIM])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_PDE_Fu_v           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>V</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>dV</em>[][VAPBS_DIM]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is the weak form of the PBE; i.e. the strong form integrated with a test function to give: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int_\Omega \left[ \epsilon \nabla u \cdot \nabla v + b(u) v - f v \right] dx \]" src="form_61.png">
<p>
 where <img class="formulaInl" alt="$b(u)$" src="form_57.png"> denotes the mobile ion term. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Integrand value </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000018">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>key</em>&nbsp;</td><td>
The PDE object </td></tr>
<tr><td valign="top"><em>V</em>&nbsp;</td><td>
Integrand to evaluate (0 = interior weak form, 1 = boundary weak form </td></tr>
<tr><td valign="top"><em>dV</em>&nbsp;</td><td>
Test function at current point Test function derivative at current point </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00223">sVfetk_LocalVar::A</a>, <a class="el" href="vfetk_8h-source.html#l00225">sVfetk_LocalVar::B</a>, <a class="el" href="vfetk_8h-source.html#l00215">sVfetk_LocalVar::dU</a>, <a class="el" href="vfetk_8h-source.html#l00217">sVfetk_LocalVar::dW</a>, <a class="el" href="vfetk_8h-source.html#l00224">sVfetk_LocalVar::F</a>, <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8h-source.html#l00243">sVfetk_LocalVar::Fu_v</a>, <a class="el" href="vhal_8h-source.html#l00147">PBE_LRPBE</a>, and <a class="el" href="vfetk_8h-source.html#l00194">sVfetk::type</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g850c1f0593b2b3ba8ad2795b5642d340"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_initAssemble" ref="g850c1f0593b2b3ba8ad2795b5642d340" args="(PDE *thee, int ip[], double rp[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_initAssemble           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>ip</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>rp</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do once-per-assembly initialization. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>ip</em>&nbsp;</td><td>
PDE object </td></tr>
<tr><td valign="top"><em>rp</em>&nbsp;</td><td>
Integer parameter array (not used) Double parameter array (not used) </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8h-source.html#l00229">sVfetk_LocalVar::green</a>, <a class="el" href="vfetk_8h-source.html#l00230">sVfetk_LocalVar::initGreen</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vgreen_8c-source.html#l00155">Vgreen_ctor()</a>, and <a class="el" href="vgreen_8c-source.html#l00191">Vgreen_dtor()</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g850c1f0593b2b3ba8ad2795b5642d340_cgraph.png" border="0" usemap="#group__Vfetk_g850c1f0593b2b3ba8ad2795b5642d340_cgraph_map" alt=""></center>
<map name="group__Vfetk_g850c1f0593b2b3ba8ad2795b5642d340_cgraph_map">
<area shape="rect" href="group__Vgreen.html#g40625a240b34a5eddec5d98925aa3061" title="Construct the Green&#39;s function oracle." alt="" coords="230,7,323,34"><area shape="rect" href="group__Vgreen.html#gc60c5788fc669e5f7b48502bcecfb174" title="Destruct the Green&#39;s function oracle." alt="" coords="229,58,325,85"><area shape="rect" href="group__Vgreen.html#gbf630ca7658e483fc8e58ee3e0353d44" title="FORTRAN stub to construct the Green&#39;s function oracle." alt="" coords="374,7,475,34"><area shape="rect" href="group__Vgreen.html#gb6dced702dabd03e72f9a46ee540f94e" title="FORTRAN stub to destruct the Green&#39;s function oracle." alt="" coords="373,58,477,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gecb946cbd53bd9aeddd67c1e4494b6fa"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_initElement" ref="gecb946cbd53bd9aeddd67c1e4494b6fa" args="(PDE *thee, int elementType, int chart, double tvx[][VAPBS_DIM], void *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_initElement           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>elementType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>tvx</em>[][VAPBS_DIM], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do once-per-element initialization. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Jump term is not implemented </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000012">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>elementType</em>&nbsp;</td><td>
PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Material type (not used) </td></tr>
<tr><td valign="top"><em>tvx</em>&nbsp;</td><td>
Chart in which the vertex coordinates are provided, used here as a bitfield to store molecular accessibility </td></tr>
<tr><td valign="top"><em>data</em>&nbsp;</td><td>
Vertex coordinates Simplex pointer (hack) </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g92f682b4b349b1236be7306b8091a6f0"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_initFace" ref="g92f682b4b349b1236be7306b8091a6f0" args="(PDE *thee, int faceType, int chart, double tnvec[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_initFace           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>faceType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>tnvec</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do once-per-face initialization. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000013">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>faceType</em>&nbsp;</td><td>
THe PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Simplex face type (interior or various boundary types) </td></tr>
<tr><td valign="top"><em>tnvec</em>&nbsp;</td><td>
Chart in which the vertex coordinates are provided, used here as a bitfield for molecular accessibility Coordinates of outward normal vector for face </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00220">sVfetk_LocalVar::fType</a>, and <a class="el" href="vfetk_8h-source.html#l00211">sVfetk_LocalVar::nvec</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gb2c9190ba012844d51836146e4c0a6c1"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_initPoint" ref="gb2c9190ba012844d51836146e4c0a6c1" args="(PDE *thee, int pointType, int chart, double txq[], double tU[], double tdU[][VAPBS_DIM])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_initPoint           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>pointType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>txq</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>tU</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>tdU</em>[][VAPBS_DIM]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do once-per-point initialization. 
<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#_bug000014">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000014">Bug:</a></b></dt><dd>This function uses pre-defined boudnary definitions for the molecular surface. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>pointType</em>&nbsp;</td><td>
The PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
The type of point -- interior or various faces </td></tr>
<tr><td valign="top"><em>txq</em>&nbsp;</td><td>
The chart in which the point coordinates are provided, used here as bitfield for molecular accessibility </td></tr>
<tr><td valign="top"><em>tU</em>&nbsp;</td><td>
Point coordinates </td></tr>
<tr><td valign="top"><em>tdU</em>&nbsp;</td><td>
Solution value at point Solution derivative at point </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gcd6aede0ecf4ee5b7cd103a68a28aeee"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_Ju" ref="gcd6aede0ecf4ee5b7cd103a68a28aeee" args="(PDE *thee, int key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_PDE_Ju           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>key</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Energy functional. This returns the energy (less delta function terms) in the form: <p class="formulaDsp">
<img class="formulaDsp" alt="\[ c^{-1}/2 \int (\epsilon (\nabla u)^2 + \kappa^2 (cosh u - 1)) dx \]" src="form_64.png">
<p>
 for a 1:1 electrolyte where <img class="formulaInl" alt="$c$" src="form_65.png"> is the output from Vpbe_getZmagic. 
<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>Energy value (in kT) </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000025">Bug:</a></b></dt><dd>This function is not thread-safe. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>key</em>&nbsp;</td><td>
The PDE object What to evluate: interior (0) or boundary (1)? </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00221">sVfetk_LocalVar::diel</a>, <a class="el" href="vfetk_8h-source.html#l00215">sVfetk_LocalVar::dU</a>, <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8h-source.html#l00222">sVfetk_LocalVar::ionacc</a>, <a class="el" href="vfetk_8h-source.html#l00236">sVfetk_LocalVar::ionConc</a>, <a class="el" href="vfetk_8h-source.html#l00237">sVfetk_LocalVar::ionQ</a>, <a class="el" href="vfetk_8h-source.html#l00242">sVfetk_LocalVar::nion</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vhal_8h-source.html#l00145">PBE_LPBE</a>, <a class="el" href="vhal_8h-source.html#l00147">PBE_LRPBE</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="vfetk_8h-source.html#l00194">sVfetk::type</a>, <a class="el" href="vfetk_8h-source.html#l00214">sVfetk_LocalVar::U</a>, <a class="el" href="vcap_8c-source.html#l00058">Vcap_exp()</a>, <a class="el" href="vpbe_8c-source.html#l00154">Vpbe_getZmagic()</a>, <a class="el" href="vfetk_8h-source.html#l00216">sVfetk_LocalVar::W</a>, <a class="el" href="vfetk_8h-source.html#l00239">sVfetk_LocalVar::zkappa2</a>, and <a class="el" href="vfetk_8h-source.html#l00240">sVfetk_LocalVar::zks2</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gcd6aede0ecf4ee5b7cd103a68a28aeee_cgraph.png" border="0" usemap="#group__Vfetk_gcd6aede0ecf4ee5b7cd103a68a28aeee_cgraph_map" alt=""></center>
<map name="group__Vfetk_gcd6aede0ecf4ee5b7cd103a68a28aeee_cgraph_map">
<area shape="rect" href="group__Vcap.html#g30fdd185fb47faae0ea2edda2ddb32c4" title="Provide a capped exp() function." alt="" coords="186,7,266,34"><area shape="rect" href="group__Vpbe.html#geb447cb04d310e06a5edd1b96bbc52bb" title="Get charge scaling factor." alt="" coords="165,58,288,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gab7c03cc5568407794999c0f617ab889"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_mapBoundary" ref="gab7c03cc5568407794999c0f617ab889" args="(int dim, int dimII, int vertexType, int chart, double vx[VAPBS_DIM])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_mapBoundary           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dimII</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>vertexType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>vx</em>[VAPBS_DIM]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Map a boundary point to some pre-defined shape. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker and Mike Holst </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is thread-safe and is a no-op </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dimII</em>&nbsp;</td><td>
Intrinsic dimension of manifold </td></tr>
<tr><td valign="top"><em>vertexType</em>&nbsp;</td><td>
Embedding dimension of manifold </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Type of vertex </td></tr>
<tr><td valign="top"><em>vx</em>&nbsp;</td><td>
Chart for vertex coordinates Vertex coordinates </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gc35880a0b1dcab29fb0eb12aeae116b2"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_markSimplex" ref="gc35880a0b1dcab29fb0eb12aeae116b2" args="(int dim, int dimII, int simplexType, int faceType[VAPBS_NVS], int vertexType[VAPBS_NVS], int chart[], double vx[][VAPBS_DIM], void *simplex)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_PDE_markSimplex           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dimII</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>simplexType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>faceType</em>[VAPBS_NVS], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>vertexType</em>[VAPBS_NVS], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>vx</em>[][VAPBS_DIM], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>simplex</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
User-defined error estimator -- in our case, a geometry-based refinement method; forcing simplex refinement at the dielectric boundary and (for non-regularized PBE) the charges. 
<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 mark simplex for refinement, 0 otherwise </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000024">Bug:</a></b></dt><dd>This function is not thread-safe </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dimII</em>&nbsp;</td><td>
Intrinsic manifold dimension </td></tr>
<tr><td valign="top"><em>simplexType</em>&nbsp;</td><td>
Embedding manifold dimension </td></tr>
<tr><td valign="top"><em>faceType</em>&nbsp;</td><td>
Type of simplex being refined </td></tr>
<tr><td valign="top"><em>vertexType</em>&nbsp;</td><td>
Types of faces in simplex </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Types of vertices in simplex </td></tr>
<tr><td valign="top"><em>vx</em>&nbsp;</td><td>
Charts for vertex coordinates </td></tr>
<tr><td valign="top"><em>simplex</em>&nbsp;</td><td>
Vertex coordinates Simplex pointer </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g0e48a1a433ae34229a1cf5157260eb8c"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_oneChart" ref="g0e48a1a433ae34229a1cf5157260eb8c" args="(int dim, int dimII, int objType, int chart[], double vx[][VAPBS_DIM], int dimV)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_oneChart           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dimII</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>objType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>vx</em>[][VAPBS_DIM], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dimV</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unify the chart for different coordinate systems -- a no-op for us. 
<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>Thread-safe; a no-op </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dimII</em>&nbsp;</td><td>
Intrinsic manifold dimension </td></tr>
<tr><td valign="top"><em>objType</em>&nbsp;</td><td>
Embedding manifold dimension </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
??? </td></tr>
<tr><td valign="top"><em>vx</em>&nbsp;</td><td>
Charts of vertices' coordinates </td></tr>
<tr><td valign="top"><em>dimV</em>&nbsp;</td><td>
Vertices' coordinates Number of vertices </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gb42e012aef0ff3f23862dacdbaf86f0a"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_simplexBasisForm" ref="gb42e012aef0ff3f23862dacdbaf86f0a" args="(int key, int dim, int comp, int pdkey, double xq[], double basis[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_simplexBasisForm           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>comp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>pdkey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>xq</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>basis</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Evaluate the bases for the trial or test space, for a particular component of the system, at all quadrature points on the master simplex element. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Mike Holst </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dim</em>&nbsp;</td><td>
Basis type to evaluate (0 = trial, 1 = test, 2 = trialB, 3 = testB) </td></tr>
<tr><td valign="top"><em>comp</em>&nbsp;</td><td>
Spatial dimension Which component of elliptic system to produce basis for </td></tr>
<tr><td valign="top"><em>xq</em>&nbsp;</td><td>
Basis partial differential equation evaluation key: <ul>
<li>0 = evaluate basis(x,y,z) </li>
<li>1 = evaluate basis_x(x,y,z) </li>
<li>2 = evaluate basis_y(x,y,z) </li>
<li>3 = evaluate basis_z(x,y,z) </li>
<li>4 = evaluate basis_xx(x,y,z) </li>
<li>5 = evaluate basis_yy(x,y,z) </li>
<li>6 = evaluate basis_zz(x,y,z) </li>
<li>7 = etc... </li>
</ul>
</td></tr>
<tr><td valign="top"><em>basis</em>&nbsp;</td><td>
Set to quad pt coordinate Set to all basis functions evaluated at all quadrature pts </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g0ba7af67b39b140e8150e5699eb2ad31"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_simplexBasisInit" ref="g0ba7af67b39b140e8150e5699eb2ad31" args="(int key, int dim, int comp, int *ndof, int dof[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_PDE_simplexBasisInit           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>comp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>ndof</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dof</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize the bases for the trial or the test space, for a particular component of the system, at all quadrature points on the master simplex element. 
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Mike Holst </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd><div class="fragment"><pre class="fragment">
 *   The basis ordering is important.  For a fixed quadrature
 *   point iq, you must follow the following ordering in p[iq][],
 *   based on how you specify the degrees of freedom in dof[]:
 *   
 *   &lt;v_0 vDF_0&gt;,      &lt;v_1 vDF_0&gt;,      ..., &lt;v_{nv} vDF_0&gt;
 *   &lt;v_0 vDF_1&gt;,      &lt;v_1 vDF_1&gt;,      ..., &lt;v_{nv} vDF_1&gt;
 *                           ...
 *   &lt;v_0 vDF_{nvDF}&gt;, &lt;v_0 vDF_{nvDF}&gt;, ..., &lt;v_{nv} vDF_{nvDF}&gt;
 *   
 *   &lt;e_0 eDF_0&gt;,      &lt;e_1 eDF_0&gt;,      ..., &lt;e_{ne} eDF_0&gt;
 *   &lt;e_0 eDF_1&gt;,      &lt;e_1 eDF_1&gt;,      ..., &lt;e_{ne} eDF_1&gt;
 *                           ...
 *   &lt;e_0 eDF_{neDF}&gt;, &lt;e_1 eDF_{neDF}&gt;, ..., &lt;e_{ne} eDF_{neDF}&gt;
 *
 *   &lt;f_0 fDF_0&gt;,      &lt;f_1 fDF_0&gt;,      ..., &lt;f_{nf} fDF_0&gt;
 *   &lt;f_0 fDF_1&gt;,      &lt;f_1 fDF_1&gt;,      ..., &lt;f_{nf} fDF_1&gt;
 *                           ...
 *   &lt;f_0 fDF_{nfDF}&gt;, &lt;f_1 fDF_{nfDF}&gt;, ..., &lt;f_{nf} fDF_{nfDF}&gt;
 *
 *   &lt;s_0 sDF_0&gt;,      &lt;s_1 sDF_0&gt;,      ..., &lt;s_{ns} sDF_0&gt;
 *   &lt;s_0 sDF_1&gt;,      &lt;s_1 sDF_1&gt;,      ..., &lt;s_{ns} sDF_1&gt;
 *                           ...
 *   &lt;s_0 sDF_{nsDF}&gt;, &lt;s_1 sDF_{nsDF}&gt;, ..., &lt;s_{ns} sDF_{nsDF}&gt;
 *
 *   For example, linear elements in R^3, with one degree of freedom at each *
 *   vertex, would use the following ordering: 
 *
 *     &lt;v_0 vDF_0&gt;, &lt;v_1 vDF_0&gt;, &lt;v_2 vDF_0&gt;, &lt;v_3 vDF_0&gt; 
 *
 *   Quadratic elements in R^2, with one degree of freedom at each vertex and
 *   edge, would use the following ordering: 
 * 
 *     &lt;v_0 vDF_0&gt;, &lt;v_1 vDF_0&gt;, &lt;v_2 vDF_0&gt; 
 *     &lt;e_0 eDF_0&gt;, &lt;e_1 eDF_0&gt;, &lt;e_2 eDF_0&gt; 
 *
 *   You can use different trial and test spaces for each component of the
 *   elliptic system, thereby allowing for the use of Petrov-Galerkin methods.
 *   You MUST then tag the bilinear form symmetry entries as nonsymmetric in
 *   your PDE constructor to reflect that DF(u)(w,v) will be different from
 *   DF(u)(v,w), even if your form acts symmetrically when the same basis is
 *   used for w and v.
 * 
 *   You can also use different trial spaces for each component of the elliptic
 *   system, and different test spaces for each component of the elliptic
 *   system.  This allows you to e.g.  use a basis which is vertex-based for 
 *   one component, and a basis which is edge-based for another.  This is
 *   useful in fluid mechanics, eletromagnetics, or simply to play around with
 *   different elements.  
 *   
 *   This function is called by MC to build new master elements whenever it
 *   reads in a new mesh.  Therefore, this function does not have to be all
 *   that fast, and e.g.  could involve symbolic computation.
 *   </pre></div> </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>dim</em>&nbsp;</td><td>
Basis type to evaluate (0 = trial, 1 = test, 2 = trialB, 3 = testB) </td></tr>
<tr><td valign="top"><em>comp</em>&nbsp;</td><td>
Spatial dimension </td></tr>
<tr><td valign="top"><em>ndof</em>&nbsp;</td><td>
Which component of elliptic system to produce basis for? </td></tr>
<tr><td valign="top"><em>dof</em>&nbsp;</td><td>
Set to the number of degrees of freedom Set to degree of freedom per v/e/f/s </td></tr>
</table>
</dl>
<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gc37aeabeafd642e7a67b0654497ce2ab"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_u_D" ref="gc37aeabeafd642e7a67b0654497ce2ab" args="(PDE *thee, int type, int chart, double txq[], double F[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_u_D           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>txq</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>F</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Evaluate the Dirichlet boundary condition at the given point. 
<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#_bug000021">Bug:</a></b></dt><dd>This function is hard-coded to call only multiple-sphere Debye-H&uuml; functions. </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000021">Bug:</a></b></dt><dd>This function is not thread-safe. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Vertex boundary type </td></tr>
<tr><td valign="top"><em>txq</em>&nbsp;</td><td>
Chart for point coordinates </td></tr>
<tr><td valign="top"><em>F</em>&nbsp;</td><td>
Point coordinates Set to boundary values </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00228">sVfetk_LocalVar::fetk</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="vhal_8h-source.html#l00145">PBE_LPBE</a>, <a class="el" href="vhal_8h-source.html#l00147">PBE_LRPBE</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="vfetk_8h-source.html#l00194">sVfetk::type</a>, and <a class="el" href="vfetk_8h-source.html#l00246">sVfetk_LocalVar::u_D</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="g0d6f246e3a44d57b2907972efe97bb14"></a><!-- doxytag: member="vfetk.h::Vfetk_PDE_u_T" ref="g0d6f246e3a44d57b2907972efe97bb14" args="(PDE *thee, int type, int chart, double txq[], double F[])" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_PDE_u_T           </td>
          <td>(</td>
          <td class="paramtype">PDE *&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>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>txq</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>F</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Evaluate the "true solution" at the given point for comparison with the numerical solution. 
<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>This function only returns zero. </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000023">Bug:</a></b></dt><dd>This function is not thread-safe. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>type</em>&nbsp;</td><td>
PDE object </td></tr>
<tr><td valign="top"><em>chart</em>&nbsp;</td><td>
Point type </td></tr>
<tr><td valign="top"><em>txq</em>&nbsp;</td><td>
Chart for point coordinates </td></tr>
<tr><td valign="top"><em>F</em>&nbsp;</td><td>
Point coordinates Set to value at point </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00247">sVfetk_LocalVar::u_T</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l01123">Vfetk_PDE_ctor2()</a>.</p>

</div>
</div><p>
<a class="anchor" name="gdfc571213f31e96d961f0828fa8fcda7"></a><!-- doxytag: member="vfetk.h::Vfetk_qfEnergy" ref="gdfc571213f31e96d961f0828fa8fcda7" args="(Vfetk *thee, int color)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Vfetk_qfEnergy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>color</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 <img class="formulaInl" alt="$k_B T$" src="form_45.png">. 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 compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>thee</em>&nbsp;</td><td>Vfetk object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>color</em>&nbsp;</td><td>Partition restriction for energy evaluation, only used if non-negative </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The fixed charge electrostatic energy in units of <img class="formulaInl" alt="$k_B T$" src="form_45.png">. </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>color</em>&nbsp;</td><td>
The Vfetk object Partition restriction for energy evaluation, only used if non-negative </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vfetk_8h-source.html#l00177">sVfetk::am</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</a>, <a class="el" href="valist_8c-source.html#l00104">Valist_getNumberAtoms()</a>, and <a class="el" href="vfetk_8c-source.html#l00635">Vfetk_getSolution()</a>.</p>

<p>Referenced by <a class="el" href="vfetk_8c-source.html#l00666">Vfetk_energy()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_gdfc571213f31e96d961f0828fa8fcda7_cgraph.png" border="0" usemap="#group__Vfetk_gdfc571213f31e96d961f0828fa8fcda7_cgraph_map" alt=""></center>
<map name="group__Vfetk_gdfc571213f31e96d961f0828fa8fcda7_cgraph_map">
<area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="170,7,338,34"><area shape="rect" href="group__Vfetk.html#g414150bb3abf21e2d461b7fd596befa9" title="Create an array containing the solution (electrostatic potential in units of ) at..." alt="" coords="190,58,318,85"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gcc1cb65fc774540f00795cfde20d9532"></a><!-- doxytag: member="vfetk.h::Vfetk_readMesh" ref="gcc1cb65fc774540f00795cfde20d9532" args="(Vfetk *thee, int skey, Vio *sock)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_readMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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>skey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Vio *&nbsp;</td>
          <td class="paramname"> <em>sock</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Read in mesh and initialize associated internal structures. 
<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></dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__Vfetk.html#ge473241047881ecd91d72cba8b037999" title="Construct a rectangular mesh (in the current Vfetk object).">Vfetk_genCube</a> </dd></dl>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>skey</em>&nbsp;</td><td>
THe Vfetk object </td></tr>
<tr><td valign="top"><em>sock</em>&nbsp;</td><td>
The sock format key (0 = MCSF simplex format) Socket object ready for reading </td></tr>
</table>
</dl>
</div>
</div><p>
<a class="anchor" name="g4be8c4c7a641a5fa2c5f8e2ae02d00fb"></a><!-- doxytag: member="vfetk.h::Vfetk_setAtomColors" ref="g4be8c4c7a641a5fa2c5f8e2ae02d00fb" args="(Vfetk *thee)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_setAtomColors           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Transfer color (partition ID) information frmo a partitioned mesh to the atoms. 
<p>
Transfer color information from partitioned mesh to the atoms. In the case that a charge is shared between two partitions, the partition color of the first simplex is selected. Due to the arbitrary nature of this selection, THIS METHOD SHOULD ONLY BE USED IMMEDIATELY AFTER PARTITIONING!!! <dl class="warning" compact><dt><b>Warning:</b></dt><dd>This function should only be used immediately after mesh partitioning</dd></dl>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Nathan Baker </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This is a friend function of Vcsm </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>
THe Vfetk object </td></tr>
</table>
</dl>
<p>References <a class="el" href="vpbe_8h-source.html#l00086">sVpbe::alist</a>, <a class="el" href="vfetk_8h-source.html#l00181">sVfetk::csm</a>, <a class="el" href="vfetk_8h-source.html#l00180">sVfetk::pbe</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="vatom_8c-source.html#l00076">Vatom_setPartID()</a>, and <a class="el" href="vcsm_8c-source.html#l00111">Vcsm_getSimplex()</a>.</p>

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

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="group__Vfetk_g4be8c4c7a641a5fa2c5f8e2ae02d00fb_cgraph.png" border="0" usemap="#group__Vfetk_g4be8c4c7a641a5fa2c5f8e2ae02d00fb_cgraph_map" alt=""></center>
<map name="group__Vfetk_g4be8c4c7a641a5fa2c5f8e2ae02d00fb_cgraph_map">
<area shape="rect" href="group__Valist.html#g6e228909b1e2c178ee292ae97c5bce62" title="Get pointer to particular atom in list." alt="" coords="233,8,345,34"><area shape="rect" href="group__Valist.html#g2aea567c031963b275f4e6e31f9c3e74" title="Get number of atoms in the list." alt="" coords="205,58,373,85"><area shape="rect" href="group__Vatom.html#g208e36b834b3839119d472c13b0a34e6" title="Set partition ID." alt="" coords="227,109,350,136"><area shape="rect" href="group__Vcsm.html#g9caeb8476cc7827c595d531c8ac1d004" title="Get particular simplex associated with an atom." alt="" coords="225,160,353,186"></map>
</div>

</div>
</div><p>
<a class="anchor" name="gf64eaf3618d20138562a8cc5ba595f28"></a><!-- doxytag: member="vfetk.h::Vfetk_setParameters" ref="gf64eaf3618d20138562a8cc5ba595f28" args="(Vfetk *thee, PBEparm *pbeparm, FEMparm *feparm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Vfetk_setParameters           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</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="structsPBEparm.html">PBEparm</a> *&nbsp;</td>
          <td class="paramname"> <em>pbeparm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsFEMparm.html">FEMparm</a> *&nbsp;</td>
          <td class="paramname"> <em>feparm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the parameter objects. 
<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>pbeparm</em>&nbsp;</td><td>
The Vfetk object </td></tr>
<tr><td valign="top"><em>feparm</em>&nbsp;</td><td>
Parameters for solution of the PBE FEM-speecific solution parameters </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00193">sVfetk::feparm</a>, and <a class="el" href="vfetk_8h-source.html#l00192">sVfetk::pbeparm</a>.</p>

</div>
</div><p>
<a class="anchor" name="g40b0e35447fa6d193bd2fdf2f4a0a86d"></a><!-- doxytag: member="vfetk.h::Vfetk_write" ref="g40b0e35447fa6d193bd2fdf2f4a0a86d" args="(Vfetk *thee, const char *iodev, const char *iofmt, const char *thost, const char *fname, Bvec *vec, Vdata_Format format)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Vfetk_write           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsVfetk.html">Vfetk</a> *&nbsp;</td>
          <td class="paramname"> <em>thee</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>iodev</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>iofmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>thost</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Bvec *&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#gc4f593940585c6a15518f6a7e60ac255">Vdata_Format</a>&nbsp;</td>
          <td class="paramname"> <em>format</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Write out data. 
<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"></td><td valign="top"><em>thee</em>&nbsp;</td><td>Vfetk object </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vec</em>&nbsp;</td><td>FEtk Bvec vector to use </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>format</em>&nbsp;</td><td>Format for data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>iodev</em>&nbsp;</td><td>Output device type (FILE/BUFF/UNIX/INET) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>iofmt</em>&nbsp;</td><td>Output device format (ASCII/XDR) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>thost</em>&nbsp;</td><td>Output hostname (for sockets) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fname</em>&nbsp;</td><td>Output FILE/BUFF/UNIX/INET name </td></tr>
  </table>
</dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is thread-safe </dd></dl>
<dl compact><dt><b><a class="el" href="bug.html#_bug000029">Bug:</a></b></dt><dd>Some values of format are not implemented </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>iodev</em>&nbsp;</td><td>
The Vfetk object </td></tr>
<tr><td valign="top"><em>iofmt</em>&nbsp;</td><td>
Output device type (FILE = file, BUFF = buffer, UNIX = unix pipe, INET = network socket) </td></tr>
<tr><td valign="top"><em>thost</em>&nbsp;</td><td>
Output device format (ASCII = ascii/plaintext, XDR = xdr) </td></tr>
<tr><td valign="top"><em>fname</em>&nbsp;</td><td>
Output hostname for sockets </td></tr>
<tr><td valign="top"><em>vec</em>&nbsp;</td><td>
Output filename for other </td></tr>
<tr><td valign="top"><em>format</em>&nbsp;</td><td>
Data vector Data format </td></tr>
</table>
</dl>
<p>References <a class="el" href="vfetk_8h-source.html#l00178">sVfetk::aprx</a>, <a class="el" href="vfetk_8h-source.html#l00174">sVfetk::gm</a>, <a class="el" href="vcsm_8h-source.html#l00092">sVcsm::gm</a>, <a class="el" href="vhal_8h-source.html#l00315">VDF_AVS</a>, <a class="el" href="vhal_8h-source.html#l00313">VDF_DX</a>, and <a class="el" href="vhal_8h-source.html#l00314">VDF_UHBD</a>.</p>

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

</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>