UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
voro Namespace Reference

Classes

class  c_loop_all
 Class for looping over all of the particles in a container. More...
 
class  c_loop_all_periodic
 A class for looping over all particles in a container_periodic or container_periodic_poly class. More...
 
class  c_loop_base
 Base class for looping over particles in a container. More...
 
class  c_loop_block_range
 Class for looping over the particles in a range of blocks within a container. More...
 
class  c_loop_order
 Class for looping over all of the particles specified in a pre-assembled particle_order class. More...
 
class  c_loop_order_periodic
 Class for looping over all of the particles specified in a pre-assembled particle_order class, for use with container_periodic classes. More...
 
class  c_loop_subset
 Class for looping over a subset of particles in a container. More...
 
class  container
 Extension of the container_base class for computing regular Voronoi tessellations. More...
 
class  container_base
 Class for representing a particle system in a three-dimensional rectangular box. More...
 
class  container_poly
 Extension of the container_base class for computing radical Voronoi tessellations. More...
 
class  particle_order
 A class for storing ordering information when particles are added to a container. More...
 
struct  particle_record
 Structure for holding information about a particle. More...
 
class  pre_container
 A class for storing an arbitrary number of particles without radius information, prior to setting up a container geometry. More...
 
class  pre_container_base
 A class for storing an arbitrary number of particles, prior to setting up a container geometry. More...
 
class  pre_container_poly
 A class for storing an arbitrary number of particles with radius information, prior to setting up a container geometry. More...
 
class  radius_mono
 Class containing all of the routines that are specific to computing the regular Voronoi tessellation. More...
 
class  radius_poly
 Class containing all of the routines that are specific to computing the radical Voronoi tessellation. More...
 
class  unitcell
 Class for computation of the unit Voronoi cell associated with a 3D non-rectangular periodic domain. More...
 
class  voro_base
 Class containing data structures common across all particle container classes. More...
 
class  voro_compute
 Template for carrying out Voronoi cell computations. More...
 
class  voronoicell
 Extension of the voronoicell_base class to represent a Voronoi cell without neighbor information. More...
 
class  voronoicell_base
 A class representing a single Voronoi cell. More...
 
class  voronoicell_neighbor
 Extension of the voronoicell_base class to represent a Voronoi cell with neighbor information. More...
 
class  wall
 Pure virtual class from which wall objects are derived. More...
 
struct  wall_cone
 A class representing a conical wall object. More...
 
struct  wall_cylinder
 A class representing a cylindrical wall object. More...
 
class  wall_list
 A class for storing a list of pointers to walls. More...
 
struct  wall_plane
 A class representing a plane wall object. More...
 
struct  wall_sphere
 A class representing a spherical wall object. More...
 

Enumerations

enum  c_loop_subset_mode { sphere , box , no_check }
 

Functions

void voro_fatal_error (const char *p, int status)
 Function for printing fatal error messages and exiting.
 
void guess_optimal (int siteCount, double sizeX, double sizeY, double sizeZ, int &nx, int &ny, int &nz)
 

Variables

const int init_vertices =256
 
const int init_vertex_order =64
 
const int init_3_vertices =256
 
const int init_n_vertices =8
 
const int init_marginal =64
 
const int init_delete_size =256
 
const int init_delete2_size =256
 
const int init_wall_size =32
 
const int init_ordering_size =4096
 
const int init_chunk_size =256
 
const int max_vertices =16777216
 
const int max_vertex_order =16777216
 
const int max_n_vertices =16777216
 
const int max_marginal =16777216
 
const int max_delete_size =16777216
 
const int max_delete2_size =16777216
 
const int max_particle_memory =16777216
 
const int max_wall_size =2048
 
const int max_ordering_size =67108864
 
const int max_chunk_size =65536
 
const int pre_container_chunk_size =1024
 
const double tolerance =1e-11
 
const double tolerance2 =2e-11
 
const double tolerance_sq =tolerance*tolerance
 
const double large_number =1e30
 
const double default_radius =0.5
 
const int max_unit_voro_shells =10
 
const double optimal_particles =5.6
 
const int wl_hgrid =4
 
const int wl_fgrid =8
 
const int wl_hgridcu =64
 
const int wl_seq_length =64
 

Enumeration Type Documentation

◆ c_loop_subset_mode

A type associated with a c_loop_subset class, determining what type of geometrical region to loop over.

Enumerator
sphere 
box 
no_check 

