गणनाओं की सटीकता
संक्षेप में
Section titled “संक्षेप में”AstroWay API स्विस एफिमेरिस (एस्ट्रोडिएंस्ट का आधिकारिक C-कोड, astro.com के निर्माता) का उपयोग करता है - वही इंजन जिस पर पेशेवर ज्योतिषी 30+ वर्षों से Solar Fire ($495), Kepler ($995), Astro Gold ($29.99/माह) और Janus में काम कर रहे हैं। हमने इसे WebAssembly में संकलित किया है और बिना किसी मध्यस्थता शुल्क के इसे REST API परत के रूप में प्रस्तुत किया है। प्रत्येक मूल गणना एंडपॉइंट रिग्रेशन स्नैपशॉट-परीक्षणों से कवर किया गया है; इंजन की सटीकता को तीन स्वतंत्र स्रोतों के साथ त्रिकोणीयकरण के माध्यम से + NASA 5-Millennium Eclipse Catalog के विरुद्ध सत्यापित किया गया है:
- ग्रहों की स्थिति: माध्यिका
0.0013", अधिकतम0.561"बनाम आधिकारिक स्वेटेस्ट CGI एस्ट्रोडिएंस्ट (2026-07-29 को 130 मापों पर मापा गया)। निकायों के अनुसार विभाजन नीचे दिया गया है - प्लेसिडस हाउस कस्प्स:
0.000"सटीक मिलान - ग्रहण:
< 1 मिनटबनाम NASA Eclipse Catalog - ACG रेखाएँ: भूमध्य रेखा पर
< 1.5 किमीबनाम स्वेटेस्ट - सूर्योदय/सूर्यास्त:
< 10 सेकंडबनाम timeanddate.com - चंद्रमा VOC, प्रवेश, ग्रह युति: सेकंड के अंश तक सटीकता
कार्यप्रणाली: इसे कैसे मापा गया
Section titled “कार्यप्रणाली: इसे कैसे मापा गया”ये संख्याएँ अनुमान नहीं, बल्कि एक रन का परिणाम हैं। स्क्रिप्ट 1900 से 2050 तक फैले 10 चार्ट लेती है, लाइव स्वेटेस्ट CGI एस्ट्रोडिएंस्ट से उन्हीं क्षणों का अनुरोध करती है और हमारे द्वारा लौटाए गए सभी 13 निकायों की तुलना करती है। कुल 130 माप।
| निकाय | अधिकतम विचलन |
|---|---|
| सूर्य, शुक्र, शनि | 0.001" |
| बुध | 0.002" |
| true Node | 0.004" |
| मंगल | 0.007" |
| बृहस्पति | 0.009" |
| चंद्रमा | 0.022" |
| यूरेनस | 0.083" |
| प्लूटो | 0.097" |
| नेपच्यून | 0.223" |
| काइरॉन | 0.561" |
| माध्य अपोजी (लिलिथ) | 0.000" |
सभी 130 मापों का माध्यिका: 0.0013".
पहले इस पृष्ठ पर एक सामान्य वादा था «< 0.1 arcsec»। 2026-07-29 के मापों से पता चला कि नेपच्यून, प्लूटो और काइरॉन इसे बनाए नहीं रख पाए, इसलिए वादे को वास्तविक संख्याओं से बदल दिया गया है। काइरॉन और बाहरी ग्रहों में अधिक विचलन होता है क्योंकि उनकी स्थिति WASM-असेंबली में एफिमेरिस के एक संपीड़ित सेट से ली जाती है।
तुम इसे स्वयं दोहरा सकते हो: api-calc/scripts/accuracy-vs-swetest.mjs ठीक यही अनुरोध करता है और वही तालिका प्रिंट करता है।
स्वयं जाँचो। ऊपर मापी गई संख्याओं वाला स्क्रिप्ट MIT के तहत सार्वजनिक रिपॉजिटरी में है: astroway/astrology-accuracy-benchmark। यह केवल हमारे साथ ही काम नहीं करता: किसी भी अन्य API के लिए एक एडाप्टर तीस पंक्तियों का है, इसलिए वही 130 माप एक प्रतियोगी के विरुद्ध चलाए जा सकते हैं और तुलना की जा सकती है। सैंडबॉक्स कुंजी पर्याप्त है।
| घटक | मान |
|---|---|
| लाइब्रेरी | Swiss Ephemeris C code (aloistr/swisseph) |
| संस्करण | upstream Astrodienst C code |
| बाइंडिंग | swisseph-wasm (WebAssembly у Node.js) |
| एफिमेरिस | DE431 JPL ephemeris (через .se1 файли) |
| फ़ॉलबैक | मोशियर विश्लेषणात्मक (1800-2399 के बाहर की तारीखों के लिए) |
| कोड साझाकरण | app.astroway.info के साथ साझा @/core - एक इंजन, दो ट्रांसपोर्ट |
कार्यप्रणाली
Section titled “कार्यप्रणाली”सटीकता को त्रिकोणीयकरण के माध्यम से सत्यापित किया जाता है - तीन स्वतंत्र स्रोतों के साथ तुलना करके:
1. स्वेटेस्ट CGI (संदर्भ)
Section titled “1. स्वेटेस्ट CGI (संदर्भ)”एस्ट्रोडिएंस्ट की ओर से स्विस एफिमेरिस का आधिकारिक संदर्भ-कार्यान्वयन - वह टीम जिसने Astro.com बनाया और दुनिया भर के लाखों ज्योतिषियों की सेवा करती है। सबसे आधिकारिक सार्वजनिक स्रोत। हमारा इंजन समान है (0.00–0.07 आर्कसेकंड का विचलन)।
2. केरीकेयन (पायथन)
Section titled “2. केरीकेयन (पायथन)”एक स्वतंत्र पायथन-लाइब्रेरी हमारे WASM के बजाय pyswisseph-बाइंडिंग का उपयोग करती है। यह पुष्टि करता है कि हमारी WASM परत डेटा को विकृत नहीं करती है।
3. प्रोकेराला API
Section titled “3. प्रोकेराला API”रिमोट स्विस एफिमेरिस API (साइडरियल लाहिड़ी)। 8–17 आर्कसेकंड का प्रणालीगत विचलन लाहिड़ी अयनांश सूत्र के विभिन्न संस्करणों से संबंधित है, न कि इंजन की सटीकता से।
त्रिकोणीयकरण के परिणाम
Section titled “त्रिकोणीयकरण के परिणाम”| चार्ट | स्वेटेस्ट (एस्ट्रोडिएंस्ट) के विरुद्ध | केरीकेयन (पायथन) के विरुद्ध | प्रोकेराला API के विरुद्ध |
|---|---|---|---|
| Monroe 1926 | 0.00” | 0.19” | 16.95” (systemic) |
| Diana 1961 | 0.00” | 0.69” | 8.18” (systemic) |
| Einstein 1879 | 0.07” | LMT-केरीकेयन कलाकृति | 14.96” (systemic) |
एंडपॉइंट स्तर पर रिग्रेशन-सेट
Section titled “एंडपॉइंट स्तर पर रिग्रेशन-सेट”प्रत्येक मूल गणना एंडपॉइंट 3 संदर्भ चार्ट (मोनरो / डायना / आइंस्टीन) पर जमे हुए स्नैपशॉट-परीक्षणों से कवर किया गया है = 873 स्नैपशॉट।
स्नैपशॉट-सूट पकड़ता है:
- इनपुट डेटा मैपिंग बग - गलत ग्रह आईडी, UT, हाउस सिस्टम
- पोस्ट-प्रोसेसिंग - राउंडिंग, यूनिट रूपांतरण, साइन का नुकसान
- डिफ़ॉल्ट का विचलन - माध्य बनाम वास्तविक नोड, भूकेंद्रीय बनाम शीर्षकेंद्रीय
- स्कीमा ड्रिफ्ट - सत्यापन ने गलत फॉर्म को छोड़ दिया
- अप्रचलित डिप्लॉय - prod dist कोड से मेल नहीं खाता
सहिष्णुता: 5e-5° (≈0.18 आर्कसेकंड) सभी संख्यात्मक फ़ील्ड के लिए डिफ़ॉल्ट रूप से।
विस्तृत बेंचमार्क
Section titled “विस्तृत बेंचमार्क”ग्रहों की स्थिति (उष्णकटिबंधीय, स्वेटेस्ट के विरुद्ध)
Section titled “ग्रहों की स्थिति (उष्णकटिबंधीय, स्वेटेस्ट के विरुद्ध)”| चार्ट | दिनांक | अधिकतम विचलन |
|---|---|---|
| Marilyn Monroe | 1926-06-01 | 0.00” |
| Princess Diana | 1961-07-01 | 0.00” |
| Albert Einstein | 1879-03-14 | 0.07” |
प्लेसिडस हाउस कस्प्स (स्वेटेस्ट के विरुद्ध)
Section titled “प्लेसिडस हाउस कस्प्स (स्वेटेस्ट के विरुद्ध)”| चार्ट | ASC विचलन | MC विचलन | कस्प का अधिकतम विचलन |
|---|---|---|---|
| Monroe | 0.000” | 0.000” | 0.000” |
| Diana | 0.000” | 0.000” | 0.000” |
ग्रहण (NASA 5-Millennium Catalog के विरुद्ध)
Section titled “ग्रहण (NASA 5-Millennium Catalog के विरुद्ध)”| घटना | NASA अधिकतम | हमारा अधिकतम | विचलन |
|---|---|---|---|
| 2025-03-14 Lunar Total | 06:58 UT | 06:58 UT | 0.8 मिनट |
| 2025-03-29 Solar Partial | 10:47 UT | 10:47 UT | 0.5 मिनट |
| 2025-09-07 Lunar Total | 18:11 UT | 18:11 UT | 0.8 मिनट |
| 2025-09-21 Solar Partial | 19:41 UT | 19:42 UT | 1.0 मिनट |
एस्ट्रोकार्टोग्राफी (स्वेटेस्ट से RA सूत्र के विरुद्ध)
Section titled “एस्ट्रोकार्टोग्राफी (स्वेटेस्ट से RA सूत्र के विरुद्ध)”सभी MC/IC/ASC/DSC रेखाएँ सही सूत्र longitude = RA − GMST (केनेथ बाउसर मानक) का उपयोग करती हैं। संदर्भ से विचलन: सभी ग्रहों के लिए भूमध्य रेखा पर < 1.5 किमी।
सूर्योदय / सूर्यास्त (timeanddate.com के विरुद्ध)
Section titled “सूर्योदय / सूर्यास्त (timeanddate.com के विरुद्ध)”| स्थान | दिनांक | पैरामीटर | विचलन |
|---|---|---|---|
| London | 2026-04-15 | Sunrise | 0.6 सेकंड |
| London | 2026-04-15 | Sunset | 9 सेकंड |
ध्रुवीय स्थान (|lat| > 66.5°) स्वचालित रूप से polarState + चेतावनी लौटाते हैं कि सामान्य ग्रहों के घंटे परिभाषित नहीं हैं।
दृष्टि के ऑर्ब्स
Section titled “दृष्टि के ऑर्ब्स”AstroWay ZET9 और astro.com की तरह परिवर्तनीय ऑर्ब्स प्रति-ग्रह (दो ग्रहों का MIN नियम) का उपयोग करता है। डिफ़ॉल्ट ऑर्ब्स (जन्म कुंडली के लिए):
| दृष्टि | Sun | Moon | आंतरिक | बृहस्पति | बाहरी |
|---|---|---|---|---|---|
| Conjunction | 12° | 10° | 5° | 8° | 5° |
| Sextile | 6.5° | 6° | 5° | 5° | 5° |
| Square | 10° | 8° | 5° | 7° | 5° |
| Trine | 12° | 8° | 5° | 5° | 5° |
| Opposition | 12° | 10° | 5° | 8° | 5° |
लघु दृष्टियाँ (36°, 40°, 45°, 72°, 108°, 135°, 144°) डिफ़ॉल्ट रूप से अक्षम हैं। ALL_ASPECTS के माध्यम से स्पष्ट रूप से सक्षम की जाती हैं।
ध्रुवीय अक्षांश
Section titled “ध्रुवीय अक्षांश”|lat| > 66.5° के लिए प्लेसिडस / कोच / रेगियोमोंटानस सिस्टम गणितीय रूप से परिभाषित नहीं हैं। ऐसे मामलों में, स्विस एफिमेरिस स्वचालित रूप से पोर्फिरी लौटाता है, और हमारा API एक चेतावनी जोड़ता है:
{ "system": "P", "warning": "Система Placidus не визначена для lat=68.96° (> 66.5°). Swiss Ephemeris підставив Porphyry..."}निरंतर सत्यापन
Section titled “निरंतर सत्यापन”CI के माध्यम से प्रत्येक PR पर रिग्रेशन की जाँच की जाती है:
api-calc/tests/endpoints/- संदर्भ चार्ट (मोनरो / डायना / आइंस्टीन) + सिनास्ट्री / कंपोजिट / डेविसन के विरुद्ध 873 स्नैपशॉट.github/workflows/api-accuracy.yml- PR पर ऑटो-रन- स्वेटेस्ट CGI + केरीकेयन के विरुद्ध त्रिकोणीयकरण - साप्ताहिक
- डिपेंडबॉट के माध्यम से अपस्ट्रीम स्विस एफिमेरिस की निगरानी
MCP की विश्वसनीयता - टाइप किया गया आउटपुट
Section titled “MCP की विश्वसनीयता - टाइप किया गया आउटपुट”इंजन की सटीकता - भरोसे का आधा हिस्सा है। दूसरा आधा हिस्सा - आउटपुट अनुबंध, जिसे एजेंट (Claude, ChatGPT, Cursor) मान्य कर सकता है। हमारा MCP-सर्वर «कच्चा टेक्स्ट, खुद समझो» नहीं लौटाता है:
- टाइप किया गया
structuredContent। 600 से अधिक MCP-उपकरण हैं, और उनमें से अधिकांश एक सख्तoutputSchemaप्रकाशित करते हैं - MCP-क्लाइंट को एक मान्य संरचना प्राप्त होती है, न कि एक स्ट्रिंग जिसे बेतरतीब ढंग से पार्स करना पड़ता है। - स्कीमा ड्रिफ्ट से सुरक्षा। CI-परीक्षण
openapi-example-driftप्रत्येक रिग्रेशन-स्नैपशॉट को उसके अपने उदाहरण से प्राप्त स्कीमा के विरुद्ध मान्य करता है: यदि एंडपॉइंट का वास्तविक आउटपुट प्रकाशित स्कीमा से भिन्न होता है, तो बिल्ड विफल हो जाता है। यही विसंगतियों का वर्ग MCP त्रुटि-32602 Output validation errorका कारण बनता है। - त्रुटियाँ - त्रुटियाँ ही हैं। उपकरण की विफलता हमेशा
isErrorध्वज और एक टाइप किए गए कोड (UPPER_SNAKE) के साथ लौटाई जाती है। हम मॉडल को कभी भी कच्चा स्टैक ट्रेस या आंतरिक सर्वर पथ «डेटा» के रूप में नहीं देते हैं।
यानी, MCP के माध्यम से एकीकरण उतना ही अनुमानित है जितना कि एक सीधा REST-कॉल: जो /openapi.json में वर्णित है, वही उपकरण लौटाता है।
ज्ञात सीमाएँ
Section titled “ज्ञात सीमाएँ”- श्रेणी से बाहर की तारीखें (1800 से पहले और 2399 के बाद): मोशियर विश्लेषणात्मक का उपयोग किया जाता है, सटीकता ~0.1” (DE431 फ़ाइलों के साथ SWIEPH के लिए < 0.01” के विरुद्ध)
- True Lilith (id=13) बनाम Mean Lilith (id=12): 12° तक का अंतर - डिफ़ॉल्ट रूप से Mean Lilith (स्थिर व्यवहार), True Lilith
planetIds: [13]के माध्यम से उपलब्ध है - टॉपोसेंट्रिक बनाम जियोसेंट्रिक: डिफ़ॉल्ट रूप से जियोसेंट्रिक
संदर्भ
Section titled “संदर्भ”- Swiss Ephemeris: https://www.astro.com/swisseph/
- swetest CGI: https://www.astro.com/swisseph/swetest.htm
- NASA ग्रहण कैटलॉग: https://eclipse.gsfc.nasa.gov/
- Kerykeion: https://github.com/g-battaglia/kerykeion
- Astrodienst: https://www.astro.com/
संपर्क
Section titled “संपर्क”सटीकता के प्रश्नों के लिए: support@astroway.info पर चार्ट डेटा और अपेक्षित संदर्भ (astro.com या कोई अन्य आधिकारिक स्रोत) के साथ लिखो।