SPHinXsys
alpha version
|
Abstract class for mesh cell linked list. More...
#include <cell_linked_list.h>
Inherits SPH::BaseMeshField.
Inherited by SPH::MultilevelMesh< BaseCellLinkedList, CellLinkedList, RefinedMesh< CellLinkedList > >, and SPH::CellLinkedList.
Public Member Functions | |
BaseCellLinkedList (RealBody &real_body, SPHAdaptation &sph_adaptation) | |
virtual void | assignBaseParticles (BaseParticles *base_particles)=0 |
virtual void | UpdateCellLists ()=0 |
virtual void | insertACellLinkedParticleIndex (size_t particle_index, const Vecd &particle_position)=0 |
virtual void | InsertACellLinkedListDataEntry (size_t particle_index, const Vecd &particle_position)=0 |
virtual ListData | findNearestListDataEntry (const Vecd &position)=0 |
virtual void | computingSequence (StdLargeVec< size_t > &sequence)=0 |
virtual void | tagBodyPartByCell (CellLists &cell_lists, std::function< bool(Vecd, Real)> &check_included)=0 |
virtual void | tagBodyDomainBoundingCells (StdVec< CellLists > &cell_lists, BoundingBox &body_domain_bounds, int axis)=0 |
virtual void | tagMirrorBoundingCells (CellLists &cell_lists, BoundingBox &body_domain_bounds, int axis, bool positive)=0 |
Public Member Functions inherited from SPH::BaseMeshField | |
BaseMeshField (const std::string &name) | |
std::string | Name () |
virtual void | writeMeshFieldToPlt (std::ofstream &output_file)=0 |
Protected Member Functions | |
virtual void | clearSplitCellLists (SplitCellLists &split_cell_lists) |
virtual void | updateSplitCellLists (SplitCellLists &split_cell_lists)=0 |
Protected Attributes | |
RealBody & | real_body_ |
Kernel & | kernel_ |
BaseParticles * | base_particles_ |
Protected Attributes inherited from SPH::BaseMeshField | |
std::string | name_ |
Abstract class for mesh cell linked list.
SPH::BaseCellLinkedList::BaseCellLinkedList | ( | RealBody & | real_body, |
SPHAdaptation & | sph_adaptation | ||
) |
The buffer size 2 used to expand computational domain for particle searching.
|
pure virtual |
Assign base particles to the mesh cell linked list, and is important because particles are not defined in the constructor.
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
protectedvirtual |
clear split cell lists in this mesh
|
pure virtual |
computing the sequence which indicate the order of sorted particle data
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
find the nearest list data entry
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
Insert a cell-linked_list entry of the index and particle position pair.
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
Insert a cell-linked_list entry to the concurrent index list.
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
Tag domain bounding cells in an axis direction, called by domain bounding classes
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
Tag body part by cell, call by body part
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
Tag mirror bounding cells, called by mirror boundary condition
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
pure virtual |
update the cell lists
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.
|
protectedpure virtual |
update split particle list in this mesh
Implemented in SPH::MultilevelCellLinkedList, and SPH::CellLinkedList.