Where can I learn to break the habit of using time steps and instead use mathematical frameworks to preserve time symmetry when programming simulations? I recently visited a site ( bugman123.com ). He's got a lot of STEM experience. He's written simulations and programs for a lot of things. What immediately sticks out to me is how smooth his simulations look. In particular, his physics simulation of a particle smashing into a wall of particles and how all the light refracts properly. http://bugman123.com/Physics/index.html Where can I learn to program like that?