Astro-MoonPhase
view release on metacpan or search on metacpan
MoonPhase.pm view on Meta::CPAN
0 New Moon
1 First quarter
2 Full Moon
3 Last quarter
The remaining values in C<@times> indicate subsequent phases of the
moon (in ascending order by time). If there are no phases of the moon
between C<$start> and C<$stop>, C<phaselist> returns the empty list.
Example:
@name = ("New Moon", "First quarter", "Full moon", "Last quarter");
($phase, @times) = phaselist($start, $stop);
while (@times) {
printf "%-14s= %s\n", $name[$phase], scalar localtime shift @times;
$phase = ($phase + 1) % 4;
}
could produce the same output as the C<phasehunt> example above (given
the appropriate start & stop times).
=head1 ABOUT THE ALGORITHMS
The algorithms used in this program to calculate the positions of Sun and
Moon as seen from the Earth are given in the book I<Practical Astronomy
With Your Calculator> by B<Peter Duffett-Smith, Second Edition,
Cambridge University Press, 1981>. Ignore the word "Calculator" in the
title; this is an essential reference if you're interested in
developing software which calculates planetary positions, orbits,
eclipses, and the like. If you're interested in pursuing such
programming, you should also obtain:
I<Astronomical Formulae for Calculators> by B<Jean Meeus, Third Edition,
Willmann-Bell, 1985>. A must-have.
I<Planetary Programs and Tables from -4000 to +2800> by B<Pierre
Bretagnon and Jean-Louis Simon, Willmann-Bell, 1986>. If you want the
utmost (outside of JPL) accuracy for the planets, it's here.
I<Celestial BASIC> by B<Eric Burgess, Revised Edition, Sybex, 1985>. Very
cookbook oriented, and many of the algorithms are hard to dig out of
the turgid BASIC code, but you'll probably want it anyway.
Many of these references can be obtained from Willmann-Bell, P.O. Box
35025, Richmond, VA 23235, USA. Phone: (804) 320-7016. In addition
to their own publications, they stock most of the standard references
for mathematical and positional astronomy.
=head1 LICENCE
This program is in the public domain: "Do what thou wilt shall be the
whole of the law".
=head1 AUTHORS
The moontool.c Release 2.0:
A Moon for the Sun
Designed and implemented by John Walker in December 1987,
revised and updated in February of 1988.
Initial Perl transcription:
Raino Pikkarainen, 1998
raino.pikkarainen@saunalahti.fi
The moontool.c Release 2.4:
Major enhancements by Ron Hitchens, 1989
Revisions:
Brett Hamilton http://simple.be/
Bug fix, 2003
Second transcription and bugfixes, 2004
Christopher J. Madsen http://www.cjmweb.net/
Added phaselist function, March 2007
( run in 0.521 second using v1.01-cache-2.11-cpan-39bf76dae61 )