From NASA, 1963, by William C. Strack, Wilbur F. Dobson, and Vearl N. Huff
As described herein, this code is designed to operate on an IBM 704 computer that has an 8000 word (8 K) memory and at least 1 K of drum.
Even so constrained it includes means of changing coordinate base when approaching asymptotes inducing loss in numerical accuracy, variable step size control, etc.
Takes me back to when I lived and breathed such code for early geophysical and remote sensing work.
Love seeing stuff like this. The corrections for an oblate spheroid threw me for a loop at first, until I realized "yeah, of course". I've only ever played around with ideal bodies when simulating the n-body problem (sounds a bit raunchy...) so never even considered the fact that a rotating planet isn't perfectly spherical.
Idle question: in the days before TeX, when manuscripts like this were hammered out on Remington office typewriters, how did authors handle symbols?
In this manuscript for example you can see that power superscripts are really just regular numbers typed at an offset (perhaps rotating the paper around the platen one notch instead of the two that would be a whole line feed). But what about the vectors and the giant sigma? All hand drawn over the top of a typed manuscript?
My first thought was to upload the PDF to Qwen3 and ask it to reimplement in Python using NumPy, Astropy, etc. Have to work on the day job, but could be some educational fun learning and Jupyter plots in my near future. Anyway, the generated code looks promising and contains the requisite green tick and bar graph emojis, so what's not to like?
It looks like they chose to use the "universal gravitational constant" "k" instead of Newton^s constant, "G": p.23, "k^2 = universal gravitational constant, 1.32452139x10^20, m^3/(sec^2)(sun mass units)"
But the value and unit of "k" given in the Wikipedia page is different. Do you know what NASA document means by "universal gravitational constant" in modern sense?
It is neat to see some of the old work done in the field, this looks like a pretty classic treatment of the topic. It looks like they were using a fourth-order Runge-Kutta integrator, which would likely limit long term integrations accuracy (though looks sufficient for their use case). Many algorithms I have seen typically use much higher order integration methods to beat down the accumulation of numerical error.
Source: Working on my PhD in orbital mechanics of asteroids/comets, here are my open source (python/rust) orbital integration tools:
https://github.com/dahlend/kete
7 comments
[ 4.5 ms ] story [ 25.7 ms ] threadTakes me back to when I lived and breathed such code for early geophysical and remote sensing work.
In this manuscript for example you can see that power superscripts are really just regular numbers typed at an offset (perhaps rotating the paper around the platen one notch instead of the two that would be a whole line feed). But what about the vectors and the giant sigma? All hand drawn over the top of a typed manuscript?
I think "k" was also known as "Gaussian gravitational constant" https://en.wikipedia.org/wiki/Gaussian_gravitational_constan...
But the value and unit of "k" given in the Wikipedia page is different. Do you know what NASA document means by "universal gravitational constant" in modern sense?
Source: Working on my PhD in orbital mechanics of asteroids/comets, here are my open source (python/rust) orbital integration tools: https://github.com/dahlend/kete