Přeskočit na obsah
AstroWay/api v2.102.11 · cs
všechny systémy jsou v pořádku

Přesnost výpočtů

AstroWay API používá Swiss Ephemeris (oficiální C-kód od Astrodienst, tvůrců astro.com) – stejný engine, na kterém profesionální astrologové posledních 30+ let pracují v Solar Fire ($495), Kepler ($995), Astro Gold ($29.99/měsíc) a Janus. My jsme ho sestavili do WebAssembly a vystavili přes REST API bez prostřednického navyšování cen. Každý z výchozích výpočetních endpointů je pokryt regresními snapshot-testy; přesnost engineu je ověřena triangulací ze tří nezávislých zdrojů + proti NASA 5-Millennium Eclipse Catalog:

  • Polohy planet: < 0.1 úhlová vteřina vs oficiálního swetest CGI Astrodienst
  • Kuspidy domů Placidus: 0.000" přesná shoda
  • Zatmění: < 1 minuta vs NASA Eclipse Catalog
  • Astro-geografické linie: < 1.5 km na rovníku vs swetest
  • Východ/západ Slunce: < 10 sekund vs timeanddate.com
  • Měsíční VOC, ingressy, konjunkce planet: přesnost na zlomek vteřiny
KomponentaHodnota
KnihovnaSwiss Ephemeris C code (aloistr/swisseph)
Verzeupstream Astrodienst C code
Bindingsswisseph-wasm (WebAssembly v Node.js)
EfemeridyDE431 JPL efemeridy (přes .se1 soubory)
FallbackMoshier analytický (pro data mimo 1800–2399)
Sdílení kóduSdílený @/core s app.astroway.info – jeden engine, dva transporty

Přesnost je ověřována pomocí triangulace – porovnáním se třemi nezávislými zdroji:

Oficiální referenční implementace Swiss Ephemeris od samotných Astrodienst – kód, který vytvořil Astro.com a který obsluhuje miliony astrologů po celém světě. Nejautoritativnější veřejný zdroj. Náš engine je identický (0.00–0.07 úhlové vteřiny driftu).

Nezávislá Python knihovna používající pyswisseph bindings místo našeho WASM. Ověřuje, že náš WASM-vrstva nezkresluje data.

Vzdálené Swiss Ephemeris API (siderický Lahiri). Systémový drift 8–17 úhlových vteřin souvisí s různými verzemi vzorce Lahiri ayanamsa, nikoliv s přesností engineu.

Kartaproti swetest (Astrodienst)proti Kerykeion (Python)proti Prokerala API
Monroe 19260.00”0.19”16.95” (systémový)
Diana 19610.00”0.69”8.18” (systémový)
Einstein 18790.07”LMT-artifakt Kerykeion14.96” (systémový)

Regression sada na úrovni endpointů

Sekce “Regression sada na úrovni endpointů”

Každý z výchozích výpočetních endpointů je pokryt zmrazenými snapshot-testy na 3 referenčních kartách (Monroe / Diana / Einstein) = 818 snapshotů.

Snapshot-suite zachycuje:

  • Chyby mapování vstupních dat – špatné id planety, UT, systém domů
  • Post-processing – zaokrouhlování, převody jednotek, ztráta znaménka
  • Rozdíly v defaults – mean vs true node, geocentrický vs topocentrický
  • Schema drift – validace propustila špatný formát
  • Zastaralé nasazení – prod dist neodpovídá kódu

Tolerance: 5e-5° (≈0.18 úhlové vteřiny) jako výchozí pro všechna číselná pole.

Polohy planet (tropický, proti swetest)

Sekce “Polohy planet (tropický, proti swetest)”
KartaDatumMaximální drift
Marilyn Monroe1926-06-010.00”
Princess Diana1961-07-010.00”
Albert Einstein1879-03-140.07”

Kuspidy domů Placidus (proti swetest)

Sekce “Kuspidy domů Placidus (proti swetest)”
Kartadrift ASCdrift MCMaximální drift kuspidu
Monroe0.000”0.000”0.000”
Diana0.000”0.000”0.000”

Zatmění (proti NASA 5-Millennium Catalog)

Sekce “Zatmění (proti NASA 5-Millennium Catalog)”
UdálostMaximální NASANáš maximálníDrift
2025-03-14 Lunární úplné06:58 UT06:58 UT0.8 min
2025-03-29 Částečné sluneční10:47 UT10:47 UT0.5 min
2025-09-07 Lunární úplné18:11 UT18:11 UT0.8 min
2025-09-21 Částečné sluneční19:41 UT19:42 UT1.0 min

Astro-kartografie (proti vzorci RA ze swetest)

Sekce “Astro-kartografie (proti vzorci RA ze swetest)”

Všechny linie MC/IC/ASC/DSC používají správný vzorec longitude = RA − GMST (standard Kenneth Bowser). Drift od etalonu: < 1.5 km na rovníku pro všechny planety.

Východ / západ Slunce (proti timeanddate.com)

Sekce “Východ / západ Slunce (proti timeanddate.com)”
LokalitaDatumParametrDrift
Londýn2026-04-15Východ Slunce0.6 s
Londýn2026-04-15Západ Slunce9 s

Polární lokality (|zem. šířka| > 66.5°) automaticky vrací polarState + varování, že běžné planetary hours nejsou definovány.

AstroWay používá proměnlivé orby per-planet (pravidlo MIN dvou planet), jako v ZET9 a astro.com. Orby jako výchozí (pro nativní kartu):

AspektSlunceMěsícVnitřníJupiterVnější
Konjunkce12°10°
Sextil6.5°
Kvadrát10°
Trinus12°
Opozice12°10°

Minor aspekty (36°, 40°, 45°, 72°, 108°, 135°, 144°) jsou výchozí vypnuté. Zapínají se explicitně přes ALL_ASPECTS.

Pro |zem. šířka| > 66.5° systémy Placidus / Koch / Regiomontanus nejsou matematicky definovány. V takových případech Swiss Ephemeris automaticky vrací Porphyry a náš API přidává varování:

{
"system": "P",
"warning": "Systém Placidus není definován pro lat=68.96° (> 66.5°). Swiss Ephemeris použil Porphyry..."
}

Kontinuální ověřování

Sekce “Kontinuální ověřování”

Regression je ověřována na každý PR přes CI:

  • api-calc/tests/endpoints/ – 818 snapshotů proti referenčním kartám (Monroe / Diana / Einstein) + synastrie / kompozit / Davison
  • .github/workflows/api-accuracy.yml – automatický běh na PR
  • Triangulace proti swetest CGI + Kerykeion – každý týden
  • Monitorování upstream Swiss Ephemeris přes Dependabot
  • Data mimo rozsah (před 1800 a po 2399): používá se Moshier analytický, přesnost ~0.1” (oproti < 0.01” pro SWIEPH s DE431 soubory)
  • True Lilith (id=13) vs Mean Lilith (id=12): rozdíl až 12° – jako výchozí Mean Lilith (stabilní chování), True Lilith je dostupný přes planetIds: [13]
  • Topocentrický vs geocentrický: jako výchozí geocentrický

Na dotazy ohledně přesnosti piš na support@astroway.info s daty karty a očekávaným etalonem (astro.com nebo jiné autoritativní zdroje).

Užitečné?
Запропонувати правку

Aktualizováno: