Define one volume of whole-numbered side lengths within a larger unit cell, which itself is part of a synthesis of many systems.
More...
#include <brickwork.h>
|
| VolumePartition (int a_dim_in=0, int b_dim_in=0, int c_dim_in=0, int a_orig_in=0, int b_orig_in=0, int c_orig_in=0, int halo_under_in=0, int halo_over_in=0, int system_index_in=0) |
| The constructor takes unitless lengths along the unit cell A, B, and C axes plus an origin coordinate in the grid at which the volume partition begins. In general, volume partitions do not wrap but rather fill the primary unit cell volume exactly.
|
|
int3 | getOrigin () const |
| Get the origin of the volume partition.
|
|
int | getVolumeWithHalo () const |
| Get the total volume of the work unit, including the halo which also, presumably, involves computing effort.
|
|
int | getSystemIndex () const |
| Get the system index to which the volume partition applies.
|
|
VolumePartition | split (int a_dim_update) |
| Reduce the dimension of the work unit along the unit cell A axis. A new partition is returned with the volume that was cleaved off.
|
|
|
| VolumePartition (const VolumePartition &original)=default |
| With no pointers to repair, no const members, and any array data members taken from the Standard Template Library, the default copy and move constructors, as well as copy and move assignment operators, are appropriate.
|
|
| VolumePartition (VolumePartition &&original)=default |
|
VolumePartition & | operator= (const VolumePartition &original)=default |
|
VolumePartition & | operator= (VolumePartition &&original)=default |
|
|
int3 | getLength () const |
| Get the length along a specific dimension, or the lengths along all dimensions.
|
|
int | getLength (UnitCellAxis dim) const |
|
int | getLength (CartesianDimension dim) const |
|
|
int3 | getLengthPlusHalo () const |
| Get the length along a specific dimension, or the lengths along all dimensions, plus the halo to give the true dimensions of the work involved with a particular brick.
|
|
int | getLengthPlusHalo (UnitCellAxis dim) const |
|
int | getLengthPlusHalo (CartesianDimension dim) const |
|
Define one volume of whole-numbered side lengths within a larger unit cell, which itself is part of a synthesis of many systems.
◆ VolumePartition()
stormm::synthesis::VolumePartition::VolumePartition |
( |
const VolumePartition & | original | ) |
|
|
default |
With no pointers to repair, no const members, and any array data members taken from the Standard Template Library, the default copy and move constructors, as well as copy and move assignment operators, are appropriate.
- Parameters
-
original | The original object to copy or move |
other | Another object placed on the right hand side of the assignment statement |
◆ getLength()
int3 stormm::synthesis::VolumePartition::getLength |
( |
| ) |
const |
Get the length along a specific dimension, or the lengths along all dimensions.
Overloaded:
- Provide the unit cell axis designation or its Cartesian analog
- Get the length along one dimension or all dimensions
- Parameters
-
dim | The unit cell axis along which to take the length |
◆ getLengthPlusHalo()
int3 stormm::synthesis::VolumePartition::getLengthPlusHalo |
( |
| ) |
const |
Get the length along a specific dimension, or the lengths along all dimensions, plus the halo to give the true dimensions of the work involved with a particular brick.
Overloaded:
- Provide the unit cell axis designation or its Cartesian analog
- Get the length along one dimension or all dimensions
- Parameters
-
dim | The unit cell axis along which to take the length |
◆ split()
VolumePartition stormm::synthesis::VolumePartition::split |
( |
int | a_dim_update | ) |
|
Reduce the dimension of the work unit along the unit cell A axis. A new partition is returned with the volume that was cleaved off.
- Parameters
-
a_dim_update | The new dimension to give the current cell |
The documentation for this class was generated from the following files: