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: