Voro++
Public Member Functions
voro::pre_container_poly Class Reference

A class for storing an arbitrary number of particles with radius information, prior to setting up a container geometry. More...

#include <pre_container.hh>

+ Inheritance diagram for voro::pre_container_poly:

Public Member Functions

 pre_container_poly (double ax_, double bx_, double ay_, double by_, double az_, double bz_, bool xperiodic_, bool yperiodic_, bool zperiodic_)
void put (int n, double x, double y, double z, double r)
void import (FILE *fp=stdin)
void import (const char *filename)
void setup (container_poly &con)
void setup (particle_order &vo, container_poly &con)
- Public Member Functions inherited from voro::pre_container_base
void guess_optimal (int &nx, int &ny, int &nz)
 pre_container_base (double ax_, double bx_, double ay_, double by_, double az_, double bz_, bool xperiodic_, bool yperiodic_, bool zperiodic_, int ps_)
 ~pre_container_base ()
int total_particles ()

Additional Inherited Members

- Data Fields inherited from voro::pre_container_base
const double ax
const double bx
const double ay
const double by
const double az
const double bz
const bool xperiodic
const bool yperiodic
const bool zperiodic
- Protected Member Functions inherited from voro::pre_container_base
void new_chunk ()
void extend_chunk_index ()
- Protected Attributes inherited from voro::pre_container_base
const int ps
int index_sz
int ** pre_id
int ** end_id
int ** l_id
int * ch_id
int * e_id
double ** pre_p
double ** end_p
double * ch_p

Detailed Description

The pre_container_poly class is an extension of the pre_container_base class for cases when particle radius information is available.

Definition at line 133 of file pre_container.hh.


Constructor & Destructor Documentation

voro::pre_container_poly::pre_container_poly ( double  ax_,
double  bx_,
double  ay_,
double  by_,
double  az_,
double  bz_,
bool  xperiodic_,
bool  yperiodic_,
bool  zperiodic_ 
)
inline

The class constructor sets up the geometry of container, initializing the minimum and maximum coordinates in each direction.

Parameters:
[in](ax_,bx_)the minimum and maximum x coordinates.
[in](ay_,by_)the minimum and maximum y coordinates.
[in](az_,bz_)the minimum and maximum z coordinates.
[in](xperiodic_,yperiodic_,zperiodic_) flags setting whether the container is periodic in each coordinate direction.

Definition at line 144 of file pre_container.hh.


Member Function Documentation

void voro::pre_container_poly::import ( FILE *  fp = stdin)

Import a list of particles from an open file stream, also storing the order of that the particles are read. Entries of four numbers (Particle ID, x position, y position, z position) are searched for. If the file cannot be successfully read, then the routine causes a fatal error.

Parameters:
[in]fpthe file handle to read from.

Definition at line 202 of file pre_container.cc.

void voro::pre_container_poly::import ( const char *  filename)
inline

Imports particles from a file.

Parameters:
[in]filenamethe name of the file to read from.

Definition at line 151 of file pre_container.hh.

void voro::pre_container_poly::put ( int  n,
double  x,
double  y,
double  z,
double  r 
)

Stores a particle ID and position, allocating a new memory chunk if necessary.

Parameters:
[in]nthe numerical ID of the inserted particle.
[in](x,y,z)the position vector of the inserted particle.
[in]rthe radius of the particle.

Definition at line 86 of file pre_container.cc.

void voro::pre_container_poly::setup ( container_poly con)

Transfers the particles stored within the class to a container_poly class.

Parameters:
[in]conthe container_poly class to transfer to.

Definition at line 120 of file pre_container.cc.

void voro::pre_container_poly::setup ( particle_order vo,
container_poly con 
)

Transfers the particles stored within the class to a container_poly class, also recording the order in which particles were stored.

Parameters:
[in]vothe ordering class to use.
[in]conthe container_poly class to transfer to.

Definition at line 166 of file pre_container.cc.


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