- add epsilon (smoothing factor) to forces count in
SimpleNBodygenerator - add Runge-Kutta method for numerical integration in
SimpleNBody(most likely would useenumfor this) - create tests for basic
ScalarQuantityandVectorQuantityfunctions - implement custom error class in order to get rid of
&'static strorStringin eachResult - add
check_compatabilitymethod to quantities
- add more integrators (Barnes-Hut algorithm at least) and generators (Solar system at least)
- use multithreading to increase perfomance
- use C++ code to increase perfomance
- use GPU (primarily, CUDA or OpenCL) to increase perfomance
- add CLI
- add some UI (probably, using python's matplotlib, SDL in C++ or even REST API)
- add unit tests for integrators and generators
- add documentation
- implement all operations on quantities and prepare unit tests for each of them
- It would be good to create a way that forces integrators and generators to use quantities of specific types; for example, radius of the Plummer sphere must be in meters (or equivalent) and in nothing else. If it would be in compile-time - it would be great.
- Probably I should move
SIstruct tocoremodule and make something likeSystemtrait which should somehow deal with different systems like SI, CGS and so on - Maybe move Euler (or other) method to separate struct and call it from the integrators