It’s been a dream of mine to implement fluid simulations - specifically, to model what it might look like to stir milk into a coffee cup. After reading several tutorials on fluid simulation, I decided that vorton simulations would be the most accessible for me.
On the way to fluid simulation, which uses PDEs, I realized I need to learn about ODEs first and decided to implement an nbody simulation. I found a cool site that describes stable and closed orbits and set to work implementing an ODE integrator.
As part of the project, I learned about simple integrators, like the Euler method and leapfrog method, as well as symplectic integrators, like the verlet integrator. I also learned about higher order integrators, like Runge Kutta - a fourth order integrator. I read about even higher order methods like IAS15 but never actually implemented it.
I was also able to plug in real astronomical data from NASA and simulate the orbits of the bodies in our solar system. A major lesson there was to use Astronomical Units instead of the normal scientific units (like kilograms and kilometers)