Page actions
instrument mechanism / verified-clean
Moonrise/Moonset Estimator mechanism
The inspectable method record for Moonrise/Moonset Estimator, kept separate from implementation and qualification.
Model scope
The estimator concept is scientifically reasonable for a low-precision product, but the specification is not reproducible as written. Define the exact Meeus series and epoch, geocentric/topocentric convention, horizon correction, longitude sign, time zone, date rollover behavior, and no-event behavior before implementation approval.
- The claimed method is broadly appropriate, but no explicit equations, epoch, lunar orbital-element coefficients, or series truncation are supplied, so the implementation cannot be fully verified from the specification alone.
- A standard horizon-crossing calculation should use cos(H0) = [sin(h0) - sin(latitude)sin(declination)] / [cos(latitude)cos(declination)], with h0 including refraction, lunar semidiameter, and horizontal parallax. The specification does not state which horizon correction convention is used.
- For lunar events, h0 is not the solar value -0.833 degrees. Using refraction = 0.5667 degrees, lunar semidiameter = 0.2725 degrees, and horizontal parallax = 0.9507 degrees gives the geocentric altitude threshold h0 = -0.5667 - 0.2725 + 0.9507 = +0.1115 degrees.
- The specification does not state whether the ephemeris is geocentric or topocentric, whether lunar parallax is modeled dynamically, or whether atmospheric refraction is fixed or variable.
- The specification does not define the sidereal-time conversion needed to turn hour angle into time. These vectors assume GMST at 00:00 UTC plus 360.9856473 degrees per UTC day.
- The phrase 'Meeus simplified' is insufficiently precise: Meeus Chapter 47 contains multiple accuracy levels and correction terms. The exact abbreviated series must be identified.
Units and conventions
- Latitude, longitude, right ascension, declination, hour angle, and altitude are in degrees; longitude is positive east.
- Date is an ISO calendar date and all returned times in these vectors are UTC.
- The input date's 00:00 UTC is the ephemeris epoch for the supplied GMST and lunar right ascension/declination values.
- The adopted event altitude is h0 = -refraction - lunar semidiameter + horizontal parallax, with all three angles in degrees.
- The sidereal rotation rate is 360.9856473 degrees per UTC day, or 15.0402353 degrees per hour.
- Right ascension is expressed in degrees rather than hours; if an implementation accepts hours, it must multiply RA by 15 before using the formulas.
Inspectable vector
One of 4 source-bound review vectors:
{
"inputs": {
"lat_deg": 0,
"lon_deg": 0,
"date": "2025-01-01",
"gmst0_deg": 0,
"lunar_ra_deg": 180.12986,
"lunar_dec_deg": 0
},
"expected_outputs": {
"moonrise_utc": "06:00:00",
"moonset_utc": "17:57:11"
},
"reference_data": {
"refraction_deg": 0.5667,
"lunar_semidiameter_deg": 0.2725,
"lunar_horizontal_parallax_deg": 0.9507,
"sidereal_rate_deg_per_utc_day": 360.9856473,
"source_convention": "Refraction, lunar semidiameter, and lunar horizontal parallax: widely tabulated standard values; sidereal rate: IAU/Meeus standard convention"
},
"working": "1. Horizon threshold: h0 = -0.5667 - 0.2725 + 0.9507 = +0.1115 degrees. 2. At latitude 0 degrees and declination 0 degrees: cos(H0) = sin(0.1115)/(cos(0)cos(0)) = 0.00194604, so H0 = arccos(0.00194604) = 89.88845 degrees. 3. Sidereal rate per hour = 360.9856473/24 = 15.0402353 degrees/hour. 4. Rise hour angle is -H0. UTC rise = [-89.88845 - 0 - 0 + 180.12986]/15.0402353 = 90.24141/15.0402353 = 6.00000 hours = 06:00:00 UTC. 5. Set hour angle is +H0. UTC set = [89.88845 - 0 - 0 + 180.12986]/15.0402353 = 270.01831/15.0402353 = 17.95306 hours. 0.95306 x 60 = 57.1836 minutes, so moonset = 17:57:11 UTC. This vector uses the exact widely tabulated entries 0.9507 degrees horizontal parallax and 0.2725 degrees lunar semidiameter."
}Failure boundary
BREAK_CLAIMED · SELF_FLAGGED
The estimator reaches an undefined division at latitude 90 degrees and must reject that input. Its output is also convention-sensitive because the specification does not state whether longitude is east-positive or west-positive; the same numeric longitude 30 produces substantially different times.
Other records
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.jsonevidence-tranche7/tranche7-results.jsonBOUNDARY_HAZARD_CATALOG.json