জ্যোতির্ময় বৈদিক জ্যোতিষ কীভাবে গণনা করে (পদ্ধতি)
জ্যোতির্ময়ের বৈদিক জ্যোতিষ ইঞ্জিনকে এমন একটি স্বচ্ছ ক্যালকুলেশন সিস্টেম হিসেবে তৈরি করা হয়েছে, যেখানে একই ইনপুট দিলে একই আউটপুট আসে। এটি ইউজারের জন্মসংক্রান্ত তথ্য দিয়ে শুরু করে, স্ট্যান্ডার্ড এফেমেরিস ব্যবহার করে দরকারি জ্যোতির্বৈজ্ঞানিক পজিশন হিসাব করে, তারপর স্পষ্টভাবে নির্ধারিত অয়নাংশ সেটিং ব্যবহার করে সেগুলোকে সিডেরিয়াল জ্যোতিষ আউটপুটে বদলে দেয়, এবং এরপর স্ট্যান্ডার্ড গাণিতিক নিয়ম মেনে পঞ্জিকার উপাদান ও অন্যান্য চার্ট ফ্যাক্টর বের করে। এই পেজে পুরো কম্পিউটেশন পাইপলাইনটি ইঞ্জিনিয়ারিং লেভেলে বোঝানো হয়েছে - কোন ইনপুট নেওয়া হয়, সময় আর কোঅর্ডিনেট কীভাবে রিজলভ করা হয়, গ্রহের ও পঞ্জিকার ভ্যালু কীভাবে হিসাব করা হয়, দিনের মধ্যে হওয়া পরিবর্তন কীভাবে ডিটেক্ট করা হয়, আর সেই সিগনাল থেকে স্ট্রাকচার্ড প্রেডিকশন টেক্সট কীভাবে তৈরি হয়। এর উদ্দেশ্য হল মেথডটি পরিষ্কারভাবে বোঝানো এবং একই ইনপুটে একই ফল আবার পাওয়া যায় সেটা দেখানো; জ্যোতিষের বৈজ্ঞানিক কারণগত প্রমাণ আছে এমন দাবি করা নয়। এই নথিটি জ্যোতির্ময়ের বৈদিক জ্যোতিষ আউটপুট তৈরি করতে ব্যবহৃত কম্পিউটেশনাল পাইপলাইন নির্দিষ্ট করে। সিস্টেমটি ব্যবহারকারী-প্রদত্ত জন্ম ডেটাকে জ্যোতির্বৈজ্ঞানিক অবস্থান এবং জ্যোতিষ-স্ট্যান্ডার্ড ডেরাইভড এন্টিটিতে (নিরয়ণ রাশি, নক্ষত্র, পাদ, লগ্ন এবং প্রযোজ্য হলে সংশ্লিষ্ট ফিচার) রূপান্তর করে; এবং ব্যবহারকারীর অবস্থান ও সিভিল টাইম অনুযায়ী দৈনিক পঞ্জিকা উপাদান ও তাদের ট্রানজিশন সময় গণনা করে। একই ইনপুট এবং পিন করা কনফিগারেশন থাকলে এই গণনা ডিটারমিনিস্টিক এবং রি-প্রোডিউসিবল। এই নথি গণনা কীভাবে করা হয় তা বর্ণনা করে; জ্যোতিষীয় ব্যাখ্যার জন্য কোনো বৈজ্ঞানিক কারণ-কার্য প্রক্রিয়া দাবি করে না। 1. পরিধি এবং ডিজাইন লক্ষ্য
পরিধির মধ্যে
নির্দিষ্ট নিরয়ণ মডেলের অধীনে গ্রহ দ্রাঘিমাংশ এবং সংশ্লিষ্ট ডেরাইভড জ্যোতিষ এন্টিটির পুনরুত্পাদনযোগ্য গণনা। সংজ্ঞায়িত দৈনিক উইন্ডোর মধ্যে মূল পঞ্জিকা উপাদান (তিথি, নক্ষত্র, যোগ, করণ, বার) এবং তাদের ট্রানজিশন গণনা। পরিচিত “চয়েস পয়েন্ট” (যেমন, অয়নাংশ নির্বাচন; নোড মডেল; ডে-বাউন্ডারি কনভেনশন) স্পষ্টভাবে হ্যান্ডেল করা।
পরিধির বাইরে
বৈজ্ঞানিক অর্থে কারণ-যন্ত্রণা বা পূর্বাভাসের বৈধতা সম্পর্কিত দাবি। ক্লিনিক্যাল, আইনগত, বা আর্থিক সিদ্ধান্ত-সমর্থন।
ডিজাইন লক্ষ্য
ডিটারমিনিজম: একই ইনপুট + একই কনফিগারেশন → একই আউটপুট। অডিটযোগ্যতা: কনফিগারেশন বিকল্পগুলো প্রকাশযোগ্য এবং ভার্সনড। অনিশ্চয়তার প্রতি রোবাস্টনেস: জন্ম-সময়ের অনিশ্চয়তা স্পষ্টভাবে উপস্থাপন করুন এবং ভুয়া নির্ভুলতা এড়িয়ে চলুন।
2. ইনপুট এবং ডেটা অখণ্ডতা
2.1 ব্যবহারকারী-প্রদত্ত ইনপুট
প্রতি ব্যবহারকারীর জন্য সিস্টেম গ্রহণ করে:
জন্মতারিখ (ক্যালেন্ডার তারিখ)
জন্মসময় (স্পষ্ট প্রিসিশন ফ্ল্যাগসহ: exact / approximate / unknown) জন্মস্থান (অক্ষাংশ/দ্রাঘিমাংশে রিজলভড)
জন্মসময়ের টাইমজোন (স্থান + তারিখ থেকে রিজলভড)
2.2 নির্ভুলতা এবং সংবেদনশীলতা
বহু জ্যোতিষীয় পরিমাপ—বিশেষ করে লগ্ন, ভাব কাস্প এবং সূক্ষ্ম উপবিভাগ—জন্মসময়ের প্রতি অত্যন্ত সংবেদনশীল। জন্মসময় approximate/unknown হিসেবে চিহ্নিত হলে: যে আউটপুটগুলো জন্মসময়ের ওপর নির্ণায়কভাবে নির্ভরশীল, সেগুলো হয় চাপা দেওয়া হয়, নয়তো স্পষ্টভাবে approximate হিসেবে লেবেল করা হয়। উপযুক্ত হলে সিস্টেম সময়-রোবাস্ট বর্ণক (যেমন, রাশি, চন্দ্রের নক্ষত্র) গণনা করতে পারে এবং সময়-সংবেদনশীল বর্ণককে শর্তসাপেক্ষ হিসেবে বিবেচনা করে।
3. সময় মানদণ্ড এবং রূপান্তর
3.1 সিভিল টাইম → UTC
জন্মসময় স্থানীয় সিভিল সময় হিসেবে ব্যাখ্যা করে, ঐতিহাসিক অফসেট ট্রানজিশনসহ টাইমজোন ডেটাবেস ব্যবহার করে UTC-তে রূপান্তর করা হয়।
3.2 UTC → এপিমেরিস টাইম স্কেল
গ্রহীয় এপিমেরিড সাধারণত ধারাবাহিক ডাইনামিক্যাল টাইম স্কেলে (যেমন, TT/TDB) সংজ্ঞায়িত। তাই ইঞ্জিন:
UTC-কে এপিমেরিস ইমপ্লিমেন্টেশনের জন্য উপযুক্ত ধারাবাহিক সময়-আর্গুমেন্টে কনভার্ট করে। উপলব্ধ হলে এপিমেরিস লাইব্রেরির অভ্যন্তরীণ ΔT হ্যান্ডলিং ব্যবহার করে, বা যদি স্পষ্টভাবে এক্সপোজড থাকে তাহলে পিন করা ΔT মডেল ব্যবহার করে।
3.3 কো-অর্ডিনেট কনভেনশন
কোনো ফিচারের জন্য স্পষ্টভাবে ভিন্ন ফ্রেম প্রয়োজন না হলে, ডিফল্ট কম্পিউটেশনাল রিপ্রেজেন্টেশন হলো:
ভূকেন্দ্রিক ইক্লিপ্টিক দ্রাঘিমাংশ (কনফিগারেশন অনুযায়ী আপ্যারেন্ট বা জিওমেট্রিক; স্পষ্টভাবে পিন করা)।
4. খগোলীয় স্তর: গ্রহ এবং নোড অবস্থান
4.1 গণনা করা বডি
ন্যূনতমভাবে সিস্টেম নিম্নোক্তগুলোর জন্য ইক্লিপ্টিক দ্রাঘিমাংশ (এবং ঐচ্ছিকভাবে তাত্ক্ষণিক বেগ) গণনা করে:
সূর্য, চন্দ্র, বুধ, শুক্র, মঙ্গল, বৃহস্পতি, শনি
রাহু (নির্বাচিত নোড মডেল অনুযায়ী)
কেতু রাহুর অ্যান্টিপোড (রাহু + 180°, 0–360°-এ র্যাপড)
4.2 নোড মডেল
চন্দ্র নোড mean node বা true node হিসেবে গণনা করা যেতে পারে। নির্বাচিত মডেল একটি কনফিগারেশন প্যারামিটার এবং এটিকে আউটপুটের কম্পিউটেশনাল আইডেন্টিটির অংশ হিসেবে বিবেচনা করা উচিত।
5. নিরয়ণ রূপান্তর: অয়নাংশ এবং সিডেরিয়াল দ্রাঘিমাংশ
5.1 ট্রপিক্যাল → সিডেরিয়াল কনভার্শন
বৈদিক জ্যোতিষে সাধারণত নিরয়ণ দ্রাঘিমাংশ ব্যবহার করা হয়। কনভার্শন:
λ_sidereal = wrap(λ_tropical − ayanāṃśa(t)) যেখানে wrap() [0°, 360°) ইন্টারভালে ম্যাপ করে।
5.2 অয়নাংশ নির্বাচন-বিন্দু
অয়নাংশ নির্বাচন (যেমন, লাহিড়ী/চিত্রাপক্ষ বা অন্যান্য নামকৃত মান) একটি ফার্স্ট-ক্লাস কনফিগারেশন বিকল্প। দ্রাঘিমাংশ-নির্ভর সব ডেরাইভড এন্টিটি—রাশি সীমানা, নক্ষত্র ইনডেক্সিং, পাদ—এই বিকল্পটি ইনহেরিট করে।
6. ডেরাইভড জ্যোতিষ এন্টিটি
λ-কে [0, 360) পরিসরে ডিগ্রিতে একটি সিডেরিয়াল দ্রাঘিমাংশ ধরা যাক।
6.1 রাশি (চিহ্ন)
rāśi_index = floor(λ / 30°) → 0..11
rāśi_degree = λ mod 30°
6.2 নক্ষত্র এবং পাদ
27 সমান ভাগ ব্যবহার করে:
Nakṣatra span = 360° / 27 = 13°20′ Pāda span = nakṣatra span / 4 = 3°20′
গণনা:
nakṣatra_index = floor(λ / 13°20′) + 1 → 1..27
pāda_index = floor((λ mod 13°20′) / 3°20′) + 1 → 1..4
6.3 লগ্ন এবং ভাব (যদি জন্মসময় ব্যবহারযোগ্য হয়)
যদি জন্মসময় যথেষ্ট নির্ভুলতায় উপলব্ধ থাকে:
UTC, দ্রাঘিমাংশ এবং নির্বাচিত সময় মডেল থেকে লোকাল সিডেরিয়াল টাইম গণনা করুন। লোকাল সিডেরিয়াল টাইম ও অক্ষাংশ থেকে অ্যাসেনড্যান্ট (লগ্ন) গণনা করুন। পিন করা হাউস সিস্টেম (যেমন, whole-sign ভাব বা cusp-based সিস্টেম) ব্যবহার করে ভাব/হাউস গণনা করুন। হাউস সিস্টেম নির্বাচন একটি কনফিগারেশন বিকল্প; আউটপুটে এই নির্বাচন ঘোষণা করা উচিত। জন্মসময় approximate হলে লগ্ন/ভাব আউটপুটগুলো স্পষ্টভাবে approximate হিসেবে চিহ্নিত হয়; unknown হলে সেগুলো দেখানো হয় না।
7. পঞ্জিকা গণনা (দৈনিক স্তর)
7.1 দিন-সীমা কনভেনশন
ভারতীয় ক্যালেন্ডার প্রথায় অনেক সময় “দিন” সূর্যোদয় থেকে সূর্যোদয় পর্যন্ত ধরা হয়, তবে সিভিল সিস্টেমে মধ্যরাত্রির সীমা ব্যবহৃত হয়। জ্যোতির্ময় সমর্থন করে: সূর্যোদয়-ভিত্তিক দিন-সীমা (সক্ষম থাকলে পঞ্জিকা-স্টাইল রিপোর্টিংয়ের ডিফল্ট), এবং/অথবা প্রোডাক্ট কনফিগারেশন অনুযায়ী সিভিল দিন-সীমা (ব্যবহারকারীর টাইমজোনে মধ্যরাত্রি)। নির্বাচিত দিন-সীমা দৈনিক মানের আউটপুট আইডেন্টিটির অংশ।
7.2 দৈনিক উইন্ডোর সংজ্ঞা
ব্যবহারকারীর টাইমজোনে প্রদত্ত “আজ” এর জন্য গণনা-উইন্ডো সাধারণত:
নির্বাচিত দিন-সীমার সাথে অ্যালাইন করা রোলিং 24-ঘন্টার ইন্টারভাল।
7.3 তিথি
S ও M-কে সূর্য ও চন্দ্রের দ্রাঘিমাংশ ধরা যাক (একই রেফারেন্স ফ্রেমে; সিস্টেম যদি নিরয়ণ-সঙ্গত পঞ্জিকা চালায় তবে সিডেরিয়াল)।
এলংগেশন সংজ্ঞায়িত করুন:
D = wrap(M − S) in degrees
তারপর:
একটি তিথি 12° এলংগেশনের সমতুল্য।
tithi_number = floor(D / 12°) + 1 → 1..30
7.4 করণ
একটি করণ 6° এলংগেশনের সমতুল্য:
karaṇa_index = floor(D / 6°) → 0..59
একটি স্ট্যান্ডার্ড ম্যাপিং পুনরাবৃত্ত এবং স্থির করণ নির্ধারণ করে; ম্যাপিংটি পিন করা এবং প্রকাশিত হওয়া উচিত।
7.5 নক্ষত্র (দৈনিক)
দৈনিক নক্ষত্র চন্দ্রের দ্রাঘিমাংশ থেকে গণনা করা হয়:
nakṣatra_index_moon = floor(M / 13°20′) + 1
7.6 যোগ
যোগ দ্রাঘিমাংশের যোগফল থেকে গণনা করা হয়:
Y = wrap(S + M)
yoga_number = floor(Y / 13°20′) + 1 → 1..27
7.7 বার (সপ্তাহের দিন)
সপ্তাহের দিন ব্যবহারকারীর টাইমজোনে গণনা করা হয়; সূর্যোদয় সীমা সক্ষম থাকলে, বার পরিবর্তন মধ্যরাত্রির বদলে সূর্যোদয়ের সাথে অ্যালাইন করা যেতে পারে।
8. ট্রানজিশন সময়ের অনুমান (তিথি/নক্ষত্র/যোগ/করণ)
এই উপাদানগুলো যে কোনো সময় বদলাতে পারে বলে, জ্যোতির্ময় দৈনিক উইন্ডোর ভেতরে ট্রানজিশন টাইমস্ট্যাম্প অনুমান করে।
একটি ব্যবহারিক পদ্ধতি:
ব্র্যাকেট সার্চ: দৈনিক উইন্ডো নির্দিষ্ট ইন্টারভালে স্যাম্পল করুন যাতে কোনো ডিস্ক্রিট ইনডেক্স বদলায় এমন প্রথম ইন্টারভাল ধরা যায়। রিফাইনমেন্ট: ট্রানজিশন সময়কে মিনিট-স্তরের রেজোলিউশনে (বা প্রয়োজন হলে আরও সূক্ষ্ম) লোকালাইজ করতে বাইসেকশন (বাইনারি সার্চ) বা মনোটোন রুট-ফাইন্ডিং প্রক্রিয়া প্রয়োগ করুন।
রিপোর্ট করা ট্রানজিশন সময় একটি অনুমান; এর প্রিসিশন নির্ভর করে:
এপিমেরিস ইভ্যালুয়েশন প্রিসিশন, স্যাম্পলিং রেট এবং রিফাইনমেন্ট টার্গেট, এবং সময়-মানদণ্ড কনভার্শন মডেল।
9. ব্যাখ্যামূলক স্তর: “দৈনিক জ্যোতিষ টেক্সট” তৈরি করা
জ্যোতির্ময় গণনা করা সিগন্যালগুলোকে ডিটারমিনিস্টিক টেমপ্লেটে ম্যাপ করে টেক্সচুয়াল সামারি তৈরি করতে পারে।
প্রধান সীমাবদ্ধতা:
খগোলীয় ও পঞ্জিকা গণনা সম্পূর্ণ অ্যালগোরিদমিক। কোনো টেক্সচুয়াল রেন্ডারিং স্তর গণনায় ফিডব্যাক দেওয়া উচিত নয়। যদি একাধিক ব্যাখ্যা-পরম্পরা সমর্থিত হয়, তবে প্রতিটি পরম্পরার ম্যাপিং নিয়ম ভার্সনড এবং ঘোষণা করা উচিত। 10. ভ্যালিডেশন, রিগ্রেশন টেস্টিং, এবং পুনরুত্পাদনযোগ্যতা
ভ্যালিডেশন কম্পিউটেশনাল সঠিকতা এবং সামঞ্জস্যের ওপর কেন্দ্রীভূত:
গণনা করা পঞ্জিকা উপাদানকে বিশ্বাসযোগ্য প্রকাশিত উৎসের সাথে ক্রস-চেক করা। অ্যাঙ্গেল র্যাপিং, রাশি/নক্ষত্র প্রান্তের বাউন্ডারি কন্ডিশন, এবং ট্রানজিশন ডিটেকশনের জন্য ইউনিট টেস্ট। কিউরেটেড ন্যাটাল চার্ট ও তারিখের একটি সেটের জন্য রিগ্রেশন টেস্ট, যেখানে প্রত্যাশিত আউটপুট পিন করা।
পুনরুত্পাদনযোগ্যতার জন্য সিস্টেমকে রেকর্ড এবং/অথবা প্রকাশ করা উচিত:
এপিমেরিস লাইব্রেরির নাম + ভার্সন, এপিমেরিস ডেটাসেট আইডেন্টিফায়ার (প্রযোজ্য হলে), অয়নাংশ স্ট্যান্ডার্ড, নোড মডেল (mean/true),
হাউস সিস্টেম (ব্যবহৃত হলে),
সূর্যোদয় মডেল (সূর্যোদয় সীমা ব্যবহার হলে), টাইমজোন ডেটাবেস ভার্সন।
11. পরম্পরার মধ্যে ভ্যারিয়েন্সের পরিচিত উৎস
অভিজ্ঞ প্র্যাকটিশনাররা নিম্নোক্ত কারণে সৃষ্ট বৈধ ভ্যারিয়েন্স শনাক্ত করবেন:
অয়নাংশ স্ট্যান্ডার্ড নির্বাচন, mean বনাম true node,
হাউস সিস্টেম নির্বাচন,
সূর্যোদয়ের সংজ্ঞা (আপ্যারেন্ট সূর্যোদয় বনাম রিফ্র্যাকশন মডেল; ভৌগোলিক অল্টিটিউড), পঞ্জিকা গণনা ট্রপিক্যাল না সিডেরিয়াল ফ্রেমে করা হয় কিনা, ডিগ্রি এবং ট্রানজিশন সময় রিপোর্ট করার রাউন্ডিং কনভেনশন। জ্যোতির্ময় এগুলোকে লুকানো অনুমান নয়, বরং স্পষ্ট কনফিগারেশন বিকল্প হিসেবে বিবেচনা করে।
12. সীমাবদ্ধতা এবং ডিসক্লেমার
জন্মসময়ের অনিশ্চয়তা এবং টাইমজোন রিজলভিং ত্রুটি (বিশেষ করে ঐতিহাসিক ট্রানজিশনের কাছাকাছি) আউটপুটকে উল্লেখযোগ্যভাবে প্রভাবিত করতে পারে। এই নথিটি ডিটারমিনিস্টিক গণনা বর্ণনা করে। জ্যোতিষের জন্য কোনো বৈজ্ঞানিক কারণ-যন্ত্রণা দাবি করে না। চিকিৎসা, আইনগত, বা আর্থিক সিদ্ধান্তের একমাত্র ভিত্তি হিসেবে জ্যোতির্ময় ব্যবহার করা উচিত নয়।
References
Swiss Ephemeris Documentation (technical reference for ephemeris computations and sidereal options):
https://www.astro.com/ftp/swisseph/doc/swisseph.pdf (Astro.com) NASA/JPL Solar System Dynamics — Horizons System Manual (authoritative reference on high-precision ephemerides and coordinate outputs): https://ssd.jpl.nasa.gov/horizons/manual.html (JPL Solar System Dynamics)
IANA Time Zone Database (authoritative reference for historical timezone rules):
https://www.iana.org/time-zones (IANA) NCERT (hosted by IIT Kanpur) — Knowledge Traditions and Practices of India, Chapter on Astronomy in India (definitions of sunrise-based day, tithi as 12° elongation, etc.): https://sathee.iitk.ac.in/ncert-books/class-11/knowledge-traditions-and-practices-of-india/chapter-05-astronomy-in-india/ (Sathee) India Meteorological Department / Positional Astronomy Centre brochure (Government of India context for Rashtriya Panchang and pañcāṅga elements): https://mausam.imd.gov.in/imd_latest/contents/pdf/pubbrochures/Positional%20Astronomy%20Centre.pdf (Mausam)