ক্যালেন্ডার পদ্ধতি ও উৎস | Methodology and Sources
Methodology and Calculations
This page explains how Bengali Calendar Now builds the monthly grid and how we source observance dates. When there is any conflict, we follow our primary source.
Scope
- Shows Bengali date for each Gregorian day, with a simple tithi label for context.
- Publishes Ekadashi, Amavasya, Purnima, festival, eclipse, Durga Puja and Shubho Din listings from the Panjika PDF sections supplied by the site owner.
- Provides a converter-style display for the Bengali month and day that users see in each cell.
Time zone and location
- All logic uses India Standard Time (IST, UTC+05:30).
- No daylight saving time is applied.
- The Bengali date model is configured for India. A Bangladesh start constant exists in code but is not active.
IST shift in code:
date.setTime(date.getTime() + (date.getTimezoneOffset() + 330) * 60 * 1000)
What is sourced and what is computed
1433 data taken from the supplied Panjika PDF sections
- Ekadashi, Amavasya and Purnima observance dates and listed time windows
- Festival, holiday, eclipse and Durga Puja schedules
- Shubho Din Nirghonto, Broto Kotha, Fardamala and annual horoscope summaries
Computed in the app
- Bengali date for each Gregorian day, used for display
- A simple per-day tithi label for context
- Month headers and weekday rows
Formulas and constants
- Synodic month:
29.530588853days - Reference new moon JD:
2451549.5(near 2000-01-06) - Bengali year model length:
365.2587564814815days - India start JD:
1938094.4629 - Bangladesh start JD available:
1938094.483733333(not active)
Gregorian to Julian Day
Function: ModernDate_to_Julianeday(y, m, d)
- Shifts Jan and Feb to months 13 and 14 of the previous year.
- Applies the Gregorian reform around JD 2299160.
- Returns a floating JD for use in calculations.
Tithi label per date (approximate)
This produces a tithi name inside each calendar cell. It is for context only. Final observance dates will be confirmed from the Panjika PDF when provided.
- Compute
daysSinceNewMoon = JD − 2451549.5. If negative, add whole synodic months until positive. - Set
tithiLength = 29.530588853 / 30. - Compute
tithiNumber = floor(daysSinceNewMoon / tithiLength) + 1, then wrap to 1..30 with((tithiNumber − 1) % 30) + 1. - Map 1..15 to Shukla tithis and 16..30 to Krishna tithis.
Limits
- Uses a mean lunar cycle. Does not use true Sun and Moon longitudes.
- Does not apply sunrise rules or Viddha checks.
- Does not separate Smarta and Vaishnava rules.
Bengali date model
Used to print the Bengali day number and the two Bengali month names shown in the header.
Constants
- Start JD (India):
1938094.4629 - Year length in model:
365.2587564814815days - Cumulative month boundaries
mas_len(days from year start):
index: 1 2 3 4 5 6
value: 30.93, 62.63, 94.00, 125.48, 156.49, 186.92
index: 7 8 9 10 11 12
value: 216.81, 246.32, 275.64, 305.09, 334.91, 365.26
Steps
- Convert the Gregorian date to JD:
nJD. jddiff = nJD − startjd.lastYearCount = floor(jddiff / 365.2587564814815).mesh = startjd + lastYearCount * 365.2587564814815.- Find month
isuch thatnJDis in[ps, floor(ns) + 1.75], whereps = mesh + mas_len[i]andns = mesh + mas_len[i+1]. - Bengali day =
floor(nJD − ps) + 1, month =i + 1, year =lastYearCount + 1.
The +1.75 day tolerance helps align month edges with common practice.
Month layout rules
- Fixed 6 rows by 7 columns grid for every month.
- Header shows two Bengali month names by sampling days inside the month.
- Weekday rows include Bengali names and English initials.
- Bengali digits are printed by mapping ASCII 0-9 to U+09E6 to U+09EF.
- The first day of a Bengali month gets a highlight.
- Today is detected in IST and highlighted.
Holidays and observances
- Cell decorations use a simple map of Gregorian date to holiday name.
- If multiple events share a date, they are joined and shown together.
- Ekadashi, Amavasya and Purnima are currently shown from the site’s existing tables and will be checked against the Panjika PDF when provided.
Sourcing policy
- ১৪৩৩ সালের রাশিফল, ব্রতকথা, দুর্গাপূজা, একাদশী, পূর্ণিমা, অমাবস্যা, পর্বদিন, গ্রহণ ও শুভদিনের তথ্য ব্যবহারকারীর সরবরাহ করা বেণীমাধব শীল ফুল পঞ্জিকা PDF থেকে যাচাই ও সম্পাদকীয়ভাবে সাজানো হয়েছে।
- We review and refresh the dataset each year.
- If printed sources differ, the site will state the selected source, location and verification date.
- Regional variations exist. The current build targets India.
Corrections
If you find an error, contact us with the date, location, and the relevant Panjika reference if possible. We check the report against the supplied source material and correct confirmed issues. Important fixes go into a simple change log.
Caveats
- Tithi labels in the grid use a mean lunar model. They are for context.
- True tithi start and end depend on the longitudes of the Sun and Moon and can vary by place.
- Ekadashi observance rules involve the sunrise tithi and related checks. Final observance rules will follow the verified Panjika source.
- The Bengali date model is practical. Near month boundaries some almanacs may differ.
Contact
For questions or corrections, email us at Coinsmudra@gmail.com.