Tree-based neighbor search
Performance enhancements:
- Octree-based warp-aware neighbor searches for better performance and quasi-2D geometry support
- Adaptive target particle groups for gravity traversal based on bounding volumes relative to volumes of local leaf cells. Avoids large traversal stacks.
- Support for multi-level tree merges for faster octree rebalancing. Avoids a rare issue where LET updates couldn't keep up
with changing domain boundaries. (Loss of a peer rank followed by inability to scale back the octree to the global resolution in a single step)
New features:
- Support for particle splitting when initializing from a checkpoint file.
- Support for initialization of rectangular domains at scale for Kelvin-Helmholtz and Wind-shock
- Pure N-body gravity propagator
- Coupled update of neighbor counts and smoothing lengths
Minor fixes and enhancements:
- IAD
tau
determinants with normalization factors for better over/underflow resilience - Correct observable selection handling and settings parameter when writing and restoring from file
- More robust initial domain synchronization that avoids the MPI_Send limit of MPI_INT32 elements per message.
- Modify signalling velocity for larger time-steps
- Added divergence of velocity based minDtRho criterium to time-step control
- Added acceleration-based time-step control