Durmuhurtham windows
panchangam.durmuhurtham
Weekday tables select proportional daytime Muhurtas plus the Tuesday night exception.
Assurance
| Level | Current statement |
|---|---|
| Documented and traceable | Yes — the canonical record includes the process and a worked example. |
| Regression or reproduction checked | Linked to 1 repository test file(s). |
| Independently source-supported | Partial support only; read the provenance note and limitations before generalizing. |
Computation method
Method type: decision-table
Divide daylight into 15 equal Muhurtas and return the weekday-selected indices; on Tuesday also divide the night into 15 and return its seventh part.
Process
- Read one or two 1-based daytime indices from DURMUHURTA_DAY_MUHURTAS for the weekday.
- Set day Muhurta length to (sunset - sunrise) / 15 and construct each selected interval.
- Set night Muhurta length to (next_sunrise - sunset) / 15.
- If the weekday has a night-table entry, currently only Tuesday part 7, append that interval.
Formulae
Selected Muhurta part
part_size = (period_end - period_start) / 15
start_p = period_start + (p - 1) * part_size
end_p = period_start + p * part_size- p: 1-based table-selected Muhurta
- period: daylight or Tuesday night
Worked example
Hyderabad, Thursday 2026-06-11
Inputs
- Sunrise: 05:41:11 IST
- Sunset: 18:50:12 IST
- Thursday weekday index 4 selects daytime parts 6 and 12
Calculation
- Daylight / 15 = 52 minutes 36.067 seconds.
- Apply the part formula for p=6 and p=12.
Result
- 10:04:11-10:56:47 IST
- 15:19:48-16:12:24 IST
Method notes
- Tuesday needs next-sunrise context because its second window is a night Muhurta.
Contract
Owning layer: engine-core
Claim kind: textual-rule
Time basis: Selected fifteenths of local day or night.
Inputs
- weekday
- sunrise
- sunset
- next sunrise
Outputs
- one or more Durmuhurtham windows
References and evidence
Evidence classes: textual, published_panchangam
Verification states: partially_verified
Representative values are compared; exact table locators remain grouped.
panchangam.mixed_daily_windows
Evidence class: textual
Verification state: partially_verified
Locator: B. V. Raman, Chapter III, Nakshatra Tyajyakala table, inspected in the 2020 Chistabo derivative at internal printed p. 7 (physical PDF p. 10), and Chapter V section 7, Durmuhurta, internal printed p. 13 (physical PDF p. 16); regional tables remain regression-pinned
Last reviewed: 2026-09-04
Scope: The auspicious, inauspicious and Choghadiya response objects are mixed containers. Raman supports the four-Ghati Nakshatra Tyajyakala concept and his printed Durmuhurta scheme, but the project's regional weekday tables are not identical to Raman's table and the remaining Brahma Muhurta, Abhijit, Amrita Kalam, Rahu Kalam, Gulika, Yamagandam and Choghadiya components do not yet have criterion-level textual claims. This state records partial evidence, not umbrella verification.
Sources
- Muhurtha (Electional Astrology) — B. V. Raman; UBS Publishers' Distributors, 1993, ISBN 9788185674681, 181 catalogued pages; authority type:
modern_synthesis - Muhurtha (Electional Astrology) — Chistabo re-edited derivative — B. V. Raman; re-edited by Simon (Chistabo); 2020 re-edited transcription, 78 physical PDF pages; authority type:
inspected_derivative - Muhurta Chintamani — Rama Daivajna; Undated Sanskrit text with Hindi commentary, Internet Archive identifier muhurta-chintamani-hindi; authority type:
primary_text_hindi_commentary
The complete machine-readable source registry is available in provenance.json. A regression fixture or same-code reproduction is not independent verification.
Reproduce and review
Run the linked tests, then the complete offline contract:
python tools/verify_project.pyPublic surfaces
python-librarymcpicswebsite
Limitations
- The Tuesday night exception requires next-sunrise context.
Implementation
- owner:
telugu_panchangam/engines/base.py—PanchangamEngine._durmuhurtham
This route is generated from computations.json. Edit the registry and canonical reference prose in the same pull request as a behavior change.