|
| | CellBlock3D (std::vector< ParticleCell > &vec, const std::array< double, 3 > &bMin, const std::array< double, 3 > &bMax, double interactionLength, double cellSizeFactor=1.0) |
| | Constructor of CellBlock3D.
|
| |
|
| CellBlock3D (const CellBlock3D &)=delete |
| | Deleted copy constructor.
|
| |
| CellBlock3D & | operator= (const CellBlock3D)=delete |
| | Deleted assignment operator.
|
| |
| bool | cellCanContainHaloParticles (index_t index1d) const override |
| | Checks if the cell with the one-dimensional index index1d can contain halo particles.
|
| |
| bool | cellCanContainOwnedParticles (index_t index1d) const override |
| | Checks if the cell with the one-dimensional index index1d can contain owned particles.
|
| |
| ParticleCell & | getCell (index_t index1d) const |
| | get the ParticleCell of a specified 1d index.
|
| |
| ParticleCell & | getCell (const std::array< index_t, 3 > &index3d) const |
| | Get the ParticleCell of a specified 3d index.
|
| |
| void | reserve (size_t numParticles) |
| | Reserve memory for a given number of particles.
|
| |
| void | rebuild (std::vector< ParticleCell > &vec, const std::array< double, 3 > &bMin, const std::array< double, 3 > &bMax, double interactionLength, double cellSizeFactor) |
| | Rebuild the cell block.
|
| |
| ParticleCell & | getContainingCell (const std::array< double, 3 > &pos) const |
| | Get the containing cell of a specified position.
|
| |
| std::pair< std::array< double, 3 >, std::array< double, 3 > > | getCellBoundingBox (index_t index1d) const |
| | Get the lower and upper corner of the cell at the 1d index index1d.
|
| |
| std::pair< std::array< double, 3 >, std::array< double, 3 > > | getCellBoundingBox (const std::array< index_t, 3 > &index3d) const |
| | Get the lower and upper corner of the cell at the 3d index index3d.
|
| |
| std::array< index_t, 3 > | get3DIndexOfPosition (const std::array< double, 3 > &pos) const |
| | Get the 3d index of the cell block for a given position.
|
| |
| index_t | get1DIndexOfPosition (const std::array< double, 3 > &pos) const |
| | Get the 1d index of the cell block for a given position.
|
| |
| const std::array< index_t, 3 > & | getCellsPerDimensionWithHalo () const |
| | Get the dimension of the cell block including the halo boxes.
|
| |
| bool | checkInHalo (const std::array< double, 3 > &position) const |
| | Checks whether a given position is inside the halo region of the managed cell block.
|
| |
|
void | clearHaloCells () |
| | Deletes all particles in the halo cells of the managed cell block.
|
| |
| std::vector< ParticleCell * > | getNearbyHaloCells (const std::array< double, 3 > &position, double allowedDistance) const |
| | Get the halo cells around a given point.
|
| |
| const std::array< double, 3 > & | getHaloBoxMin () const |
| | Get the lower corner of the halo region.
|
| |
| const std::array< double, 3 > & | getHaloBoxMax () const |
| | Get the upper corner of the halo region.
|
| |
| unsigned long | getCellsPerInteractionLength () const |
| | Get the number of cells per interaction length.
|
| |
| const std::array< double, 3 > & | getCellLength () const |
| | Get the cell lengths.
|
| |
| index_t | getNumCells () const |
| | Get the number of cells in this block.
|
| |
| index_t | getFirstOwnedCellIndex () const |
| | 1D id of the first cell that is not in the halo.
|
| |
| index_t | getLastOwnedCellIndex () const |
| | 1D id of the last cell before there are only halo cells left.
|
| |
Public Member Functions inherited from autopas::internal::CellBorderAndFlagManager |
|
virtual | ~CellBorderAndFlagManager ()=default |
| | Cestructor.
|
| |
| virtual bool | cellCanContainHaloParticles (index_t index1d) const =0 |
| | Checks if the cell with the one-dimensional index index1d can contain halo particles.
|
| |
| virtual bool | cellCanContainOwnedParticles (index_t index1d) const =0 |
| | Checks if the cell with the one-dimensional index index1d can contain owned particles.
|
| |
| bool | ignoreCellForIteration (index_t index1d, IteratorBehavior behavior) const |
| | Checks if cell with index1d can be ignored for iteration with currently selected behavior.
|
| |
template<class
ParticleCell>
class autopas::internal::CellBlock3D< ParticleCell >
Class that manages a block of ParticleCells.
It is used to resize the cell block and to handle the conversion of 3d to 1d indices.
- Template Parameters
-