CelestialCalendar 1.0.0 · unreleased development @ 67a7c4c79a4a4a6aa7e703c9e6f0039ae34bee82
Loading...
Searching...
No Matches
astro::moon_phase::illumination Namespace Reference

Functions

auto phase_angle (const toolbox::SphericalCoordinate &sun_pos, const toolbox::SphericalCoordinate &moon_pos) -> toolbox::AngleDeg
 Compute the Moon's selenocentric phase angle i from two positions, Meeus (48.2)+(48.3).
auto phase_angle (const double jde) -> toolbox::AngleDeg
 Compute the Moon's selenocentric phase angle i at a JDE, Meeus (48.2)+(48.3).
auto position_angle (const astro::coords::EquatorialCoord &sun_eq, const astro::coords::EquatorialCoord &moon_eq) -> toolbox::AngleDeg
 Compute the position angle χ of the Moon's bright limb, Meeus (48.5).
auto position_angle (const double jde) -> toolbox::AngleDeg
 Compute the position angle χ of the Moon's bright limb at a JDE, Meeus (48.5).
auto fraction (const toolbox::AngleDeg &i) -> double
 Compute the illuminated fraction k of the Moon's disk from the phase angle, Meeus (48.1).
auto fraction (const double jde) -> double
 Compute the illuminated fraction k of the Moon's disk at a JDE, Meeus (48.1).

Function Documentation

◆ fraction() [1/2]

auto astro::moon_phase::illumination::fraction ( const double jde) ->double
inlinenodiscard

Compute the illuminated fraction k of the Moon's disk at a JDE, Meeus (48.1).

Parameters
jdeThe Julian Ephemeris Day, on the TT scale.
Returns
k in [0, 1] — 0 at new moon, 1 at full moon.

◆ fraction() [2/2]

auto astro::moon_phase::illumination::fraction ( const toolbox::AngleDeg & i) ->double
inlinenodiscard

Compute the illuminated fraction k of the Moon's disk from the phase angle, Meeus (48.1).

Parameters
iThe selenocentric phase angle.
Returns
k in [0, 1].
See also
Jean Meeus, "Astronomical Algorithms", Second Edition, Chapter 48.

◆ phase_angle() [1/2]

auto astro::moon_phase::illumination::phase_angle ( const double jde) ->toolbox::AngleDeg
inlinenodiscard

Compute the Moon's selenocentric phase angle i at a JDE, Meeus (48.2)+(48.3).

Parameters
jdeThe Julian Ephemeris Day, on the TT scale.
Returns
The phase angle i, in [0°, 180°].

Positions: VSOP87D (Sun) and truncated ELP2000-82B (Moon), both apparent geocentric.

See also
Jean Meeus, "Astronomical Algorithms", Second Edition, Chapter 48.

◆ phase_angle() [2/2]

auto astro::moon_phase::illumination::phase_angle ( const toolbox::SphericalCoordinate & sun_pos,
const toolbox::SphericalCoordinate & moon_pos )->toolbox::AngleDeg
inlinenodiscard

Compute the Moon's selenocentric phase angle i from two positions, Meeus (48.2)+(48.3).

Parameters
sun_posThe Sun's position, in any spherical frame shared with moon_pos (in-library: apparent geocentric ecliptic).
moon_posThe Moon's position, same frame as sun_pos.
Returns
The phase angle i, in [0°, 180°] — 0° at full moon, 180° at new moon.
Note
The spherical law of cosines is frame-agnostic, so equatorial (α, δ) plugs into (λ, β) as-is — the golden test feeds the book's equatorial worked values directly.
See also
Jean Meeus, "Astronomical Algorithms", Second Edition, Chapter 48.

◆ position_angle() [1/2]

auto astro::moon_phase::illumination::position_angle ( const astro::coords::EquatorialCoord & sun_eq,
const astro::coords::EquatorialCoord & moon_eq )->toolbox::AngleDeg
inlinenodiscard

Compute the position angle χ of the Moon's bright limb, Meeus (48.5).

Parameters
sun_eqThe Sun's apparent geocentric equatorial coordinates (α₀, δ₀).
moon_eqThe Moon's apparent geocentric equatorial coordinates (α, δ).
Returns
χ in [0°, 360°), measured eastward from the north point of the disk.
Note
The formula uses equatorial coordinates; the spherical geometry is identical to (48.2), so the ecliptic-to-equatorial conversion must use the true obliquity for apparent places.
See also
Jean Meeus, "Astronomical Algorithms", Second Edition, Chapter 48.

◆ position_angle() [2/2]

auto astro::moon_phase::illumination::position_angle ( const double jde) ->toolbox::AngleDeg
inlinenodiscard

Compute the position angle χ of the Moon's bright limb at a JDE, Meeus (48.5).

Parameters
jdeThe Julian Ephemeris Day, on the TT scale.
Returns
χ in [0°, 360°), measured eastward from the north point of the disk.

Sun: VSOP87D apparent equatorial; Moon: truncated ELP2000-82B apparent ecliptic, converted to equatorial with the true obliquity.

See also
Jean Meeus, "Astronomical Algorithms", Second Edition, Chapter 48.