There are several popular science books available about our solar system, astronomy, and even cosmology. Most of them are descriptive. Obviously, whatever we know about astronomy and our solar system depends upon observations, and these have clearly increased drastically since we have satellites and other probes that do the observations from space. That requires however a thorough knowledge of how celestial objects move with respect to each other, while eventually, all the observations are collected on Earth at some particular time and place. It is not difficult to describe with a formula an elliptic trajectory of a planet in a two-body system, but to know at what time it will show above the horizon for an observer on Earth at some particular place and date, requires a careful transformation between different coordinate systems. If you are an amateur astronomer, and you are interested in doing these computations for yourself, this is the book that will teach you how to do that. It is not high precision rocket science, but you will get reasonably accurate results using the computational methods described in this book. Not that it requires highly advanced mathematics. The subtitle "A gentle introduction to computational astronomy" is spot on. All you need is some analytic geometry and trigonometry. The rest is conversion of units and transformations between coordinate systems.

First there is unit conversion, for example AU (astronomical unit which is the average distance Earth-Sun) versus kilometres and miles, but a time is even more disturbing. Conversion of a fractional number of hours into hours, minutes and seconds (HMS) is relatively simple but 24 hours also correspond to a rotation of 360 degrees, so time can also be measured in degrees, arcminutes, and arcseconds, (DMS) and degrees can be expressed as radians. Moreover the time of the day depends on the longitude position (defining the local mean time (LMT)) of the observer and there is daylight saving time (DST) for some countries. The sidereal time refers to our position with respect to the stars while the Earth rotates, which is of course important in astronomical calculations. On a larger time scale there is a calender problem defining the year (Julian vs. Gregorian calendar).

Next problem is the choice of a coordinate system. To define a location on Earth we are used to spherical coordinates with the origin at the centre, and the z-axis though the North Pole, (in the current epoch defined as the direction towards Polaris) and choosing a main meridian (Greenwich). The Earth's equator lies in the ecliptic plane. This system is similar to the celestial sphere (with its own North Pole —which is close to but different from Polaris because of precession— and its own meridian). For trajectories, we know since Kepler that we need elliptic coordinates depending on the anomaly of the ellipse. A planet circles the Sun on an elliptic trajectory increasing speed as it approaches the Sun in its perihelion and it is slowest when it is farthest away in the aphelion. Then one has to realize that the orbital plane of the planet (or any other celestial object) need not be the same as our ecliptic plane The galactic coordinate system refers to the larger scale where the equator plane corresponds to the average plane of our galaxy (the Milky Way). Minor corrections are required for parallax (like observing the Moon from different directions on Earth) and precession (the rotation axis of the Earth circling the celestial North Pole). All this requires careful transformations between the different space-time coordinates.

Equipped with all these formulas and computer algorithms, one can finally start to put them to good use to predict the time and the position of a phenomenon we want to observe. It should be possible to find the position of the Sun, Moon, stars and planets at a certain day and time for a particular place on Earth. For example will Venus rise above my horizon today, and if it does where and when will I see it? In fact the next chapters discuss star rising and star settings, and for our solar system, there is a more descriptive part discussing the Sun, the Moon, and the planets and other objects in our solar system. Man made satellites are like all other celestial objects, but differ in the sense that they are closer and relatively small with respect to Earth.

So one can compute for example your own time for Sunrise and Sunset, solstices and equinoxes, and the angular diameter of the Sun. For the Moon there are similarly formulas to define instances of Moonrise and Moonset, to compute the phases of the Moon, its distance from the Earth, and moments of solar eclipses. Similar computations can be done for all the planets of our solar system. A distinction has to be made for the ones closer to the Sun (interior planets) and those beyond the Earth (exterior planets). Although the basic laws are the same, our satellites need a special discussion. Because they are closer to us, a higher precision is needed, it makes really a difference whether the origin is at the center of the Earth or at the observer's position, their orbit changes much faster, and they are subject to gravity and therefore are regularly repositioned.

All this illustrates that astronomical calculations are not at all trivial. Fortunately the author has made the Java, Python and Visual Basic code available via github at celestialcalculations.github.io. There is also a chapter with references to books, websites, almanacs and star catalogs with some explanation on how to use them. The extensive glossary with short descriptions of terms and the detailed index is very useful if one is lost in the terminology.

It is amazing to realize how complicate computations are for relatively simple observations like for example the daily Sunrise and Sunset. Fortunately the computer code makes this quite easy. One can only be in awe for the calendars and almanacs produced by ancient civilisations without any of our modern insights or equipment. Now this book brings this within the reach of anyone who can deal with simple computer programs easily downloadable and ready to be installed and executed. This book is quite an achievement bringing all this within the reach of a general public. Not only the clear explanation of the technical mathematical background with formulas and graphs of the coordinate systems, but also for the very informative descriptions, illustrated with pictures, of the astronomical objects and phenomena.