Die Pruefung in 1.7.0 lief gegen selbst geschriebene Referenzen desselben
Algorithmus — ein gemeinsamer Denkfehler faellt so nicht auf. Jetzt gegen die
Astronomical Applications API des U.S. Naval Observatory (JPL-Ephemeriden,
gleiche Grundlage wie der Astronomical Almanac), und dabei zwei Fehler
gefunden:
- Hoehenkorrektur -2.076*sqrt(547)/60 entfernt. Sie gilt fuer den Blick von
einer Erhebung auf einen fernen Meereshorizont; die Station liegt in
ringsum aehnlich hohem Gelaende. Sie hat die Zeiten um 5-6 min verschoben,
weg von Almanach und USNO. Rest-Abweichung jetzt <= 45 s ueber 365 Tage.
- getMoonPhase() leitet die Zyklusposition aus der ekliptikalen Laengen-
differenz Mond-Sonne ab statt aus dem Phasenwinkel. Das ist die Definition
von Almanach und USNO; der Phasenwinkel laeuft davon ab, sobald der Mond
weit vom Knoten steht. Neu-/Vollmond lagen dadurch bis zu 3,8 h daneben,
jetzt <= 28 min. Die Viertel waren nie betroffen.
Belegt durch astro.test.js gegen ein eingechecktes Fixture (365 Tage plus 50
Phasenereignisse 2026). Der Test geht nicht ins Netz; neu erzeugen laesst er
sich mit scripts/fetch-usno-reference.mjs. Testrunner ist node:test, keine
neue Abhaengigkeit.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Die Header-Zeile zeigte bisher feste Platzhalter ("06:45", "18:30",
"abnehmend 50%"). Jetzt werden die Werte tatsaechlich gerechnet, ohne
neue Abhaengigkeit:
- utils/astro.js: getSunTimes() nach dem NOAA-Sonnenstandsalgorithmus
inkl. Hoehenkorrektur, getMoonPhase() nach gekuerzten Meeus-Reihen.
- Standort steht als Konstante STATION in App.jsx und speist sowohl
Anzeige als auch Berechnung; Koordinaten auf die echten Stationswerte
korrigiert (48° 52′ 27″ N, 9° 35′ 46″ E, 547 m NN).
Geprueft gegen unabhaengige Referenzimplementierungen: Sonnenzeiten
<= 50 s Abweichung gegen den vollstaendigen NOAA-Algorithmus, Neu- und
Vollmondzeitpunkte <= 39 min gegen Meeus Kap. 49.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
24h: Mitternacht als DD.MM (blau), sonst HH:MM per tickPositioner.
7d: nur bei 0-Uhr beschriftet, waagerecht. 30d: alle 5 Tage.
365d: nur Monatsnummer (MM), monatliche Ticks.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ANLEITUNG.html erstellt (Bedienungsanleitung als HTML-Seite)
- Anleitung-Button im Dashboard-Footer ergänzt
- Anleitung öffnet sich als Modal-Popup mit eigenem Header
- Version 1.4.1 → 1.5.0