İçeriğe geç
AstroWay/api v2.102.11 · tr
tüm sistemler normal

Hesaplama doğruluğu

AstroWay API kullanıyor Swiss Ephemeris (Astrodienst’in resmi C kodu, astro.com’un yaratıcıları), yani profesyonel astrologların 30+ yıldır çalıştığı Solar Fire ($495), Kepler ($995), Astro Gold ($29.99/ay) ve Janus için kullanılan aynı motor. Bunu WebAssembly’e derledik ve aracısız bir REST API katmanıyla sunduk. Her temel hesaplama endpointi regression snapshot testleriyle kapsanmıştır; motor doğruluğu üç bağımsız kaynaktan triangülasyon ve NASA 5-Millennium Eclipse Catalog karşılaştırmasıyla doğrulanmıştır:

  • Gezegen pozisyonları: < 0.1 yay saniyesi resmi Astrodienst swetest CGI karşısında
  • Placidus ev kuspitleri: 0.000" tam eşleşme
  • Tutulmalar: < 1 dakika NASA Eclipse Catalog karşısında
  • ACG hatları: Ekvatorda < 1.5 km swetest karşısında
  • Gün doğumu/batımı: < 10 saniye timeanddate.com karşısında
  • Ay VOC, girişler, gezegen kavuşumları: saniyenin kesirlerine kadar hassasiyet
BileşenDeğer
KütüphaneSwiss Ephemeris C kodu (aloistr/swisseph)
Sürümupstream Astrodienst C kodu
Bağlantılarswisseph-wasm (Node.js için WebAssembly)
EfemerisDE431 JPL efemeris (.se1 dosyaları üzerinden)
YedekMoshier analitik (1800-2399 dışındaki tarihler için)
Code sharingShared @/core app.astroway.info ile — tek motor, iki taşıyıcı

Doğruluk üçgenleme yoluyla doğrulanır — üç bağımsız kaynağa karşı karşılaştırma:

Astrodienst’in kendisinin yarattığı Swiss Ephemeris’in resmi referans uygulaması — Astro.com’u oluşturan komutlar ve dünya çapındaki milyonlarca astrologu destekliyor. En yetkili kamu kaynağı. Motorumuz tamamen aynı (0.00–0.07 yay saniyesi sapma).

Bağımsız Python kütüphanesi, bizim WASM’imiz yerine pyswisseph bağlantıları kullanıyor. WASM katmanımızın verileri bozmadığını doğruluyor.

Uzak Swiss Ephemeris API’si (sidereal Lahiri). 8–17 yay saniyesi sistematik sapma, farklı Lahiri ayanamsa formülü sürümleriyle ilgili (motor doğruluğuyla ilgili değil).

Haritaswetest (Astrodienst) karşısındaKerykeion (Python) karşısındaProkerala API karşısında
Monroe 19260.00”0.19”16.95” (sistematik)
Diana 19610.00”0.69”8.18” (sistematik)
Einstein 18790.07”Kerykeion LMT artifact14.96” (sistematik)

Temel hesaplama endpointlerinin her biri 3 referans haritası (Monroe / Diana / Einstein) üzerinde dondurulmuş snapshot testleriyle kapsanmıştır — 818 snapshot.

Snapshot seti yakalar:

  • Girdi verilerinin haritalama hataları — yanlış gezegen id’si, UT, ev sistemi
  • Son işlem — yuvarlama, birim dönüşümü, işaret kaybı
  • Varsayılan farklılıkları — mean vs true node, jeosentrik vs topocentrik
  • Schema drift — doğrulama yanlış bir formu kaçırdı
  • Eski dağıtım — prod dist kodla uyumlu değil

Tolerans: Tüm sayısal alanlar için varsayılan olarak 5e-5° (≈0.18 yay saniyesi).

Gezegen Pozisyonları (tropik, swetest karşısında)

Section titled “Gezegen Pozisyonları (tropik, swetest karşısında)”
HaritaTarihMaksimum sapma
Marilyn Monroe1926-06-010.00”
Princess Diana1961-07-010.00”
Albert Einstein1879-03-140.07”

