<ahref="v__base_8cc.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">// Voro++, a 3D cell-based Voronoi library</span></div>
<divclass="line"><aname="l00008"></a><spanclass="lineno"> 8</span> <spanclass="comment"> * \brief Function implementations for the base Voronoi container class. */</span></div>
<divclass="line"><aname="l00010"></a><spanclass="lineno"> 10</span> <spanclass="preprocessor">#include "<aclass="code"href="v__base_8hh.html"title="Header file for the base Voronoi container class.">v_base.hh</a>"</span></div>
<divclass="line"><aname="l00011"></a><spanclass="lineno"> 11</span> <spanclass="preprocessor">#include "<aclass="code"href="config_8hh.html"title="Master configuration file for setting various compile-time options.">config.hh</a>"</span></div>
<divclass="line"><aname="l00015"></a><spanclass="lineno"> 15</span> <spanclass="comment">/** This function is called during container construction. The routine scans</span></div>
<divclass="line"><aname="l00016"></a><spanclass="lineno"> 16</span> <spanclass="comment"> * all of the worklists in the wl[] array. For a given worklist of blocks</span></div>
<divclass="line"><aname="l00017"></a><spanclass="lineno"> 17</span> <spanclass="comment"> * labeled \f$w_1\f$ to \f$w_n\f$, it computes a sequence \f$r_0\f$ to</span></div>
<divclass="line"><aname="l00018"></a><spanclass="lineno"> 18</span> <spanclass="comment"> * \f$r_n\f$ so that $r_i$ is the minimum distance to all the blocks</span></div>
<divclass="line"><aname="l00019"></a><spanclass="lineno"> 19</span> <spanclass="comment"> * \f$w_{j}\f$ where \f$j>i\f$ and all blocks outside the worklist. The values</span></div>
<divclass="line"><aname="l00020"></a><spanclass="lineno"> 20</span> <spanclass="comment"> * of \f$r_n\f$ is calculated first, as the minimum distance to any block in</span></div>
<divclass="line"><aname="l00021"></a><spanclass="lineno"> 21</span> <spanclass="comment"> * the shell surrounding the worklist. The \f$r_i\f$ are then computed in</span></div>
<divclass="line"><aname="l00022"></a><spanclass="lineno"> 22</span> <spanclass="comment"> * reverse order by considering the distance to \f$w_{i+1}\f$. */</span></div>
<divclass="line"><aname="l00071"></a><spanclass="lineno"> 71</span> <spanclass="comment">/** Computes the minimum distance from a subregion to a given block. If this distance</span></div>
<divclass="line"><aname="l00072"></a><spanclass="lineno"> 72</span> <spanclass="comment"> * is smaller than the value of minr, then it passes</span></div>
<divclass="line"><aname="l00073"></a><spanclass="lineno"> 73</span> <spanclass="comment"> * \param[in,out] minr a pointer to the current minimum distance. If the distance</span></div>
<divclass="line"><aname="l00074"></a><spanclass="lineno"> 74</span> <spanclass="comment"> * computed in this function is smaller, then this distance is</span></div>
<divclass="line"><aname="l00075"></a><spanclass="lineno"> 75</span> <spanclass="comment"> * set to the new one.</span></div>
<divclass="line"><aname="l00076"></a><spanclass="lineno"> 76</span> <spanclass="comment"> * \param[out] (xlo,ylo,zlo) the lower coordinates of the subregion being</span></div>
<divclass="line"><aname="l00078"></a><spanclass="lineno"> 78</span> <spanclass="comment"> * \param[out] (xhi,yhi,zhi) the upper coordinates of the subregion being</span></div>
<divclass="line"><aname="l00080"></a><spanclass="lineno"> 80</span> <spanclass="comment"> * \param[in] (ti,tj,tk) the coordinates of the block. */</span></div>
<divclass="line"><aname="l00096"></a><spanclass="lineno"> 96</span> <spanclass="comment">/** Checks to see whether "%n" appears in a format sequence to determine</span></div>
<divclass="line"><aname="l00097"></a><spanclass="lineno"> 97</span> <spanclass="comment"> * whether neighbor information is required or not.</span></div>
<divclass="line"><aname="l00098"></a><spanclass="lineno"> 98</span> <spanclass="comment"> * \param[in] format the format string to check.</span></div>
<divclass="line"><aname="l00099"></a><spanclass="lineno"> 99</span> <spanclass="comment"> * \return True if a "%n" is found, false otherwise. */</span></div>
<divclass="line"><aname="l00103"></a><spanclass="lineno"> 103</span> <spanclass="comment">// Check to see if "%n" appears in the format sequence</span></div>
<divclass="line"><aname="l00116"></a><spanclass="lineno"> 116</span> <spanclass="preprocessor">#include "<aclass="code"href="v__base__wl_8cc.html"title="The table of block worklists that are used during the cell computation, which is part of the voro_bas...">v_base_wl.cc</a>"</span></div>