একই শহর ও একই দিনের জন্য দুটি পঞ্জিকায় তিথির শেষ সময়, সংক্রান্তি বা গ্রহের অবস্থান আলাদা দেখা গেলে সাধারণ প্রশ্ন ওঠে—কোনটি সঠিক? কিন্তু তার আগে জানতে হয়, দুটি পঞ্জিকা একই mathematical model ব্যবহার করছে কি না এবং তারা আসলে একই প্রশ্নের উত্তর দিচ্ছে কি না। সূর্যসিদ্ধান্তীয় ও দৃক্সিদ্ধান্তীয় পদ্ধতির পার্থক্য এখানেই।
দুটি পদ্ধতি, দুটি প্রধান প্রশ্ন
সরলভাবে বললে:
- সূর্যসিদ্ধান্তীয় গণনা জানতে চায়—ঘোষিত ঐতিহ্যগত ধ্রুবক, যুগ, গড় গতি ও সংশোধন অনুসারে পঞ্জিকার ফল কী হবে?
- দৃক্ বা modern ephemeris গণনা জানতে চায়—আধুনিক astronomical model অনুসারে নির্দিষ্ট মুহূর্তে সূর্য, চন্দ্র ও গ্রহের গণিতসম্মত অবস্থান কী?
প্রথমটি ঐতিহ্যগত computational lineage পুনরুৎপাদনে অপরিহার্য। দ্বিতীয়টি পর্যবেক্ষণ-সামঞ্জস্যপূর্ণ আধুনিক event time, eclipse, rise/set ও planetary position-এর জন্য উপযোগী। কোনো একটি পদ্ধতিকে অন্যটির উদ্দেশ্যে বিচার করলে বিভ্রান্তি তৈরি হয়।
সূর্যসিদ্ধান্তীয় model কীভাবে কাজ করে?
সূর্যসিদ্ধান্তীয় গণনায় একটি নির্বাচিত যুগ বা epoch থেকে দিনসংখ্যা নির্ণয় করে সূর্য, চন্দ্র ও গ্রহের গড় গতি এগিয়ে নেওয়া হয়। এরপর model অনুযায়ী মন্দ, শীঘ্র এবং অন্যান্য প্রয়োজনীয় সংশোধন প্রয়োগ করে অবস্থান নির্ণয় করা হয়।
একটি software implementation-এ সাধারণত নিচের উপাদান থাকে:
- যুগ, অহর্গণ ও revolution constants;
- mean planetary motions;
- মন্দ ও শীঘ্র সংশোধন;
- traditional ayana বা নিরয়ণ পদ্ধতি;
- বীজ সংস্কার;
- দেশান্তর ও স্থানীয় সময়ের adjustment;
- মাসারম্ভ ও উৎসবের পৃথক rule layer।
“সূর্যসিদ্ধান্ত” নামটি ব্যবহার করলেও সব software একই ফল দেবে—এমন নয়। গ্রন্থের পাঠভেদ, ব্যবহৃত constants, বীজ, ayana, epoch এবং আঞ্চলিক পঞ্জিকা-নিয়মের পার্থক্য ফলকে প্রভাবিত করতে পারে। তাই implementation version প্রকাশ করা জরুরি।
দৃক্সিদ্ধান্ত ও modern ephemeris
“দৃক্” শব্দটি পর্যবেক্ষণ বা দেখা আকাশের সঙ্গে সামঞ্জস্যের ধারণা বহন করে। আধুনিক সফটওয়্যারে দৃক্ গণনা সাধারণত live telescope observation দিয়ে প্রতিদিন তৈরি হয় না; এটি আধুনিক astronomical theory, numerical ephemeris এবং পর্যবেক্ষণ দিয়ে fit করা model থেকে অবস্থান গণনা করে।
আমাদের প্রকল্পে modern astronomical layer হিসেবে Swiss Ephemeris ব্যবহার করা হয়। এটি programmers-এর জন্য planetary positions, rise/set, Julian date conversion, eclipse, sidereal mode, topocentric position এবং house calculation-এর functions সরবরাহ করে।
Swiss Ephemeris নিজে থেকে “হিন্দু পঞ্জিকা” তৈরি করে না। এটি astronomical quantities দেয়। তিথি, নক্ষত্র, উৎসব, বাংলা মাস বা পারণ নির্ধারণের formula এবং rules application-কেই লিখতে হয়।
কোন সূত্রগুলো একই থাকে?
Traditional এবং Drik engine সূর্য ও চন্দ্রের ভিন্ন longitude দিতে পারে। কিন্তু longitude পাওয়ার পর পঞ্চাঙ্গের মৌলিক বিভাগগুলো একই:
| অঙ্গ | গাণিতিক ভিত্তি | বিভাগ |
|---|---|---|
| তিথি | চন্দ্র − সূর্যের normalized দ্রাঘিমা | ১২° |
| করণ | তিথির অর্ধাংশ | ৬° |
| নক্ষত্র | চন্দ্রের নিরয়ণ দ্রাঘিমা | ১৩°২০′ |
| যোগ | সূর্য + চন্দ্রের normalized নিরয়ণ দ্রাঘিমা | ১৩°২০′ |
অতএব “Drik তিথির formula আলাদা”—এ কথা সাধারণভাবে সঠিক নয়। পার্থক্য মূলত formula-তে প্রবেশ করা solar/lunar longitude এবং event boundary অতিক্রমের সময়ে।
অয়নাংশের ভূমিকা
আধুনিক ephemeris প্রায়ই tropical longitude দেয়। ভারতীয় নিরয়ণ রাশি ও নক্ষত্রের জন্য tropical position থেকে নির্বাচিত ayanāṃśa বাদ দিতে হয়:
= Normalize(Tropical longitude − Ayanāṃśa)
কিন্তু ayanāṃśa একটিমাত্র universal value নয়। Lahiri, Raman, Krishnamurti এবং আরও বিভিন্ন sidereal mode ব্যবহৃত হয়। Swiss Ephemeris-এর documentation-এ একাধিক Lahiri variant-সহ বহু sidereal mode আছে। তাই “Swiss Ephemeris ব্যবহার করেছি” বললেই comparison সম্পূর্ণ হয় না; কোন sidereal mode ব্যবহার করা হয়েছে সেটিও উল্লেখ করতে হবে।
এই প্রকল্পের Drik configuration-এ Lahiri ayanāṃśa ব্যবহার করা হয়। Software version ও exact mode ID সংরক্ষণ করাও ভালো, কারণ library update-এ precession model বা ayanāṃśa implementation-এর সূক্ষ্ম পরিবর্তন হতে পারে।
সূর্যোদয়ও একটি configuration
“সূর্যোদয়” শুনতে একটি সাধারণ দৃশ্যমান ঘটনা মনে হলেও calculation-এর একাধিক সংজ্ঞা আছে:
- সূর্যের center না upper limb;
- atmospheric refraction প্রয়োগ হবে কি না;
- standard horizon না true local horizon;
- geocentric না topocentric observer position;
- সমুদ্রপৃষ্ঠ না observer elevation।
আমাদের ঘোষিত configuration:
| ঘটনা | প্রকল্পের setting | কারণ |
|---|---|---|
| সূর্যোদয়/সূর্যাস্ত | Sun center, no refraction | পঞ্জিকা-দিনের ঘোষিত mathematical boundary |
| চন্দ্রোদয়/চন্দ্রাস্ত | Moon edge, apparent | দৃশ্যমান lunar rise/set convention-এর কাছাকাছি ফল |
| নিরয়ণ গ্রহ | Lahiri sidereal mode | Drik comparison-এর ঘোষিত ayanāṃśa |
অন্য পঞ্জিকা upper limb ও refraction-সহ sunrise ব্যবহার করলে কয়েক মিনিটের পার্থক্য হতে পারে। তিথি sunrise-এর খুব কাছে শেষ হলে সেই কয়েক মিনিট উৎসব বা উপবাসের দিন বদলে দিতে পারে।
ফল কোথায় এবং কেন আলাদা হয়?
| ফল | পার্থক্যের প্রধান কারণ | সম্ভাব্য প্রভাব |
|---|---|---|
| তিথির শেষ সময় | সূর্য–চন্দ্র longitude ও relative speed | ঘড়ির সময় বা sunrise presence বদলাতে পারে |
| নক্ষত্র | চন্দ্রের longitude ও ayanāṃśa | নক্ষত্র/পদ boundary পরিবর্তন |
| সংক্রান্তি | সৌর model ও নিরয়ণ zero-point | বাংলা মাসারম্ভ এক দিন বদলাতে পারে |
| গ্রহস্ফুট | Traditional mean/corrected model বনাম modern ephemeris | বিশেষত দীর্ঘ historical span-এ বড় angular difference |
| উৎসব | Astronomical difference + আলাদা rule tradition | উৎসব বা উপবাসের দিন/পারণ বদলাতে পারে |
| গ্রহণ | Modern lunar/solar geometry, observer location | দৃশ্যমানতা, contact times ও magnitude |
একটি ছোট angular difference সব সময় গুরুত্বপূর্ণ নয়। কিন্তু কোনো তিথি, নক্ষত্র বা রাশি boundary-এর কাছে থাকলে ছোট পার্থক্য নাম বা দিন পরিবর্তন করতে পারে। তাই শুধু average difference নয়, boundary-sensitive cases আলাদাভাবে পরীক্ষা করতে হয়।
আমাদের Hybrid Panchanga architecture
এই প্রকল্পে সব তথ্য জোর করে একটি engine থেকে নেওয়া হয় না। প্রতিটি layer তার উদ্দেশ্য অনুযায়ী নির্বাচিত:
| তথ্য বা service | প্রধান উৎস | উদ্দেশ্য |
|---|---|---|
| বাংলা সৌরমাস ও তারিখ | Surya Siddhanta / declared Modern Fit Sankranti branch | ঐতিহ্যগত বাংলা মাসারম্ভ পুনর্গঠন |
| তিথি, নক্ষত্র, করণ, যোগ | Surya Siddhanta classical result | Traditional Panchanga output |
| Traditional গ্রহস্ফুট ও lunar month | Surya Siddhanta engine | মুদ্রিত ঐতিহ্যগত পঞ্জিকা-তুলনা |
| সূর্যোদয় ও সূর্যাস্ত | Swiss Ephemeris, declared flags | স্থানীয় sunrise-based day boundary |
| চন্দ্রোদয় ও চন্দ্রাস্ত | Swiss Ephemeris | স্থানীয় apparent lunar events |
| গ্রহণ | Swiss Ephemeris | Modern contact time ও visibility |
| লগ্ন ও ভাব | Swiss Ephemeris + selected sidereal mode | স্থান ও সময়ভিত্তিক chart |
| উৎসব, উপবাস ও পারণ | Rule engine | Astronomical values-কে সম্প্রদায়ভিত্তিক নিয়মে প্রয়োগ |
+ Calendar and festival rules
+ Location, timezone and display policy
= Published Panchanga
Hybrid design গোপন রাখা হলে বিভ্রান্তিকর; প্রকাশ করা হলে এটি শক্তিশালী। ব্যবহারকারী বুঝতে পারেন কোন field ঐতিহ্যগত এবং কোন field আধুনিক observational model থেকে এসেছে।
উৎসবের পার্থক্য শুধু engine-এর কারণে নয়
একই astronomical values ব্যবহার করেও স্মার্ত, বৈষ্ণব, নিম্বার্ক বা অন্য tradition ভিন্ন দিন নির্বাচন করতে পারে। কারণ উৎসব-নিয়ম আলাদা reference time পরীক্ষা করে:
- অরুণোদয়;
- সূর্যোদয়;
- মধ্যাহ্ন;
- প্রদোষ;
- নিশীথ;
- পরবর্তী সূর্যোদয় ও পারণকাল।
তাই দুটি পঞ্জিকায় একাদশী বা জন্মাষ্টমীর দিন না মিললে প্রথমে তিনটি স্তর আলাদা করে দেখতে হবে:
- astronomical engine কি একই?
- sunrise ও ayanāṃśa settings কি একই?
- festival rule tradition কি একই?
দুটি ফল সঠিকভাবে কীভাবে তুলনা করবেন?
একটি ন্যায্য comparison-এর আগে নিচের configuration একই বা স্পষ্টভাবে নথিভুক্ত করুন:
- শহর, অক্ষাংশ ও দ্রাঘিমা;
- timezone এবং সেই তারিখের DST;
- calendar label—Gregorian, Julian বা proleptic Gregorian;
- geocentric বা topocentric position;
- ayanāṃśa ও exact sidereal mode;
- সূর্যোদয়ে center/limb, refraction ও horizon flags;
- Moon rise/set-এর limb ও apparent/true setting;
- time scale—UT, TT/ET ও Delta-T policy;
- engine এবং ephemeris data version;
- festival rule set ও tradition।
কোন কাজে কোন mode?
| ব্যবহার | প্রস্তাবিত mode | কারণ |
|---|---|---|
| পুরোনো বাংলা পঞ্জিকা পুনর্গঠন | Surya Siddhanta Traditional | Declared historical model continuity |
| আধুনিক printed Bengali date matching | Modern Sankranti Fit | Calibrated solar-date branch |
| আধুনিক গ্রহণ ও visibility | Drik / Swiss Ephemeris | Modern solar-lunar geometry |
| সূর্যোদয়, চন্দ্রোদয় ও লগ্ন | Drik / Swiss Ephemeris | Location-sensitive modern event calculation |
| একই দিনের comparative research | Both, side by side | Model difference পরিমাপ করা যায় |
ওয়েবসাইটে কী label দেখানো উচিত?
প্রতিটি result page-এ একটি সংক্ষিপ্ত method banner রাখা যায়:
Sunrise/Moonrise/Eclipse/Lagna: Swiss Ephemeris
Ayanāṃśa: Lahiri
Sun: center/no-refraction · Moon: edge/apparent
Festival rules: selected Vaiṣṇava/Smārta tradition
Bengali solar date: Traditional অথবা Modern Fit—যেটি চালু
এতে ফলের পাশে অতিরিক্ত দীর্ঘ ব্যাখ্যা দরকার হয় না, কিন্তু গবেষকের জন্য reproducibility বজায় থাকে। Drik-only page-এ স্পষ্টভাবে “Drik Panchanga” এবং traditional page-এ “Surya Siddhanta Panchanga” লেখা উচিত।
উপসংহার
সূর্যসিদ্ধান্তীয় ও দৃক্সিদ্ধান্তীয় পদ্ধতি প্রতিদ্বন্দ্বী software brand নয়; তারা ভিন্ন mathematical assumptions ও গবেষণার উদ্দেশ্য প্রকাশ করে। Traditional model আমাদের প্রাচীন computational tradition, মুদ্রিত পঞ্জিকা ও দীর্ঘ ঐতিহাসিক ধারাবাহিকতা অধ্যয়নের সুযোগ দেয়। Modern Drik ephemeris বর্তমান astronomical position, rise/set, eclipse ও location-sensitive event নির্ণয়ে শক্তিশালী।
তিথি বা নক্ষত্রের গাণিতিক বিভাগ উভয় পদ্ধতিতে একই হলেও input longitude আলাদা হতে পারে। উৎসবের ফল আবার astronomical engine-এর পাশাপাশি sunrise convention ও tradition-specific rule-এর ওপর নির্ভর করে। তাই একটি সংখ্যাকে context ছাড়া “সঠিক” ঘোষণা করার বদলে model, input এবং rule প্রকাশ করাই উত্তম।
আমাদের hybrid Panchanga এই নীতিই অনুসরণ করে: ঐতিহ্যগত ফলকে তার পরিচয়সহ রাখা, modern astronomy-কে প্রয়োজনীয় ক্ষেত্রে ব্যবহার করা এবং দুই স্তরকে নীরবে একে অন্যের নামে প্রকাশ না করা।
তথ্যসূত্র ও আরও পাঠ
- Ebenezer Burgess, Translation of the Sûrya-Siddhânta: A Text-book of Hindu Astronomy, 1860.
- Astrodienst—Swiss Ephemeris official documentation.
- Swiss Ephemeris Programmer’s Documentation; sidereal modes, rise/set, eclipse ও topocentric functions.
- Astrodienst—Sidereal Ephemeris files, Lahiri.
- সূর্য সিদ্ধান্ত পঞ্জিকা প্রকল্পের SuryaSiddhantaEngine, SwissEphemerisEngine এবং festival-rule implementation notes.
মন্তব্য, আলোচনা ও প্রশ্ন