Function Documentation

◆ guess_optimal()

void voro::guess_optimal ( int  siteCount,
double  sizeX,
double  sizeY,
double  sizeZ,
int &  nx,
int &  ny,
int &  nz 
)

◆ voro_fatal_error()

void voro::voro_fatal_error ( const char p,
int  status 
)
inline

Function for printing fatal error messages and exiting.

Function for printing fatal error messages and exiting.

Parameters
[in]pa pointer to the message to print.
[in]statusthe status code to return with.

Variable Documentation

◆ default_radius

const double voro::default_radius =0.5

A radius to use as a placeholder when no other information is available.

◆ init_3_vertices

const int voro::init_3_vertices =256

The initial memory allocation for the number of regular vertices of order

◆ init_chunk_size

const int voro::init_chunk_size =256

The initial size of the pre_container chunk index.

◆ init_delete2_size

const int voro::init_delete2_size =256

The initial size for the auxiliary delete stack.

◆ init_delete_size

const int voro::init_delete_size =256

The initial size for the delete stack.

◆ init_marginal

const int voro::init_marginal =64

The initial buffer size for marginal cases used by the suretest class.

◆ init_n_vertices

const int voro::init_n_vertices =8

The initial memory allocation for the number of vertices of higher order.

◆ init_ordering_size

const int voro::init_ordering_size =4096

The default initial size for the ordering class.

◆ init_vertex_order

const int voro::init_vertex_order =64

The initial memory allocation for the maximum vertex order.

◆ init_vertices

const int voro::init_vertices =256

The initial memory allocation for the number of vertices.

◆ init_wall_size

const int voro::init_wall_size =32

The initial size for the wall pointer array.

◆ large_number

const double voro::large_number =1e30

A large number that is used in the computation.

◆ max_chunk_size

const int voro::max_chunk_size =65536

The maximum size for the pre_container chunk index.

◆ max_delete2_size

const int voro::max_delete2_size =16777216

The maximum size for the auxiliary delete stack.

◆ max_delete_size

const int voro::max_delete_size =16777216

The maximum size for the delete stack.

◆ max_marginal

const int voro::max_marginal =16777216

The maximum buffer size for marginal cases used by the suretest class.

◆ max_n_vertices

const int voro::max_n_vertices =16777216

The maximum memory allocation for the any particular order of vertex.

◆ max_ordering_size

const int voro::max_ordering_size =67108864

The maximum size for the ordering class.

◆ max_particle_memory

const int voro::max_particle_memory =16777216

The maximum amount of particle memory allocated for a single region.

◆ max_unit_voro_shells

const int voro::max_unit_voro_shells =10

The maximum number of shells of periodic images to test over.

◆ max_vertex_order

const int voro::max_vertex_order =16777216

The maximum memory allocation for the maximum vertex order.

◆ max_vertices

const int voro::max_vertices =16777216

The maximum memory allocation for the number of vertices.

◆ max_wall_size

const int voro::max_wall_size =2048

The maximum size for the wall pointer array.

◆ optimal_particles

const double voro::optimal_particles =5.6

A guess for the optimal number of particles per block, used to set up the container grid.

◆ pre_container_chunk_size

const int voro::pre_container_chunk_size =1024

The chunk size in the pre_container classes.

◆ tolerance

const double voro::tolerance =1e-11

If a point is within this distance of a cutting plane, then the code assumes that point exactly lies on the plane.

◆ tolerance2

const double voro::tolerance2 =2e-11

If a point is within this distance of a cutting plane, then the code stores whether this point is inside, outside, or exactly on the cutting plane in the marginal cases buffer, to prevent the test giving a different result on a subsequent evaluation due to floating point rounding errors.

◆ tolerance_sq

const double voro::tolerance_sq =tolerance*tolerance

The square of the tolerance, used when deciding whether some squared quantities are large enough to be used.

◆ wl_fgrid

const int voro::wl_fgrid =8

The number of subregions that a block is subdivided into, which is twice the value of hgrid.

◆ wl_hgrid

const int voro::wl_hgrid =4

Each region is divided into a grid of subregions, and a worklist is

constructed for each. This parameter sets is set to half the number of

subregions that the block is divided into.

◆ wl_hgridcu

const int voro::wl_hgridcu =64

The total number of worklists, set to the cube of hgrid.

◆ wl_seq_length

const int voro::wl_seq_length =64

The number of elements in each worklist.