This page contains simplified approximate formulas for calculating the optical libration in longitude and latitude, the selenographic coordinates of the sub-solar point and the position axes of the Moon's polar axis and bright limb. The results of calculations based on these formulas should agree to within 0.2 degree with more accurate ephemerides. Corrections for your position on the Earth (topocentric corrections) are included for the libration figures, and you can download a Microsoft Excel spreadsheet implementation of the formulas, as well as a C program that will calculate a monthly lunar ephemeris.
Although the Moon 'turns the same face to the Earth', the lunar disc appears to 'nod' from side to side and up and down during a lunar month, and it is possible to observe about 59% of the Moon's surface over a period of time, although we can only see 50% at any one time. Imagine the hemisphere of the Moon that we can see at any one time as having a 'pole'. The lunar longitude and latitude of this 'pole' tell us the point on the Moon that is directly opposite us at the time, and from this, we can work out which parts of the Moon are close to the limb and which are further away.
The Moon has one hemisphere illuminated by the Sun at any given instant. As the Moon orbits the Earth, the part of that illuminated hemisphere we can see changes. We refer to the part of the Moon's disc visible to us as the bright limb. The 'sub-solar point' is a point on the Moon where the Sun is overhead, ie the 'pole' of the illuminated hemisphere. By working out the selenographic coordinates of this point, we can calculate the appearance of the bright limb of the moon for any given time.
The Moon 'turns the same face to the Earth', so that its rotation about its axis is equal in period to the time for one orbit around the Earth. The Moon has an elliptical orbit about the Earth, so the Moon speeds up near perigee and slows down near apogee in accordance with Kepler's laws. The Moon's speed of rotation about its axis remains essentially constant from month to month as a consequence of the conservation of angular momentum. The Moon's orbit is tilted to the ecliptic plane and to the Earth's equator.
I have devised a simple MS Excel 97 spreadsheet that can calculate the colongitude of the Sun and the librations for any date and (universal) time. A short series is used to calculate the (geocentric) RA and DEC of the Moon and Sun, and then the formulas above are applied to calculate the various quantities. Topocentric corrections are applied to the optical libration figures.
A feature of the spreadsheet is a list of Sun altitudes for
prominent craters. Craters look dramatic when the Sun altitude is
between 0 and about 15 degrees (just after lunar sunrise and
before lunar sunset). A better implementation of this feature is
available as a
DOS program from the Lunar Section of
the BAA. See the BAA
lunar programs page and look for a program called
SUNALT. This program will prompt for a given (UT)
date and hour, and then print a text file listing the lunar
features with a Sun altitude between 0 and 15 degrees.
The spreadsheet does not have any macros and will load and function without modification in Sun StarOffice version 5.2 (tested using the Windows 95/98 version).
This was my first attempt at a physical ephemeris of the Moon,
and the moon position and sun altitude code was extracted from a
BASIC program by George Rosenberg that I found on an
This exercise in grungy Fortran like C will calculate a monthly ephemeris for the Moon, with all quantities being based on the transit time of the Moon on each day. The program requires a time zone as well as your longitude and latitude (to within an arcminute, in fact a degree either way hardly makes any difference).
There is no pretention to any sophistication in the coding here at all, this thing is all in one file and should compile on just about any C compiler that has heard of ANSI. I have also provided a compiled program that should run under any Windows based computer. Programs compiled with DJGPP need to have some kind of DMPI(?) server, and so this version might not run under 'pure' DOS.
The program uses a more accurate Moon position algorithm and calculates topocentric positions for the moon. The 'differential correction' for topocentric position is not needed. The program uses command line arguments, the command line
>tmoon.exe 200012 -6 -8738 4152 > dec.txt
will produce an ephemeris for December 2000 for Chicago (time
zone 6 hours behind UT, 87deg 38min West, 41deg 52min North). The
> dec.txt bit redirects the output of the program to
a text file. Not all operating systems (or compilers) support
this feature. See the source code for more details.
Oliver Montenbruck and Thomas Pfleger,
Astronomy on the Personal Computer
1994, 3rd edition
BAA lunar programs (DOS)
Moon Calc (DOS)
TYPE Geocentric lunar ephemeris
JPL Horizons ephemeris generator
[ Root ]