[TUHS] Space Travel, was New: The Earliest UNIX Code

Lawrence Stewart stewart at serissa.com
Tue Oct 29 12:18:46 AEST 2019

> On 2019, Oct 18, at 6:04 PM, Ken Thompson via TUHS <tuhs at minnie.tuhs.org> wrote:
> while writing "space travel,"
> i could not get the space ship integration
> around a planet to keep from either gaining or
> losing energy due to floating point errors.
> i asked dick hamming if he could help. after
> a couple hours, he came back with a formula.
> i tried it and it worked perfectly. it was some
> weird simple double integration that self
> corrected for fp round off. as near as i can
> ascertain, the formula was never published
> and no one i have asked (including me) has
> been able to recreate it.
> i look forward to the OCR of the code.

I think this must be a variant of “Symplectic Integration”.

My son had an internship at Mitre having something to do with orbit 
determination and I got to reading papers about it.

Symplectic integration is what you want for systems described by a Hamiltonian, 
such as orbits because the usual integrators (Euler, Runge-Kutta) don’t conserve 
the interchange between position and momentum, or something like that.

As far as I can tell, this sort of stuff started getting published in the 1980s, 
so Hamming may well have tossed it off earlier and just not written it up.

Could be a nice historical footnote for the development of orbit calculations.
Could be fun to reverse engineer the code.


More information about the TUHS mailing list