Skip to content

Moon

The satkit.moon module provides functions for computing the moon's position, illumination fraction, and phase.

moon

Astrodynamic calculations related to the moon

moonphase

Enum representing moon phases

NewMoon class-attribute

New Moon (0 - 22.5)

WaxingCrescent class-attribute

Waxing Crescent (22.5 - 67.5)

FirstQuarter class-attribute

First Quarter (67.5 - 112.5)

WaxingGibbous class-attribute

Waxing Gibbous (112.5 - 157.5)

FullMoon class-attribute

Full Moon (157.5 - 202.5)

WaningGibbous class-attribute

Waning Gibbous (202.5 - 247.5)

LastQuarter class-attribute

Last Quarter (247.5 - 292.5)

WaningCrescent class-attribute

Waning Crescent (292.5 - 337.5)

illumination(time)

Fractional illumination of moon

Parameters:

Name Type Description Default
time time | ArrayLike | list[time]

time object, list, or numpy array for which to compute illumination

required

Returns:

Type Description
NDArray[float64] | float

float | npt.NDArray[np.float64]: float or numpy array of floats representing fractional illumination of moon at given time(s).

Example
t = satkit.time(2024, 1, 1)
illum = satkit.moon.illumination(t)
print(f"Moon illumination: {illum*100:.1f}%")

phase(time)

Phase of moon in radians

Parameters:

Name Type Description Default
time time | ArrayLike | list[time]

time object, list, or numpy array for which to compute phase

required

Returns:

Type Description
NDArray[float64] | float

float | npt.NDArray[np.float64]: float or numpy array of floats representing moon phase in radians at given time(s).

phase_name(time)

Phase name of moon

Parameters:

Name Type Description Default
time time | ArrayLike | list[time]

time object, list, or numpy array for which to compute phase name

required

Returns:

Type Description
moonphase | list[moonphase]

moonphase | list[moonphase]: moonphase or list of moonphase representing moon phase name at given time(s).

Example
t = satkit.time(2024, 1, 1)
p = satkit.moon.phase_name(t)
print(p)
# e.g., moonphase.WaningGibbous