Base class for defining kernels that need to cache data. More...
Public Types | |
typedef ElementCacheCollection | CellCacheCollection |
Public Member Functions | |
LevelSetCachedKernel (VolumeKernel *, LevelSetFillIn fillIn) | |
void | clearCaches (bool release=false) |
bool | update (const std::vector< adaption::Info > &) override |
Public Member Functions inherited from bitpit::LevelSetKernel | |
LevelSetKernel () | |
LevelSetKernel (VolumeKernel *mesh, LevelSetFillIn fillIn) | |
virtual | ~LevelSetKernel () |
virtual double | computeCellBoundingRadius (long) const =0 |
virtual std::array< double, 3 > | computeCellCentroid (long) const =0 |
virtual double | computeCellTangentRadius (long) const =0 |
std::unique_ptr< DataCommunicator > | createDataCommunicator () const |
MPI_Comm | getCommunicator () const |
double | getDistanceTolerance () const |
LevelSetFillIn | getExpectedFillIn () const |
virtual VolumeKernel * | getMesh () const |
virtual bool | intersectCellPlane (long, const std::array< double, 3 > &, const std::array< double, 3 > &, double) |
double | isCellInsideBoundingBox (long, const std::array< double BITPIT_COMMA 3 > &, const std::array< double, 3 > &) const |
bool | isCommunicatorSet () const |
bool | isPointInCell (long, const std::array< double, 3 > &) const |
Protected Member Functions | |
CellCacheCollection & | getCellCacheCollection () |
const CellCacheCollection & | getCellCacheCollection () const |
Protected Attributes | |
std::unique_ptr< CellCacheCollection > | m_cellCacheCollection |
Protected Attributes inherited from bitpit::LevelSetKernel | |
MPI_Comm | m_communicator |
LevelSetFillIn | m_expectedFillIn |
VolumeKernel * | m_mesh |
Base class for defining kernels that need to cache data.
Definition at line 94 of file levelSetKernel.hpp.
Definition at line 97 of file levelSetKernel.hpp.
bitpit::LevelSetCachedKernel::LevelSetCachedKernel | ( | VolumeKernel * | patch, |
LevelSetFillIn | fillIn ) |
Constructor
[in] | patch | underlying mesh |
[in] | fillIn | expected kernel fill-in |
Definition at line 297 of file levelSetKernel.cpp.
void bitpit::LevelSetCachedKernel::clearCaches | ( | bool | release = false | ) |
Clear the cache used for caching mesh information.
release | if set to true the memory hold by the cache will be released, otherwise the cache will be cleared but its memory may not be released |
Definition at line 309 of file levelSetKernel.cpp.
|
protected |
Get a reference to the cell cache collection.
Attempting to access cache collection when cache is disabled results in undefined behavior.
Definition at line 331 of file levelSetKernel.cpp.
|
protected |
Get a constant reference to the cell cache collection.
Attempting to access cache collection when cache is disabled results in undefined behavior.
Definition at line 343 of file levelSetKernel.cpp.
|
overridevirtual |
Updates the kernel after an adaption.
[in] | adaptionData | are the information about the adaption |
Implements bitpit::LevelSetKernel.
Definition at line 354 of file levelSetKernel.cpp.
|
mutableprotected |
Cell cache collection
Definition at line 106 of file levelSetKernel.hpp.