Using the Barnes-Hut With Higher Order Multipoles Algorithm at a time of O(N log N) licensed under the GNU GPLv3+
NEXT includes a modular python script to generate initial conditions, it outputs simple .txt files that NEXT can load directly.
The generator script is located in tools/icbuilder.py
FP32, FP64
NEXT Uses OpenMP with "#pragma omp parallel for" for parallelization.
- reduced division count (3-6x faster on avg.)
- Symmetric-force application
Particles store:
position (x, y, z);
velocity (vx, vy, vz);
mass (m);mkdir build
cd build
cmake ..
cmake --build . --config Release
cd ..cd examples/TwoBodies
python two_body.py
../../next two_body.txt 8 0.01 0.1 vtuNEXT uses Division-avoiding algebra optimizations to make the simulation run faster.
NEXT also uses the Kick-Drift-Kick Leapfrog method which is implemented like this:
- Compute velocities with 0.5 dt
- Compute positions with full dt
- Compute velocities with 0.5 dt
NEXT uses the .VTK format to output data. More formats like HDF5 are planned.