Page MenuHomec4science

classvoro_1_1radius__poly.html
No OneTemporary

File Metadata

Created
Sat, Jul 13, 13:00

classvoro_1_1radius__poly.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Voro++: voro::radius_poly Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Voro++
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>voro</b></li><li class="navelem"><a class="el" href="classvoro_1_1radius__poly.html">radius_poly</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Data Fields</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> </div>
<div class="headertitle">
<div class="title">voro::radius_poly Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Class containing all of the routines that are specific to computing the radical Voronoi tessellation.
<a href="classvoro_1_1radius__poly.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for voro::radius_poly:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center">
<img src="classvoro_1_1radius__poly.png" usemap="#voro::radius_poly_map" alt=""/>
<map id="voro::radius_poly_map" name="voro::radius_poly_map">
<area href="classvoro_1_1container__periodic__poly.html" title="Extension of the container_periodic_base class for computing radical Voronoi tessellations." alt="voro::container_periodic_poly" shape="rect" coords="0,56,181,80"/>
<area href="classvoro_1_1container__poly.html" title="Extension of the container_base class for computing radical Voronoi tessellations." alt="voro::container_poly" shape="rect" coords="191,56,372,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a54ca6935b6fe7eb28e924e5c2b0a2abd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a54ca6935b6fe7eb28e924e5c2b0a2abd">radius_poly</a> ()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a9e40455c336c27b089c5a78ca94626d8"><td class="memItemLeft" align="right" valign="top">double **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a9e40455c336c27b089c5a78ca94626d8">ppr</a></td></tr>
<tr class="memitem:a9faed3ac8ef95c646e376a7fe915fb0b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a9faed3ac8ef95c646e376a7fe915fb0b">max_radius</a></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aa8dcd117e31007933a37454ef9ccb4d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#aa8dcd117e31007933a37454ef9ccb4d9">r_init</a> (int ijk, int s)</td></tr>
<tr class="memitem:a19b9bc7dd97869e6ac440662912f4911"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a19b9bc7dd97869e6ac440662912f4911">r_prime</a> (double rv)</td></tr>
<tr class="memitem:a5e74adfce3978911c901f0eb5dbb2c90"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a5e74adfce3978911c901f0eb5dbb2c90">r_ctest</a> (double crs, double mrs)</td></tr>
<tr class="memitem:a33cecd36b74cc748fb91b5c9f60f08e9"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a33cecd36b74cc748fb91b5c9f60f08e9">r_cutoff</a> (double lrs)</td></tr>
<tr class="memitem:a86eda87db1ab281a251e43236bbc26c1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a86eda87db1ab281a251e43236bbc26c1">r_max_add</a> (double rs)</td></tr>
<tr class="memitem:ab9a81c60cf27739db39faa28591d5650"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#ab9a81c60cf27739db39faa28591d5650">r_current_sub</a> (double rs, int ijk, int q)</td></tr>
<tr class="memitem:a8357f4c9d6e20d739029dcb76705e316"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#a8357f4c9d6e20d739029dcb76705e316">r_scale</a> (double rs, int ijk, int q)</td></tr>
<tr class="memitem:aba9f2a8086de090f84f714510e6914fb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classvoro_1_1radius__poly.html#aba9f2a8086de090f84f714510e6914fb">r_scale_check</a> (double &amp;rs, double mrs, int ijk, int q)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>The <a class="el" href="classvoro_1_1container__poly.html" title="Extension of the container_base class for computing radical Voronoi tessellations.">container_poly</a> and <a class="el" href="classvoro_1_1container__periodic__poly.html" title="Extension of the container_periodic_base class for computing radical Voronoi tessellations.">container_periodic_poly</a> classes are derived from this class, and during the Voronoi cell computation, these routines are used to create the radical Voronoi tessellation. </p>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00082">82</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a54ca6935b6fe7eb28e924e5c2b0a2abd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">voro::radius_poly::radius_poly </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The class constructor sets the maximum particle radius to be zero. </p>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00092">92</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a5e74adfce3978911c901f0eb5dbb2c90"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool voro::radius_poly::r_ctest </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>crs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>mrs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Carries out a radius bounds check. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">crs</td><td>the radius squared to be tested. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mrs</td><td>the current maximum distance to a Voronoi vertex multiplied by two. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>True if particles at this radius could not possibly cut the cell, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00111">111</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="ab9a81c60cf27739db39faa28591d5650"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double voro::radius_poly::r_current_sub </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>rs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>ijk</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Subtracts the radius squared of a particle from a given value. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>the value to consider. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ijk</td><td>the block that the particle is within. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">q</td><td>the index of the particle within the block. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>The value with the radius squared subtracted. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00126">126</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="a33cecd36b74cc748fb91b5c9f60f08e9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double voro::radius_poly::r_cutoff </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>lrs</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scales a plane displacement during a plane bounds check. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">lrs</td><td>the plane displacement. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>The scaled value. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00115">115</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="aa8dcd117e31007933a37454ef9ccb4d9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void voro::radius_poly::r_init </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>ijk</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This is called prior to computing a Voronoi cell for a given particle to initialize any required constants. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ijk</td><td>the block that the particle is within. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>the index of the particle within the block. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00098">98</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="a86eda87db1ab281a251e43236bbc26c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double voro::radius_poly::r_max_add </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>rs</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds the maximum radius squared to a given value. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>the value to consider. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>The value with the radius squared added. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00119">119</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="a19b9bc7dd97869e6ac440662912f4911"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void voro::radius_poly::r_prime </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>rv</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets a required constant to be used when carrying out a plane bounds check. </p>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00104">104</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="a8357f4c9d6e20d739029dcb76705e316"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double voro::radius_poly::r_scale </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>rs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>ijk</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scales a plane displacement prior to use in the plane cutting algorithm. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>the initial plane displacement. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ijk</td><td>the block that the particle is within. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">q</td><td>the index of the particle within the block. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>The scaled plane displacement. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00135">135</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="aba9f2a8086de090f84f714510e6914fb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool voro::radius_poly::r_scale_check </td>
<td>(</td>
<td class="paramtype">double &amp;&#160;</td>
<td class="paramname"><em>rs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>mrs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>ijk</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scales a plane displacement prior to use in the plane cutting algorithm, and also checks if it could possibly cut the cell. </p>
<dl class="params"><dt>Parameters:</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">rs</td><td>the plane displacement to be scaled. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mrs</td><td>the current maximum distance to a Voronoi vertex multiplied by two. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ijk</td><td>the block that the particle is within. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">q</td><td>the index of the particle within the block. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>True if the cell could possibly cut the cell, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00148">148</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<hr/><h2>Field Documentation</h2>
<a class="anchor" id="a9faed3ac8ef95c646e376a7fe915fb0b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double voro::radius_poly::max_radius</td>
</tr>
</table>
</div><div class="memdoc">
<p>The current maximum radius of any particle, used to determine when to cut off the radical Voronoi computation. </p>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00089">89</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<a class="anchor" id="a9e40455c336c27b089c5a78ca94626d8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double** voro::radius_poly::ppr</td>
</tr>
</table>
</div><div class="memdoc">
<p>A two-dimensional array holding particle positions and radii. </p>
<p>Definition at line <a class="el" href="rad__option_8hh_source.html#l00085">85</a> of file <a class="el" href="rad__option_8hh_source.html">rad_option.hh</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="rad__option_8hh_source.html">rad_option.hh</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jul 27 2012 21:53:31 for Voro++ by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>

Event Timeline