Method Deck / astronomy

Moon phase from a mean synodic month

Estimates the moon phase name and age in days for a given date using the mean synodic month from a cited reference new moon.

Published for review. The Founder is checking every card himself; anything he strikes comes down the same hour.

Try it

Inputs

Outputs

Steps

  1. Take a cited reference new moon: 2000-01-06 18:14 UTC (Meeus, Astronomical Algorithms, 2nd ed., chapter 49).
  2. Take the mean synodic month: 29.530588853 days (Meeus, same chapter).
  3. Compute the number of days between the reference new moon and the target date at 00:00 UTC.
  4. Reduce that count modulo the synodic month, wrapping negative results into 0..synodic month, to get the moon's age in days.
  5. Divide the synodic month into 8 named phases at boundaries of 1, 3, 5, 7, 9, 11, 13, and 15 sixteenths of the synodic month, and report the phase whose range contains the age.
  6. Round the reported age to 2 decimal places.
  7. This is a mean-motion approximation, not a full ephemeris; the true phase time can differ from this estimate by up to about half a day because the Moon's actual orbital speed varies.

Constants

Sources

Worked example and test vectors

NameInputsAnswer
worked example{"date":"2000-01-07"}New Moon, age 0.24 days
test vector: nine days after reference{"date":"2000-01-16"}Waxing Gibbous, age 9.24 days

Published card