Placidus Ev Kuspileri (swetest karşısında)

Section titled “Placidus Ev Kuspileri (swetest karşısında)”
Haritadrift ASCdrift MCMaksimum kuspit sapması
Monroe0.000”0.000”0.000”
Diana0.000”0.000”0.000”

Tutulmalar (NASA 5-Millennium Catalog karşısında)

Section titled “Tutulmalar (NASA 5-Millennium Catalog karşısında)”
OlayNASA maksimumuBizim maksimumSapma
2025-03-14 Ay Tutulması06:58 UT06:58 UT0.8 dk
2025-03-29 Güneş Tutulması10:47 UT10:47 UT0.5 dk
2025-09-07 Ay Tutulması18:11 UT18:11 UT0.8 dk
2025-09-21 Güneş Tutulması19:41 UT19:42 UT1.0 dk

Astrokartografi (swetest RA formülü karşısında)

Section titled “Astrokartografi (swetest RA formülü karşısında)”

Tüm MC/IC/ASC/DSC hatları doğru longitude = RA − GMST formülünü kullanır (Kenneth Bowser standardı). Sapma: tüm gezegenler için ekvatorda < 1.5 km.

Güneş Doğuşu / Batışı (timeanddate.com karşısında)

Section titled “Güneş Doğuşu / Batışı (timeanddate.com karşısında)”
LokasyonTarihParametreSapma
Londra2026-04-15Gün doğumu0.6 sn
Londra2026-04-15Gün batımı9 sn

Kutup bölgeleri (|enlem| > 66.5°) otomatik olarak polarState + normal gezegensel saatlerin tanımlanmadığına dair uyarı döndürür.

AstroWay değişken orb’ları kullanır (iki gezegenin MIN kuralı), tıpkı ZET9 ve astro.com’da olduğu gibi. Varsayılan orb’lar (natal harita için):

AspektGüneşAyİç GezegenlerJüpiterDış Gezegenler
Kavuşum12°10°
Altıgen6.5°
Kare10°
Üçgen12°
Karşıt12°10°

Minör aspektler (36°, 40°, 45°, 72°, 108°, 135°, 144°) varsayılan olarak kapalıdır. ALL_ASPECTS ile açıkça etkinleştirilir.

|enlem| > 66.5° için Placidus / Koch / Regiomontanus sistemleri matematiksel olarak tanımlanmamıştır. Bu durumlarda Swiss Ephemeris otomatik olarak Porphyry döndürür ve API’miz bir uyarı ekler:

{
"system": "P",
"warning": "Placidus sistemi enlem=68.96° (> 66.5°) için tanımlanmamıştır. Swiss Ephemeris Porphyry'yi kullanıyor..."
}

Regression, her PR’de CI üzerinden doğrulanır:

  • api-calc/tests/endpoints/ — 818 snapshot Monroe / Diana / Einstein + senastri / kompozit / Davison referans haritaları karşısında
  • .github/workflows/api-accuracy.yml — PR’da otomatik çalıştırma
  • Haftalık swetest CGI + Kerykeion karşısında üçgenleme
  • Dependabot üzerinden upstream Swiss Ephemeris izleme
  • Tarih aralığı dışı (1800 öncesi ve 2399 sonrası): Moshier analitik kullanılır, hassasiyet ~0.1” (DE431 dosyalarıyla SWIEPH < 0.01” karşısında)
  • True Lilith (id=13) vs Mean Lilith (id=12): 12° fark — varsayılan olarak Mean Lilith (daha kararlı davranış), True Lilith planetIds: [13] üzerinden kullanılabilir
  • Topocentrik vs jeosentrik: varsayılan olarak jeosentrik

Doğrulukla ilgili sorular için: destek@astroway.info adresine harita verileri ve beklenen referans (astro.com ya da başka yetkili kaynak) ile birlikte yazabilirsin.

Yardımcı oldu mu?
Запропонувати правку

Son güncelleme: