Replaces the original JS calibration library with a pure Python pipeline for collecting and back-calculating solar depression angles from human-verified Fajr and Isha prayer sightings. What this does: - src/pipeline.py: master pipeline; fetches iCal + manual records, back-calculates angles via PyEphem, applies quality filters, exports two clean CSVs - src/collect/openfajr.py: parses the OpenFajr Birmingham iCal feed (~4,018 records) - src/collect/verified_sightings.py: manually compiled records from peer-reviewed studies (Egypt, Saudi Arabia, Malaysia, Indonesia, UK, USA, Canada, and more) - src/angle_calc.py: PyEphem back-calculation with atmospheric refraction - src/elevation.py: Open-Elevation API batch lookup Datasets generated: - data/processed/fajr_angles.csv: 4,105 confirmed Fajr records, 35 locations, latitude range -37.8 to 53.7 degrees, date range 1985-2026 - data/processed/isha_angles.csv: 43 confirmed Isha records, 20+ locations Also includes: - notebooks/01_exploratory_analysis.ipynb: latitude, TOY, elevation pattern analysis - research/: academic paper summaries (not training data) - data/raw/sources.md: full citation table for all data sources
1.6 KiB
Hail, Saudi Arabia — Khalifa 2018
Paper
Khalifa, A.S. "Astronomical determination of Fajr and Isha prayer times at Hail, Saudi Arabia." NRIAG Journal of Astronomy and Geophysics, 7: 22-28, 2018.
Location
Hail (27.52°N, 41.70°E, ~1020m elevation) — a city on the Najd plateau in central Saudi Arabia. The high elevation and desert conditions produce excellent sky transparency.
Method
80 total observation nights in 2014-2015. 32 nights selected for excellent atmospheric visibility (no clouds, no dust). Naked-eye observation by trained observers.
Results
- Mean Fajr depression: 14.4° (range 12.8°-16.1°)
- Mean Isha depression (Shafaq Abyad): 14.8° (range 13.2°-16.4°)
- Seasonal variation: Higher angles in winter, lower in summer (consistent with other studies)
Significance
At 1020m elevation, Hail is the highest-elevation site in the Saudi/Gulf region with published Fajr observations. The results show a slightly higher mean angle than sea-level desert sites in Egypt (13.5°-14.5°), consistent with the hypothesis that elevation increases the apparent depression angle at true dawn (the observer is above more of the atmosphere, so the first light of dawn appears at a slightly steeper angle).
The Hail dataset is particularly useful for the elevation variable in the ML model — it is one of the few high-altitude desert sites with per-season data.
Note for ML Training
The per-season records in verified_sightings.py for Hail are constructed from the paper's
reported seasonal means, with observation times estimated from sunrise data. They are marked
as "time inferred" in data/raw/sources.md.