Voro++
Public Member Functions
voro::wall_cylinder Struct Reference

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

#include <wall.hh>

+ Inheritance diagram for voro::wall_cylinder:

Public Member Functions

 wall_cylinder (double xc_, double yc_, double zc_, double xa_, double ya_, double za_, double rc_, int w_id_=-99)
 
bool point_inside (double x, double y, double z)
 
template<class v_cell >
bool cut_cell_base (v_cell &c, double x, double y, double z)
 
bool cut_cell (voronoicell &c, double x, double y, double z)
 
bool cut_cell (voronoicell_neighbor &c, double x, double y, double z)
 

Detailed Description

This class represents a open cylinder wall object.

Definition at line 66 of file wall.hh.

Constructor & Destructor Documentation

voro::wall_cylinder::wall_cylinder ( double  xc_,
double  yc_,
double  zc_,
double  xa_,
double  ya_,
double  za_,
double  rc_,
int  w_id_ = -99 
)
inline

Constructs a cylinder wall object.

Parameters
[in](xc_,yc_,zc_)a point on the axis of the cylinder.
[in](xa_,ya_,za_)a vector pointing along the direction of the cylinder.
[in]rc_the radius of the cylinder
[in]w_id_an ID number to associate with the wall for neighbor tracking.

Definition at line 76 of file wall.hh.

Member Function Documentation

bool voro::wall_cylinder::cut_cell ( voronoicell c,
double  x,
double  y,
double  z 
)
inlinevirtual

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

Implements voro::wall.

Definition at line 82 of file wall.hh.

bool voro::wall_cylinder::cut_cell ( voronoicell_neighbor c,
double  x,
double  y,
double  z 
)
inlinevirtual

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

Implements voro::wall.

Definition at line 83 of file wall.hh.

template<class v_cell >
template bool voro::wall_cylinder::cut_cell_base ( v_cell &  c,
double  x,
double  y,
double  z 
)

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]cthe 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 74 of file wall.cc.

bool voro::wall_cylinder::point_inside ( double  x,
double  y,
double  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 voro::wall.

Definition at line 58 of file wall.cc.


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