MoonPhase
gives moon phase fraction of illumination for the current date.
MoonPhase[datespec]
gives moon phase fraction of illumination for the specified date.
MoonPhase[property]
gives the property of the moon phase for the current date.
MoonPhase[datespec,property]
gives the property of the moon phase for the specified date.
Details
- The phase of the Moon, also known as the lunar phase, describes the illumination of the lunar surface by the Sun as seen from Earth.
- MoonPhase[] makes use of $TimeZone to determine your time zone.
- datespec can be a DateObject expression, a TimeObject expression or a date string.
- datespec is assumed to be in $TimeZone, unless it is a DateObject or TimeObject expression with an explicit TimeZone option value.
- If datespec is a list of dates, then the results will be given as EventSeries or TimeSeries objects.
- datespec can be specified as {start,end,increment} for compatibility with DateRange specifications.
- MoonPhase["Fraction"] is equivalent to MoonPhase[].
- MoonPhase can accept the following values for property:
-
"Fraction" or "IlluminationFraction" fraction of illumination, from 0 to 1 "SignedFraction" or "SignedIlluminationFraction" signed fraction of illumination, from -1 to 1 "PhaseAngle" lunation angle, from 0 to 2π "PhaseAngleFraction" fraction of lunation angle, from 0 to 1 "Name" name of the moon phase "Icon" icon representing the moon phase - MoonPhase[…,Method"method"] specifies how moon phases are defined. Fraction of illumination, as observed from the center of the Earth, is used by default.
- Possible settings for the Method option include:
-
"Illumination" phase defined by fraction of illumination of the Moon "EclipticLongitude" phase defined by Moon‐Sun ecliptic longitude difference
Examples
open allclose allBasic Examples (4)
Scope (7)
Dates can be specified as a DateObject:
Generalizations & Extensions (1)
IconData can accept the signed fraction of the moon phase as its second argument:
Options (1)
Method (1)
By default, MoonPhase uses illumination of the Moon by the Sun to compute properties:
Alternatively, use a method based on the ecliptic longitude difference between Moon and Sun:
Possible Issues (1)
The names of moon phases are based on the illumination fraction value. On a given day, the name of the moon phase may change, depending on what time it is. For example, a full moon does not last a full day, so even if a full moon occurs on that day, you may have to change the time in order to get the phase you might expect:
Text
Wolfram Research (2014), MoonPhase, Wolfram Language function, https://reference.wolfram.com/language/ref/MoonPhase.html (updated 2025).
CMS
Wolfram Language. 2014. "MoonPhase." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/MoonPhase.html.
APA
Wolfram Language. (2014). MoonPhase. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MoonPhase.html