Implements LevelSetKernel for cartesian meshes. More...
Public Types | |
template<typename value_t > | |
using | CellDenseCacheContainer = std::vector<value_t> |
template<typename value_t > | |
using | CellSparseCacheContainer = std::unordered_map<long, value_t> |
Public Types inherited from bitpit::LevelSetCachedKernel | |
typedef ElementCacheCollection | CellCacheCollection |
Public Member Functions | |
LevelSetCartesianKernel (VolCartesian &patch, LevelSetFillIn fillIn) | |
double | computeCellBoundingRadius (long) const override |
std::array< double, 3 > | computeCellCentroid (long) const override |
double | computeCellTangentRadius (long) const override |
double | getCellBoundingRadius () const |
double | getCellTangentRadius () const |
VolCartesian * | getMesh () const override |
Public Member Functions inherited from bitpit::LevelSetCachedKernel | |
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 () |
std::unique_ptr< DataCommunicator > | createDataCommunicator () const |
MPI_Comm | getCommunicator () const |
double | getDistanceTolerance () const |
LevelSetFillIn | getExpectedFillIn () 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 |
Additional Inherited Members | |
Protected Member Functions inherited from bitpit::LevelSetCachedKernel | |
CellCacheCollection & | getCellCacheCollection () |
const CellCacheCollection & | getCellCacheCollection () const |
Protected Attributes inherited from bitpit::LevelSetCachedKernel | |
std::unique_ptr< CellCacheCollection > | m_cellCacheCollection |
Protected Attributes inherited from bitpit::LevelSetKernel | |
MPI_Comm | m_communicator |
LevelSetFillIn | m_expectedFillIn |
VolumeKernel * | m_mesh |
Implements LevelSetKernel for cartesian meshes.
Definition at line 34 of file levelSetCartesianKernel.hpp.
using bitpit::LevelSetCartesianKernel::CellDenseCacheContainer = std::vector<value_t> |
Definition at line 44 of file levelSetCartesianKernel.hpp.
using bitpit::LevelSetCartesianKernel::CellSparseCacheContainer = std::unordered_map<long, value_t> |
Definition at line 42 of file levelSetCartesianKernel.hpp.
bitpit::LevelSetCartesianKernel::LevelSetCartesianKernel | ( | VolCartesian & | patch, |
LevelSetFillIn | fillIn ) |
Constructor
patch | is the underlying mesh |
fillIn | is the expected levelset fill-in |
Definition at line 44 of file levelSetCartesianKernel.cpp.
|
overridevirtual |
Computes the radius of the bounding sphere associated with the specified cell.
The bounding sphere is the sphere with the minimum radius that contains all the cell vertices and has the center in the cell centroid.
[in] | id | is the id of cell |
Implements bitpit::LevelSetKernel.
Definition at line 142 of file levelSetCartesianKernel.cpp.
|
overridevirtual |
Computes the centroid of the specfified cell.
[in] | id | is the id of cell |
Implements bitpit::LevelSetKernel.
Definition at line 109 of file levelSetCartesianKernel.cpp.
|
overridevirtual |
Computes the radius of the tangent sphere associated with the specified cell.
The tangent sphere is a sphere having the center in the cell centroid and tangent to the cell.
[in] | id | is the id of cell |
Implements bitpit::LevelSetKernel.
Definition at line 125 of file levelSetCartesianKernel.cpp.
double bitpit::LevelSetCartesianKernel::getCellBoundingRadius | ( | ) | const |
Get the radius of the bounding sphere associated with the cells of the mesh.
The bounding sphere is the sphere with the minimum radius that contains all the cell vertices and has the center in the cell centroid.
Definition at line 97 of file levelSetCartesianKernel.cpp.
double bitpit::LevelSetCartesianKernel::getCellTangentRadius | ( | ) | const |
Computes the radius of the tangent sphere associated with the cells of the mesh.
The tangent sphere is a sphere having the center in the cell centroid and tangent to the cell.
Definition at line 83 of file levelSetCartesianKernel.cpp.
|
overridevirtual |
Returns a pointer to VolCartesian
Implements bitpit::LevelSetKernel.
Definition at line 69 of file levelSetCartesianKernel.cpp.