25# include "bitpit_voloctree.hpp"
26# include "bitpit_CG.hpp"
27# include "levelSetKernel.hpp"
28# include "levelSetOctreeKernel.hpp"
62 m_octantTangentRadii.resize(maxLevel + 1);
63 m_octantBoundingRadii.resize(maxLevel + 1);
64 for (
int level = 0; level <= maxLevel; ++level) {
67 m_octantTangentRadii[level] = 0.5 * levelSize;
68 m_octantBoundingRadii[level] = 0.5 * std::sqrt(dimension) * levelSize;
92 return m_octantTangentRadii[level];
107 return m_octantBoundingRadii[level];
123 if (cacheEntry.isValid()) {
133 cache->insertEntry(
id, centroid);
The class ElementCacheCollection allows to store a collection of caches for the elements of a mesh.
std::size_t insert(std::size_t index, Args &&... args)
static const std::size_t NULL_CACHE_ID
Base class for defining kernels that need to cache data.
CellCacheCollection & getCellCacheCollection()
virtual VolumeKernel * getMesh() const
double computeCellBoundingRadius(long) const override
double getOctantTangentRadius(int level) const
LevelSetOctreeKernel(VolOctree &patch, LevelSetFillIn fillIn)
std::array< double, 3 > computeCellCentroid(long) const override
double getOctantBoundingRadius(int level) const
VolOctree * getMesh() const override
double computeCellTangentRadius(long) const override
The class LevelSetCache is the base class for defining caches that store values.
The VolOctree defines a Octree patch.
int getCellLevel(long id) const
PabloUniform & getTree()
Gets a reference to the octree associated with the patch.
std::array< double, 3 > evalCellCentroid(long id) const override
static BITPIT_PUBLIC_API const TreeConstants & instance(uint8_t dim)