When I first learned celestial navigation I found it surprising that there are no free versions of the Nautical almanac to be found on the internet. Although I am not a very good programmer I decided to correct this problem. The results are the PDF files that can be downloaded here. I compared the results to the 2009 version of the official Nautical Almanac and found no differences larger than 0.3´. Which is good enough for me. I believe that the algorithm is sound but cannot guarantee the absence of larger errors. Anyone who needs the Nautical Almanac for security relevant applications should buy the official one. My Tables should be fine for anyone wanting to learn the fine art of navigating by the stars.
Have fun and always fair winds.
Tables in PDF format
Full nautical almanac with all the variable tables:
For those that only want to do sun sights I compiled tables just for the sun. These tables are very compact and one or two sheets should be sufficient for most passages:
One will also need the static tables corresponding to the „increments & corrections part in the nautical almanac. Mine have a slightly different format but should be easy enough to use.:
And plotting sheets in different formats:
All these tables were created by a small Python program. Most of the heavy computing is done by the free Pyephem libraries. Typesetting is done by TeX/LaTeX So before you can use this program you need to install:
Last but not least you need to download the python script which I release under the GPLv2.
Thanks, a great set of tables, they look and feel just like a normal almanac, nice work!
Thank you SO much for the Almanac and in such a compact format!
This is the best I’ve seen!!!!
Hi Ben and Carl
Thank you very much for the kind words.
Can you please tell us how to create The Daily Pages for the Sun only like you have available for download? I assume it’s using PyAlmanac too. When using Terminal I enter “increments.py” (for example) and get nothing in return. The same is true if I enter “increments” or “python increments”.
Sorry its not working like that. The increments.py file is just to produce a LaTeX file for the increments and corrections. Not really a part of Pyalmanac at all. If you got python 2.7 and Pyephem correctly installed you should get a file called inc.tex.
To create all the tables you need to run “python pyalmanac.py”. This requires to have python with pyephem and LaTeX correctly installed.
I made a different programm to produce the tables for the sun. I will try to make a Github project for this later this weekend.
It was either in the “Nautical Almanac” or “Increments” made by PyAlmanac that the “v” and “d” values for the Moon were being generated as “c” and “d”. I figured out where in your code the “c” was located and changed it to “v”. All is well.
‘Looking forward to seeing your program for creating the Almanac for the Sun.
Thank you, again, for your efforts.
I have updatet pyalmanac.
When starting the program is lets you chose if you want to create the entire nautical almanac or just the tables for the sun.
I can’t get suntables to create “sun tables” either by running python pyalmanac.py or python suntables.py
What should I do?
Looks like I forgot to push one file to github. Try to download again. It should hopfully work now.
Just run “python pyalmanac.py”
Thanks for doing this project. Using your work, I found it a simple thing to hack together a python program that takes the almanac data and feeds it into formulas for Hc and Zn.
Congratulations….!!! You have done a very good job…!!!!
Just great! Thank you very much. I share this one with my friends.
I was sailing 3 years in the far North, sailing around the Spitzberg short handed…hope to see you up there in this pure icy world
Excellent, Enno, and well done! This admiration from a singlehanded Cape Horner who has recently retired as a professional yachtsman. I buy the Admiralty Nautical Almanac each year – it’s a sort of bible. This will be so much better to take on breaks to Europe and the Cape.
Very nicely laid out, very clear and easy to read. Do keep up the good work – we need you.
Hi all, I just installed the copy of pyalmanac-master from github and tried to create tables just for the sun for 2015. Unfortunately, it appears that a necessary script is missing:
! LaTeX Error: File `./Ra' not found.
I just looked at the suntables.py file and it appears that Ra is not a script, but maybe a small image?
Yes you are quiet right. It is an image of the egyptian god Ra. I found that apropriate since ist is the god of the sun. 😉
You can use whatever you like.
By far the best Nautical Almanac I have seen on the web. The layout is clear and a nice crisp font for easy reading.
If the Admiralty ever put their Almanac on the internet this is what I think it would look like.
Your hard work and sharing this with all interested in marine navigation is in the best spirit of the world wide web.
I hope you will be able to continue producing this aid to navigators in the future
There appears to be an error in the Sun’s declination near the equinoxes when the declination integral value is 0 degrees. For example- on March 18, 2015 at 12:00 UTC the Sun’s declination is listed as 0d 58.1min but it should be -0d 58.1min. That is- until March 20 at 23:00 UTC the Sun’s declination should be a negative value.
The same problem occurs a few days before the autumnal equinox.
Of course by by comparison and logic you can figure it out but it would be nice to have the minus sign.
Excellent work, Enno!
It appears that in The Nautical Almanacs made by Pyalmanac that whenever a heavenly object’s declination is negative and the integral declination value is zero there is no minus sign beside it. I just checked the 2015 almanac and found Venus, Mars and the Moon with that problem. As said previously, examination of the declination easily will solve the problem but it would be nice to have it correct with no ambiguity.
Thank you…as always.
Thank you very much. Your feedback is invaluable. I did not catch this one. The reason for this problem was that there is no such thing as -0. And the computer did not know about the minutes part. – It does now. All files are fixed now.
Sorry also for not fixing this sooner. This year I am actually doing what all this is about: Ocean sailing.
Thank you for fixing the problem. I’ve been following your voyage with interest through the position reports.
Thank you for your great work! I was wondering if there is any free version to create these tables and intended to write a free software. But then I stumbled on your script 🙂
TheNauticalAlmanac.com has all of Enno’s work compiled into almanacs for the years 2000 through 2020.
TheNauticalAlmanac.com now has a Celestial Navigation forum;
Looking forward to enjoy your almanac
Thank you for the Nautical Almanac PDF files. I am a land locked sailor near Denver Colorado USA and your almanac has given the opportunity to start using my sextant again at no additional expense. I just like to practice the skill and I use the reflection of the sun or moon in a pan of water since it is not possible to see the true horizon here. This of course doubles my sextant angle.
Thank you again and I wish you smooth sailing when you make your way back home to Norway.
A very good job.
Keep up the good work.
Gustavo – Brazilian Cel Nav student
I was planning on delivering a vessel from N america to S Aus, but the trip is now taking me to SE Asia and I didn’t bring a 2017 almanac. Im now in Indonesia unable to purchase one but I’v just found these documents you’ve posted. Bloody life saver! thanks a lot.
Vielen Dank für Deine Nautical Almanacs! Ich bin auch im 2.Jahr erstaunt, wie dicht Deine Daten an den offiziellen US Daten sind bzw., daß sie identisch sind. Nachdem die Astronavigation eine meiner Leidenschaften ist, machst Du mir somit eine große Freude! Führst Du diese NA Reihe auch nach 2020 weiter? Ich hatte auch bis 2015 die tollen vorausberechneten Monddistanz-Tabellen (precomputed lunars) von Steven Wepster im Einsatz, die bedauerlicherweise nicht fortgeführt wurden. Vielleicht hast Du auch für den Ersatz eine Idee.
Nochmals Dankeschön und eine schöne Segelsaison 2017
Kai Nielsen, S/Y BIRKA, DB5121
Lunars? Hmmm – knifflig. 42 reicht wohl nicht als Antwort oder????
Mal ernsthaft. Ich hab mich nie so richtig damit beschäftigt. Ist ja eigentlich ein eher esoterischer Zweig der Astronavigation. Mir scheint dass diese Tabellen eigentlich nichts anderes sind als geozentrische Winkeldistanzen zwischen dem Mond und anderen Objekten. Das sollte ja eigentlich nicht so schwer sein zu berechnen. Die Kunst ist wohl eher die richtigen Objekte automatisch auszuwählen. Muss ich mal drüber nachdenken.
Was das Weiterführen der normalen NA Tabellen betrifft so kannst du das selber tun. Das ist ja das Schöne an Open Source Software. Wenn du willst kannst du das Programm installieren und den NA für 2150 berechnen. 😉
Excellent, thx a lot. Travelling etc… Way more useful as of now for practice not to forget than hauling printed version around (and anyway have reduction tables on pdf format) so, some fres air, have a sight, then all the rest on PC (for now 😉
It is great and very useful tables.
But why I can not find the table for the phases of the moon: the time of conjunction, opposition, and the two quarters?
You can find the Moon phases here (using 2018 as an example)
Hi Enno, nice work. But what about the ‘Sight Reduction Tables for Air Navigators? Are they available cost-free anywhere, or have I missed them on your site?
You can get Pub. No. 249 at http://www.TheNauticalAlmanac.com
Here’s a direct link- https://www.thenauticalalmanac.com/Pub. No. 249.html
Hi Enno, brilliant program and so kind of you to give us the code. Feedback:
I think you omitted the file “Ra.jpg” from the master zip.
In suntables.py you have some typos…
– “hight” should be “height” (two occurances)
– “earths atmosphere” should be “Earth’s atmosphere”
– “For other than standard conditions” needs a comma after it.
Do you happen to know what calculation method is used, e.g. VSOP87, VSOP2000, VSOP2002, VSOP2010, VSOP2013?
Kind Regards and safe sailing, Andrew
I stumbled into your program while researching how I could program something like it.
PyEphem is deprecated, the author’s replacement being Skyfield.
Python 2.7 will no longer have support after January 1, 2020.
Although your program still works well (thank you), do you have any plans to update it to Python3 and Skyfield?
I have enhanced the tables in Pyalmanac and I would be very happy to share this new version with you. It took a lot of ‘fiddling’ – I can hardly call it ‘programming’, LOL.
Please contact me by email – and I will post you samples of my new tables (I made some use of ‘booktabs’). I have not removed your original formatting – that is still available as an option. Looking forward to hearing from you!
P.S. Your pictures from “Ostern 2019” were simply fabulous!
Ahoy there my sailor friend,
Thanks so much for correcting this lack in sharing.
On our last crossing from Tuvalu to Fiji, I had 3 seperate electronic devices malfunction, so its great to be able to rely on charts and the celestial hemisphere.
Nice work, It would be better if you reduction of orbit on daily basis
I am just in the process of learning how to use my sextant, and your tables will be highly valued in that endeavour. Many thanks for your generosity.
Thank you so much for sharing. Great stuff!!!
VERY neat piece of work, thank you, and fair winds for 2022!