Vectorized N-Body Equation

Fully vectorized n-body equations of motion in second and first order form, along with C MEX implementations of an RKN 12-10 integrator.
1.4K Downloads
Updated 9 May 2023

View License

nbodyVect provides fully vectorized n-body gravitational equations for use with any built-in (or compatible) MATLAB ode solver. Version 2 of the code also provides event functions for detecting collisions and conjunctions, as well as 3 C implementations of the RKN1210 integrator from Dormand et al. (1987), based on the original MATLAB implementation by Rody Oldenhuis.
The MEX functions have been tested on Windows and macOS/Linux and should compile with no issue if a compatible compiler is installed (see https://www.mathworks.com/help/matlab/call-mex-files-1.html for details).
nbodyRKN_c and nbodyRKN_c_Events can be compiled on their own, e.g.:
mex nbodyRKN_c
nbodyRKN_c_Conj requires linking to levmar (https://users.ics.forth.gr/~lourakis/levmar/) - see file header for compilation notes.
Script nbodyVect_test provides a basic test of integrator functionality.

Cite As

Dmitry Savransky (2024). Vectorized N-Body Equation (https://www.mathworks.com/matlabcentral/fileexchange/27820-vectorized-n-body-equation), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2023a
Compatible with R2016b and later releases
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
2.0.0.0

Adding conjunction/collision detection and C integrator implementations.

1.0.0.0