<ahref="#pub-methods">Public Member Functions</a>|
<ahref="#pub-attribs">Data Fields</a>|
<ahref="#friends">Friends</a></div>
<divclass="headertitle">
<divclass="title">voro::voronoicell_neighbor Class Reference</div></div>
</div><!--header-->
<divclass="contents">
<p>Extension of the <aclass="el"href="classvoro_1_1voronoicell__base.html"title="A class representing a single Voronoi cell.">voronoicell_base</a> class to represent a Voronoi cell with neighbor information.
<areahref="classvoro_1_1voronoicell__base.html"title="A class representing a single Voronoi cell."alt="voro::voronoicell_base"shape="rect"coords="0,0,164,24"/>
<trclass="memitem:a1f0d64e7c42503ada9204cfaeb61027f"><tdclass="memItemLeft"align="right"valign="top">bool </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__neighbor.html#a1f0d64e7c42503ada9204cfaeb61027f">nplane</a> (double x, double y, double z, double rsq, int p_id)</td></tr>
<trclass="memitem:aa8bc77ca240ae0675be493b26513eb18"><tdclass="memItemLeft"align="right"valign="top">bool </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__neighbor.html#aa8bc77ca240ae0675be493b26513eb18">nplane</a> (double x, double y, double z, int p_id)</td></tr>
<trclass="memitem:ab71c4487bbca2d20b00e9af2fc6d1ed0"><tdclass="memItemLeft"align="right"valign="top">bool </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__neighbor.html#ab71c4487bbca2d20b00e9af2fc6d1ed0">plane</a> (double x, double y, double z, double rsq)</td></tr>
<trclass="memitem:a8bac2d46226b8dbb88ad3e3d58d10cf7"><tdclass="memItemLeft"align="right"valign="top">bool </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__neighbor.html#a8bac2d46226b8dbb88ad3e3d58d10cf7">plane</a> (double x, double y, double z)</td></tr>
<trclass="memitem:a1b18405092d2229e1001933925f403ca"><tdclass="memItemLeft"align="right"valign="top">virtual void </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__neighbor.html#a1b18405092d2229e1001933925f403ca">neighbors</a> (std::vector< int >&v)</td></tr>
<trclass="inherit_header pub_methods_classvoro_1_1voronoicell__base"><tdcolspan="2"onclick="javascript:toggleInherit('pub_methods_classvoro_1_1voronoicell__base')"><imgsrc="closed.png"alt="-"/> Public Member Functions inherited from <aclass="el"href="classvoro_1_1voronoicell__base.html">voro::voronoicell_base</a></td></tr>
<trclass="memitem:a1d86762311d8860960a45cc409b14f0f inherit pub_methods_classvoro_1_1voronoicell__base"><tdclass="memItemLeft"align="right"valign="top">int </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__base.html#a1d86762311d8860960a45cc409b14f0f">cycle_up</a> (int a, int <aclass="el"href="classvoro_1_1voronoicell__base.html#a7e69469f95464afbeb9feec927507243">p</a>)</td></tr>
<trclass="memitem:adfccfa7dce395277535f61f780d87c8b inherit pub_methods_classvoro_1_1voronoicell__base"><tdclass="memItemLeft"align="right"valign="top">int </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classvoro_1_1voronoicell__base.html#adfccfa7dce395277535f61f780d87c8b">cycle_down</a> (int a, int <aclass="el"href="classvoro_1_1voronoicell__base.html#a7e69469f95464afbeb9feec927507243">p</a>)</td></tr>
<trclass="inherit_header pro_methods_classvoro_1_1voronoicell__base"><tdcolspan="2"onclick="javascript:toggleInherit('pro_methods_classvoro_1_1voronoicell__base')"><imgsrc="closed.png"alt="-"/> Protected Member Functions inherited from <aclass="el"href="classvoro_1_1voronoicell__base.html">voro::voronoicell_base</a></td></tr>
<divclass="textblock"><p>This class is an extension of the <aclass="el"href="classvoro_1_1voronoicell__base.html"title="A class representing a single Voronoi cell.">voronoicell_base</a> class, in cases when the IDs of neighboring particles associated with each face of the Voronoi cell. It contains additional data structures mne and ne for storing this information. </p>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00403">403</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
</div><hr/><h2>Constructor & Destructor Documentation</h2>
<p>This initializes the class to be a rectangular box. It calls the base class initialization routine to set up the edge and vertex information, and then sets up the neighbor information, with initial faces being assigned ID numbers from -1 to -6. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(xmin,xmax)</td><td>the minimum and maximum x coordinates. </td></tr>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(ymin,ymax)</td><td>the minimum and maximum y coordinates. </td></tr>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(zmin,zmax)</td><td>the minimum and maximum z coordinates. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <aclass="el"href="cell_8cc_source.html#l02105">2105</a> of file <aclass="el"href="cell_8cc_source.html">cell.cc</a>.</p>
<p>This initializes the class to be an octahedron. It calls the base class initialization routine to set up the edge and vertex information, and then sets up the neighbor information, with the initial faces being assigned ID numbers from -1 to -8. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">l</td><td>The distance from the octahedron center to a vertex. Six vertices are initialized at (-l,0,0), (l,0,0), (0,-l,0), (0,l,0), (0,0,-l), and (0,0,l). </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <aclass="el"href="cell_8cc_source.html#l02127">2127</a> of file <aclass="el"href="cell_8cc_source.html">cell.cc</a>.</p>
<p>This initializes the class to be a tetrahedron. It calls the base class initialization routine to set up the edge and vertex information, and then sets up the neighbor information, with the initial faces being assigned ID numbers from -1 to -4. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">(x0,y0,z0)</td><td>a position vector for the first vertex. </td></tr>
<tr><tdclass="paramname">(x1,y1,z1)</td><td>a position vector for the second vertex. </td></tr>
<tr><tdclass="paramname">(x2,y2,z2)</td><td>a position vector for the third vertex. </td></tr>
<tr><tdclass="paramname">(x3,y3,z3)</td><td>a position vector for the fourth vertex. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <aclass="el"href="cell_8cc_source.html#l02147">2147</a> of file <aclass="el"href="cell_8cc_source.html">cell.cc</a>.</p>
<p>Cuts the Voronoi cell by a particle whose center is at a separation of (x,y,z) from the cell center. The value of rsq should be initially set to <imgclass="formulaInl"alt="$x^2+y^2+z^2$"src="form_0.png"/>. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(x,y,z)</td><td>the normal vector to the plane. </td></tr>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">rsq</td><td>the distance along this vector of the plane. </td></tr>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">p_id</td><td>the plane ID (for neighbor tracking only). </td></tr>
</table>
</dd>
</dl>
<dlclass="section return"><dt>Returns:</dt><dd>False if the plane cut deleted the cell entirely, true otherwise. </dd></dl>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00430">430</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
<p>This routine calculates the modulus squared of the vector before passing it to the main <aclass="el"href="classvoro_1_1voronoicell__neighbor.html#a1f0d64e7c42503ada9204cfaeb61027f">nplane()</a> routine with full arguments. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(x,y,z)</td><td>the vector to cut the cell by. </td></tr>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">p_id</td><td>the plane ID (for neighbor tracking only). </td></tr>
</table>
</dd>
</dl>
<dlclass="section return"><dt>Returns:</dt><dd>False if the plane cut deleted the cell entirely, true otherwise. </dd></dl>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00440">440</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
<p>Copies the information from another <aclass="el"href="classvoro_1_1voronoicell__neighbor.html"title="Extension of the voronoicell_base class to represent a Voronoi cell with neighbor information...">voronoicell_neighbor</a> class into this class, extending memory allocation if necessary. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">c</td><td>the class to copy. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <aclass="el"href="cell_8cc_source.html#l00093">93</a> of file <aclass="el"href="cell_8cc_source.html">cell.cc</a>.</p>
<p>This is a virtual function that is overridden by a routine to print a list of IDs of neighboring particles corresponding to each face. By default, when no neighbor information is available, the routine does nothing. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">fp</td><td>the file handle to write to. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <aclass="el"href="classvoro_1_1voronoicell__base.html#a99837f8d963c57c2c244518ba0ae4b8f">voro::voronoicell_base</a>.</p>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00472">472</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
<p>Cuts a Voronoi cell using the influence of a particle at (x,y,z), first calculating the modulus squared of this vector before passing it to the main <aclass="el"href="classvoro_1_1voronoicell__neighbor.html#a1f0d64e7c42503ada9204cfaeb61027f">nplane()</a> routine. Zero is supplied as the plane ID, which will be ignored unless neighbor tracking is enabled. </p>
<dlclass="params"><dt>Parameters:</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">(x,y,z)</td><td>the vector to cut the cell by. </td></tr>
</table>
</dd>
</dl>
<dlclass="section return"><dt>Returns:</dt><dd>False if the plane cut deleted the cell entirely, true otherwise. </dd></dl>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00462">462</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
<p>This two dimensional array holds the neighbor information associated with each vertex. mne[p] is a one dimensional array which holds all of the neighbor information for vertices of order p. </p>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00410">410</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
<p>This is a two dimensional array that holds the neighbor information associated with each vertex. ne[i] points to a one-dimensional array in mne[nu[i]]. ne[i][j] holds the neighbor information associated with the jth edge of vertex i. It is set to the ID number of the plane that made the face that is clockwise from the jth edge. </p>
<p>Definition at line <aclass="el"href="cell_8hh_source.html#l00417">417</a> of file <aclass="el"href="cell_8hh_source.html">cell.hh</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>