|
| Lattice (const int id=-1, const char *name="") |
| Constructor sets the user-specified and unique IDs for this Lattice. More...
|
|
virtual | ~Lattice () |
| Destructor clears memory for all of Universes pointers.
|
|
void | setOffset (double x, double y, double z=0.0) |
| Set the offset in global coordinates for this Lattice. More...
|
|
Point * | getOffset () |
| Return a pointer to the offset for this Cell (in global coordinates). More...
|
|
int | getNumX () const |
| Return the number of Lattice cells along the x-axis. More...
|
|
int | getNumY () const |
| Return the number of Lattice cells along the y-axis. More...
|
|
int | getNumZ () const |
| Return the number of Lattice cells along the z-axis. More...
|
|
double | getWidthX () const |
| Return the width of the Lattice along the x-axis. More...
|
|
double | getWidthY () const |
| Return the width of the Lattice along the y-axis. More...
|
|
double | getWidthZ () const |
| Return the width of the Lattice along the z-axis. More...
|
|
bool | getNonUniform () const |
| Return the non-uniform boolean of Lattice. More...
|
|
const std::vector< double > & | getWidthsX () const |
| Return the widths of non-uniform Lattice in x direction. More...
|
|
const std::vector< double > & | getWidthsY () const |
| Return the widths of non-uniform Lattice in y direction. More...
|
|
const std::vector< double > & | getWidthsZ () const |
| Return the widths of non-uniform Lattice in z direction. More...
|
|
const std::vector< double > & | getAccumulateX () const |
| Return the accumulate widths of non-uniform Lattice in x direction. More...
|
|
const std::vector< double > & | getAccumulateY () const |
| Return the accumulate widths of non-uniform Lattice in y direction. More...
|
|
const std::vector< double > & | getAccumulateZ () const |
| Return the accumulate widths of non-uniform Lattice in z direction. More...
|
|
double | getMinX () |
| Returns the minimum reachable x-coordinate in the Lattice. More...
|
|
double | getMaxX () |
| Returns the maximum reachable x-coordinate in the Lattice. More...
|
|
double | getMinY () |
| Returns the minimum reachable y-coordinate in the Lattice. More...
|
|
double | getMaxY () |
| Returns the maximum reachable y-coordinate in the Lattice. More...
|
|
double | getMinZ () |
| Returns the minimum reachable z-coordinate in the Lattice. More...
|
|
double | getMaxZ () |
| Returns the maximum reachable z-coordinate in the Lattice. More...
|
|
Universe * | getUniverse (int lat_x, int lat_y, int lat_z=0) const |
| Returns a pointer to the Universe within a specific Lattice cell. More...
|
|
std::vector< std::vector< std::vector< std::pair< int, Universe * > > > > * | getUniverses () |
| Return a 3D vector of the Universes in the Lattice. More...
|
|
std::map< int, Universe * > | getUniqueUniverses () |
| Aggregates a list (vector) of the IDs of all Universes within the FILL type Cells filling this Universe. More...
|
|
std::map< int, double > | getUniqueRadius (std::map< int, Universe *> unique_universes) |
| Get the maximum equivalent radius of each unique universes. Equivalent radius are computed as the diagonal length to the cell boundary. More...
|
|
std::map< int, Cell * > | getAllCells () |
| Returns the std::map of Cell IDs and Cell pointers in this Lattice at all nested Universe levels. More...
|
|
std::map< int, Universe * > | getAllUniverses () |
| Returns the std::map of all nested Universe IDs and Universe pointers filling this Lattice. More...
|
|
void | setNumX (int num_x) |
| Set the number of Lattice cells along the x-axis. More...
|
|
void | setNumY (int num_y) |
| Set the number of Lattice cells along the y-axis. More...
|
|
void | setNumZ (int num_z) |
| Set the number of Lattice cells along the z-axis. More...
|
|
void | setWidth (double width_x, double width_y, double width_z=std::numeric_limits< double >::infinity()) |
| Set the width of each Lattice cell. More...
|
|
void | setNonUniform (bool non_uniform) |
| Set the non-uniform boolean of Lattice. More...
|
|
void | setWidthsX (std::vector< double > widthsx) |
| Set the widths of non-uniform Lattice in x direction. More...
|
|
void | setWidthsY (std::vector< double > widthsy) |
| Set the widths of non-uniform Lattice in y direction. More...
|
|
void | setWidthsZ (std::vector< double > widthsz) |
| Set the widths of non-uniform Lattice in z direction. More...
|
|
void | setAccumulateX (std::vector< double > accumulatex) |
| Set the accumulate widths of non-uniform Lattice in x direction. More...
|
|
void | setAccumulateY (std::vector< double > accumulatey) |
| Set the accumulate widths of non-uniform Lattice in y direction. More...
|
|
void | setAccumulateZ (std::vector< double > accumulatez) |
| Set the accumulate widths of non-uniform Lattice in z direction. More...
|
|
void | setUniverses (int num_z, int num_y, int num_x, Universe **universes) |
| Sets the array of Universe pointers filling each Lattice cell. More...
|
|
void | updateUniverse (int lat_x, int lat_y, int lat_z, Universe *universe) |
| Update the Universe in a particular Lattice cell. More...
|
|
void | removeUniverse (Universe *universe) |
| Removes all references to a Universe from the Lattice. More...
|
|
void | subdivideCells (double max_radius=INFINITY) |
| Subdivides all of the Material-filled Cells within this Lattice into rings and angular sectors aligned with the z-axis. More...
|
|
void | buildNeighbors () |
| Builds collections of neighboring Cells for all Cells in each Universe in the Lattice for optimized ray tracing.
|
|
bool | containsPoint (Point *point) |
| Checks if a Point is within the bounds of a Lattice. More...
|
|
Cell * | findCell (LocalCoords *coords) |
| Finds the Cell within this Lattice that a LocalCoords is in. More...
|
|
double | minSurfaceDist (Point *point, double azim, double polar=M_PI/2.0) |
| Finds the distance to the nearest surface. More...
|
|
int | getLatX (Point *point) |
| Finds the Lattice cell x index that a point lies in. More...
|
|
int | getLatY (Point *point) |
| Finds the Lattice cell y index that a point lies in. More...
|
|
int | getLatZ (Point *point) |
| Finds the Lattice cell z index that a point lies in. More...
|
|
int | getLatticeCell (Point *point) |
| Finds the Lattice cell index that a point lies in. More...
|
|
int | getLatticeSurface (int cell, Point *point) |
| Finds the Lattice cell surface that a point lies on. If the point is not on a surface, -1 is returned. More...
|
|
int | getLatticeSurfaceOTF (int cell, double z, int surface_2D) |
| Finds the Lattice cell surface that a point lies on. If the point is not on a surface, -1 is returned. More...
|
|
std::string | toString () |
| Converts a Lattice's attributes to a character array representation. More...
|
|
void | printString () |
| Prints a string representation of all of the Lattice's attributes to the console.
|
|
void | setWidths (std::vector< double > widths_x, std::vector< double > widths_y, std::vector< double > widths_z) |
| Set widths of non-uniform meshes in x y z directions. More...
|
|
void | computeSizes () |
| Set _widths_x, _widths_y, _widths_z for uniform case, compute accumulate variables.
|
|
void | printLatticeSizes () |
| For debug use.
|
|
| Universe (const int id=-1, const char *name="") |
| Constructor assigns a unique and user-specified ID for the Universe. More...
|
|
virtual | ~Universe () |
| Destructor clears the Cell pointers container.
|
|
int | getUid () const |
| Returns the Universe's unique ID. More...
|
|
int | getId () const |
| Return the user-specified ID for this Universe. More...
|
|
char * | getName () const |
| Return the user-defined name of the Universe. More...
|
|
universeType | getType () |
| Return the Universe type (SIMPLE or LATTICE). More...
|
|
int | getNumCells () const |
| Return the number of Cells in this Universe. More...
|
|
double | getMinX () |
| Returns the minimum reachable x-coordinate in the Universe. More...
|
|
double | getMaxX () |
| Returns the maximum reachable x-coordinate in the Universe. More...
|
|
double | getMinY () |
| Returns the minimum reachable y-coordinate in the Universe. More...
|
|
double | getMaxY () |
| Returns the maximum reachable y-coordinate in the Universe. More...
|
|
double | getMinZ () |
| Returns the minimum reachable z-coordinate in the Universe. More...
|
|
double | getMaxZ () |
| Returns the maximum reachable z-coordinate in the Universe. More...
|
|
boundaryType | getMinXBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the minimum reachable x-coordinate in the Universe. More...
|
|
boundaryType | getMaxXBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the maximum reachable x-coordinate in the Universe. More...
|
|
boundaryType | getMinYBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the minimum reachable y-coordinate in the Universe. More...
|
|
boundaryType | getMaxYBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the maximum reachable y-coordinate in the Universe. More...
|
|
boundaryType | getMinZBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the minimum reachable z-coordinate in the Universe. More...
|
|
boundaryType | getMaxZBoundaryType () |
| Returns the boundary conditions (VACUUM or REFLECTIVE) at the maximum reachable z-coordinate in the Universe. More...
|
|
Cell * | getCell (int cell_id) |
| Returns a Cell in this universe. More...
|
|
std::map< int, Cell * > | getCells () const |
| Return the container of Cell IDs and Cell pointers in this Universe. More...
|
|
std::map< int, Cell * > | getAllCells () |
| Returns the std::map of Cell IDs and Cell pointers in this Universe at all nested Universe levels. More...
|
|
std::map< int, Material * > | getAllMaterials () |
| Returns the std::map of all IDs and Material pointers filling this Universe. More...
|
|
std::map< int, Universe * > | getAllUniverses () |
| Returns the std::map of all nested Universe IDs and Universe pointers filling this Universe. More...
|
|
bool | isFissionable () |
| Returns true if the Universe contains a Cell filled by a fissionable Material and false otherwise. More...
|
|
void | resetBoundaries () |
| Sets _boundaries_not_updated to true so boundaries will be recalculated if needed.
|
|
void | calculateBoundaries () |
| Calculates the boundary locations and conditions (VACUUM or REFLECTIVE) at the maximum and minimum reachable coordinates in the Universe.
|
|
void | setName (const char *name) |
| Sets the name of the Universe. More...
|
|
void | setType (universeType type) |
| Sets the Universe type to SIMPLE or LATTICE. More...
|
|
void | addCell (Cell *cell) |
| Adds a Cell to this Universe. More...
|
|
void | removeCell (Cell *cell) |
| Removes a Cell from this Universe's container of Cells. More...
|
|
bool | containsPoint (Point *point) |
| Determines whether a Point is contained inside a Universe. More...
|
|
Cell * | findCell (LocalCoords *coords) |
| Finds the Cell for which a LocalCoords object resides. More...
|
|
void | setFissionability (bool fissionable) |
| Sets whether or not this Universe contains a fissionable Material with a non-zero fission cross-section. More...
|
|
void | subdivideCells (double max_radius=INFINITY) |
| Subdivides all of the Material-filled Cells within this Universe into rings and angular sectors aligned with the z-axis. More...
|
|
void | buildNeighbors () |
| Builds collections of neighboring Cells for all Cells in this Universe for optimized ray tracing.
|
|
void | printString () |
| Prints a string representation of the Universe's attributes to the console.
|
|
Universe * | clone () |
| Clones this Universe and copy cells map. More...
|
|