Loading...
Searching...
No Matches
voloctree.hpp
70 VolOctree(int dimension, const std::array<double, 3> &origin, double length, double dh, MPI_Comm communicator, std::size_t haloSize = 1);
71 VolOctree(int id, int dimension, const std::array<double, 3> &origin, double length, double dh, MPI_Comm communicator, std::size_t haloSize = 1);
79 VolOctree(std::unique_ptr<PabloUniform> &&tree, std::unique_ptr<PabloUniform> *adopter = nullptr);
80 VolOctree(int id, std::unique_ptr<PabloUniform> &&tree, std::unique_ptr<PabloUniform> *adopter = nullptr);
99 void simulateCellUpdate(long id, adaption::Marker marker, std::vector<Cell> *virtualCells, PiercedVector<Vertex, long> *virtualVertices) const override;
153 void _findCellNeighs(long id, const std::vector<long> *blackList, std::vector<long> *neighs) const override;
154 void _findCellEdgeNeighs(long id, int edge, const std::vector<long> *blackList, std::vector<long> *neighs) const override;
155 void _findCellVertexNeighs(long id, int vertex, const std::vector<long> *blackList, std::vector<long> *neighs) const override;
161 std::vector<adaption::Info> _partitioningPrepare(const std::unordered_map<long, double> &cellWeights, double defaultWeight, bool trackPartitioning) override;
265 std::vector<long> importCells(const std::vector<OctantInfo> &octantTreeIds, StitchInfo &stitchInfo, std::istream *stream = nullptr);
PABLO Uniform is an example of user class derived from ParaTree to map ParaTree in a uniform (square/...
Definition PabloUniform.hpp:62
long locatePoint(double x, double y, double z) const
Definition patch_kernel.cpp:5850
void setBoundingBox(const std::array< double, 3 > &minPoint, const std::array< double, 3 > &maxPoint)
Definition patch_kernel.cpp:7196
void _updateAdjacencies() override
Definition voloctree.cpp:1912
void setDimension(int dimension) override
Definition voloctree.cpp:510
long locatePoint(const std::array< double, 3 > &point) const override
Definition voloctree.cpp:2187
std::vector< adaption::Info > _adaptionPrepare(bool trackAdaption) override
Definition voloctree.cpp:939
std::array< double, 3 > evalInterfaceNormal(long id) const override
Definition voloctree.cpp:760
double evalCellSize(long id) const override
Definition voloctree.cpp:729
void _findCellEdgeNeighs(long id, int edge, const std::vector< long > *blackList, std::vector< long > *neighs) const override
Definition voloctree.cpp:2542
void scale(const std::array< double, 3 > &scaling, const std::array< double, 3 > ¢er) override
Definition voloctree.cpp:2468
long _getCellNativeIndex(long id) const override
Definition voloctree.cpp:2366
void _restore(std::istream &stream) override
Definition voloctree.cpp:2315
std::vector< long > _findGhostCellExchangeSources(int rank) override
Definition voloctree_parallel.cpp:219
void translate(const std::array< double, 3 > &translation) override
Definition voloctree.cpp:2403
std::vector< adaption::Info > _adaptionAlter(bool trackAdaption) override
Definition voloctree.cpp:1024
adaption::Marker _getCellAdaptionMarker(long id) override
Definition voloctree.cpp:2082
double evalCellVolume(long id) const override
Definition voloctree.cpp:701
bool isPointInside(const std::array< double, 3 > &point) const override
Definition voloctree.cpp:2142
void settleAdaptionMarkers() override
Definition voloctree.cpp:1059
Octant * getOctantPointer(const OctantInfo &octantInfo)
Definition voloctree.cpp:851
void simulateCellUpdate(long id, adaption::Marker marker, std::vector< Cell > *virtualCells, PiercedVector< Vertex, long > *virtualVertices) const override
Definition voloctree.cpp:638
void _setHaloSize(std::size_t haloSize) override
Definition voloctree_parallel.cpp:107
std::size_t _getMaxHaloSize() override
Definition voloctree_parallel.cpp:95
std::vector< adaption::Info > _partitioningAlter(bool trackPartitioning) override
Definition voloctree_parallel.cpp:182
void _partitioningCleanup() override
Definition voloctree_parallel.cpp:206
VolOctree(MPI_Comm communicator, std::size_t haloSize=1)
Definition voloctree.cpp:76
double evalInterfaceArea(long id) const override
Definition voloctree.cpp:743
bool _enableCellBalancing(long id, bool enabled) override
Definition voloctree.cpp:2124
std::vector< adaption::Info > _partitioningPrepare(const std::unordered_map< long, double > &cellWeights, double defaultWeight, bool trackPartitioning) override
Definition voloctree_parallel.cpp:126
void setCommunicator(MPI_Comm communicator) override
Definition voloctree_parallel.cpp:81
int getCellFamilySplitLocalVertex(long id) const
Definition voloctree.cpp:920
void _findCellVertexNeighs(long id, int vertex, const std::vector< long > *blackList, std::vector< long > *neighs) const override
Definition voloctree.cpp:2599
void setTreeAdopter(std::unique_ptr< PabloUniform > *entruster)
Definition voloctree.cpp:816
bool _resetCellAdaptionMarker(long id) override
Definition voloctree.cpp:2071
PabloUniform & getTree()
Gets a reference to the octree associated with the patch.
Definition voloctree.cpp:795
VolOctree & operator=(const VolOctree &other)
Definition voloctree.cpp:374
void setOrigin(const std::array< double, 3 > &origin)
Definition voloctree.cpp:2392
std::array< double, 3 > evalCellCentroid(long id) const override
Definition voloctree.cpp:715
std::unique_ptr< PatchKernel > clone() const override
Definition voloctree.cpp:397
bool isSameFace(const Cell &cell_A, int face_A, const Cell &cell_B, int face_B) const override
Definition voloctree.cpp:2700
void _dump(std::ostream &stream) const override
Definition voloctree.cpp:2240
bool _markCellForRefinement(long id) override
Definition voloctree.cpp:2050
void _findCellNeighs(long id, const std::vector< long > *blackList, std::vector< long > *neighs) const override
Definition voloctree.cpp:2507
long getOctantId(const OctantInfo &octantInfo) const
Definition voloctree.cpp:827
int findAdjoinNeighFace(const Cell &cell, int cellFace, const Cell &neigh) const override
Definition voloctree.cpp:2671
bool _markCellForCoarsening(long id) override
Definition voloctree.cpp:2060
bool isPointInside(double x, double y, double z) const
Definition volume_kernel.cpp:202
VolumeKernel(MPI_Comm communicator, std::size_t haloSize, AdaptionMode adaptionMode, PartitioningMode partitioningMode)
Definition volume_kernel.cpp:56
