wall_cylinder Struct Reference

A class representing a cylindrical wall object. More...

#include <wall.hh>

Inheritance diagram for wall_cylinder:
wall

Public Member Functions

 wall_cylinder (fpoint ixc, fpoint iyc, fpoint izc, fpoint ixa, fpoint iya, fpoint iza, fpoint irc, int iw_id=-99)
bool point_inside (fpoint x, fpoint y, fpoint z)
template<class n_option >
bool cut_cell_base (voronoicell_base< n_option > &c, fpoint x, fpoint y, fpoint z)
bool cut_cell (voronoicell_base< neighbor_none > &c, fpoint x, fpoint y, fpoint z)
bool cut_cell (voronoicell_base< neighbor_track > &c, fpoint x, fpoint y, fpoint z)

Detailed Description

A class representing a cylindrical wall object.

This class represents a open cylinder wall object.

Definition at line 61 of file wall.hh.


Constructor & Destructor Documentation

wall_cylinder::wall_cylinder ( fpoint  ixc,
fpoint  iyc,
fpoint  izc,
fpoint  ixa,
fpoint  iya,
fpoint  iza,
fpoint  irc,
int  iw_id = -99 
) [inline]

Constructs a cylinder wall object.

Parameters:
[in] (ixc,iyc,izc) a point on the axis of the cylinder.
[in] (ixa,iya,iza) a vector pointing along the direction of the cylinder.
[in] irc the radius of the cylinder
[in] iw_id an ID number to associate with the wall for neighbor tracking.

Definition at line 71 of file wall.hh.


Member Function Documentation

bool wall_cylinder::cut_cell ( voronoicell_base< neighbor_track > &  c,
fpoint  x,
fpoint  y,
fpoint  z 
) [inline, virtual]

A pure virtual function for cutting a cell with neighbor-tracking enabled with a wall.

Implements wall.

Definition at line 78 of file wall.hh.

bool wall_cylinder::cut_cell ( voronoicell_base< neighbor_none > &  c,
fpoint  x,
fpoint  y,
fpoint  z 
) [inline, virtual]

A pure virtual function for cutting a cell without neighbor-tracking with a wall.

Implements wall.

Definition at line 77 of file wall.hh.

template<class n_option >
bool wall_cylinder::cut_cell_base ( voronoicell_base< n_option > &  c,
fpoint  x,
fpoint  y,
fpoint  z 
) [inline]

Cuts a cell by the cylindrical wall object. The cylindrical wall is approximated by a single plane applied at the point on the cylinder which is closest to the center of the cell. This works well for particle arrangements that are packed against the wall, but loses accuracy for sparse particle distributions.

Parameters:
[in,out] c the Voronoi cell to be cut.
[in] (x,y,z) the location of the Voronoi cell.
Returns:
True if the cell still exists, false if the cell is deleted.

Definition at line 73 of file wall.cc.

bool wall_cylinder::point_inside ( fpoint  x,
fpoint  y,
fpoint  z 
) [virtual]

Tests to see whether a point is inside the cylindrical wall object.

Parameters:
[in] (x,y,z) the vector to test.
Returns:
True if the point is inside, false if the point is outside.

Implements wall.

Definition at line 57 of file wall.cc.


The documentation for this struct was generated from the following files:

Generated on Tue Sep 29 11:46:28 2009 for Voro++ by  doxygen 1.6.1