njewsbury / gravitational-simulation

Repository for UManitoba PHYS4250 Final Project
MIT License
0 stars 1 forks source link

Simulation Engine uses Euler Step #5

Closed njewsbury closed 9 years ago

njewsbury commented 9 years ago

The current implementation of the simulation engine uses an Euler step between intervals which may result in the loss/gain of total energy. Overall energy must be conserved and therefore the Euler solution is invalid.

The proposed solution set to this is the use of Symplectic Integraiton (http://en.wikipedia.org/wiki/Symplectic_integrator) which maintains energy throughout the integration. However leaving the Euler as a comparison would be ideal.

The Symplectic method will require the switch to using Hamiltonian Mechanics (http://en.wikipedia.org/wiki/Hamiltonian_mechanics) [[ r(q, p) ]] as opposed to Lagrangian mechanics (http://en.wikipedia.org/wiki/Lagrangian_mechanics) [[ r(q,t) ]]

TheLyndonRay commented 9 years ago

I love facebook

njewsbury commented 9 years ago

Abstracted the integration method to allow for easy switching between methods. As an interim Verlet Integration has been implemented as opposed to Eulers method. http://en.wikipedia.org/wiki/Verlet_integration

The Verlet model produces much more stable results. However I believe energy may not be conserved fully, more testing is required.