A new utility by Jeff Conrad has been posted:
Sun/Moon Calculator.
Here the description by Jeff:

I have updated the Sun calculator so that it now gives rise and set
times and positions for the Moon as well as the Sun.

With the default settings, the calculator
will provide the basic information that photographers usually need:
<li> A table of Sun and Moon rise and set times and azimuths
<li> A table of Sun and Moon positions throughout the day

I've also added a few other features:
<li> The ability to specify nonzero altitudes for rise and set--handy
if the visible horizon isn't level. For example, Mt. Whitney has an
altitude of approximately 10 degrees from most spots near Movie Rd;
typically, the Moon hits Mt. Whitney about an hour before and 10
degrees to the south of "official" moonset.

<li> The ability to search for dates on which Sun or Moon rise or set
meet certain criteria, such as rising or setting within a certain
azimuth range, or the Moon rising or setting with a certain phase, or
within a certain time of Sun rise or set. These can be combined with
nonzero rise and set altitudes; for example, you could find the dates
on which the Moon sets near Mt. Whitney with alpenglow on the
peak. You also easily could show that Dennis diCicco determined the
correct date (1 November 1941) for Moonrise, Hernandez, New Mexico.
At first glance, the Rise/Set Options may seem a bit complicated,
especially when reading the Help section, but they actually are fairly
simple to use after a few tries.

Other Changes

The location database has been expanded so that it now covers 380+
locations, including most national parks in the United States and

The handling of daylight saving time/summer time is more robust,
although the start and end times still are tied to U.S. rules (in the
southern hemisphere, these times are simply reversed). I've added most
of the common fractional-hour time zones.


Performance is fine when calculating rise/set times over the course of
a few weeks, but the program is slow when doing searches extending
over several years--such is the consequence of implementing
astronomical calculations in a script. A year's worth of rise/set
times takes just over 7 seconds on my 1.4 GHz Pentium 4. A 10-year
search of dates takes just under 60 seconds, and prompts a "slow
script" warning from Internet Explorer and Firefox unless the default
warning triggers have been changed. Nonetheless, it's faster (as well
as much easier) than grabbing the data from the USNO site and
rearranging and analyzing it.

Please feel free to leave any questions and comments here.