# Global Accuracy Study **Study date:** February 2025 **pray-calc version:** 2.0.0 **Reference:** MSC (Moonsighting Committee Worldwide) observation-calibrated model **Test cases:** 18 city/date combinations **Latitude range:** 6.2°S (Jakarta) to 51.5°N (London) See [Methodology](Research-Methodology) for the scoring approach, reference standard, and test infrastructure. --- ## Summary Table Error is `method_time − MSC_reference` in minutes. Positive = later than MSC, negative = earlier. `N/A` = sun never reaches the required depression angle (method is undefined for that case). | # | City | Date | Lat | Elev | Sunrise | Maghrib | PCD Fajr° | PCD Isha° | MSC Fajr ref | MSC Isha ref | | --- | ------------------ | ------ | ------- | ----- | ------- | ------- | --------- | --------- | --------------- | -------------- | | 1 | New York, USA | Jun 21 | 40.71°N | 10m | 05:25 | 20:30 | 16.21° | 12.41° | 03:35 (110 min) | 21:49 (79 min) | | 2 | New York, USA | Dec 21 | 40.71°N | 10m | 07:16 | 16:32 | 17.48° | 17.12° | 05:40 (96 min) | 18:06 (94 min) | | 3 | New York, USA | Mar 21 | 40.71°N | 10m | 06:56 | 19:09 | 17.48° | 15.28° | 05:27 (89 min) | 20:26 (77 min) | | 4 | Toronto, Canada | Jun 21 | 43.65°N | 76m | 05:36 | 21:02 | 15.33° | 11.71° | 03:43 (113 min) | 22:22 (80 min) | | 5 | London, UK | Jun 21 | 51.51°N | 11m | 04:43 | 21:21 | 11.88° | 10.00° | 02:43 (120 min) | 22:41 (80 min) | | 6 | London, UK | Dec 21 | 51.51°N | 11m | 08:03 | 15:53 | 14.69° | 14.24° | 06:21 (102 min) | 17:32 (99 min) | | 7 | Istanbul, Turkey | Jun 21 | 41.01°N | 114m | 05:32 | 20:39 | 16.28° | 12.40° | 03:41 (111 min) | 21:58 (79 min) | | 8 | Makkah, S. Arabia | Jun 21 | 21.42°N | 277m | 05:39 | 19:05 | 19.79° | 16.56° | 04:05 (94 min) | 20:22 (77 min) | | 9 | Makkah, S. Arabia | Dec 21 | 21.42°N | 277m | 06:54 | 17:43 | 19.58° | 19.36° | 05:28 (86 min) | 19:08 (85 min) | | 10 | Tehran, Iran | Jun 21 | 35.69°N | 1191m | 04:48 | 19:23 | 17.95° | 14.09° | 03:02 (106 min) | 20:42 (79 min) | | 11 | Cairo, Egypt | Jun 21 | 30.06°N | 23m | 04:54 | 18:59 | 18.73° | 14.97° | 03:13 (101 min) | 20:17 (78 min) | | 12 | Cairo, Egypt | Dec 21 | 30.06°N | 23m | 06:46 | 16:59 | 19.13° | 18.72° | 05:15 (91 min) | 18:28 (89 min) | | 13 | Karachi, Pakistan | Jun 21 | 24.86°N | 8m | 05:43 | 19:24 | 19.43° | 16.01° | 04:06 (97 min) | 20:42 (78 min) | | 14 | Dhaka, Bangladesh | Jun 21 | 23.81°N | 4m | 05:12 | 18:48 | 19.49° | 16.19° | 03:36 (96 min) | 20:06 (78 min) | | 15 | Jakarta, Indonesia | Jun 21 | 6.21°S | 8m | 06:01 | 17:47 | 18.72° | 18.72° | 04:43 (78 min) | 19:05 (78 min) | | 16 | Singapore | Dec 21 | 1.35°N | 15m | 07:01 | 19:04 | 18.23° | 18.23° | 05:45 (76 min) | 20:20 (76 min) | | 17 | Almaty, Kazakhstan | Jun 21 | 43.22°N | 848m | 04:12 | 19:36 | 15.73° | 12.05° | 02:19 (113 min) | 20:56 (80 min) | | 18 | Riyadh, S. Arabia | Mar 21 | 24.69°N | 620m | 05:55 | 18:04 | 20.04° | 18.25° | 04:31 (84 min) | 19:20 (76 min) | --- ## Accuracy Rankings **Mean Absolute Error vs MSC reference, sorted by combined MAE.** `n_Fajr` / `n_Isha` = number of valid (non-NaN) results included in MAE calculation. | Rank | Method | Fajr MAE (min) | Isha MAE (min) | Combined MAE | n_Fajr | n_Isha | | ----- | ------------------- | -------------- | -------------- | ------------ | ------ | ------ | | 1 | MSC | 0.00 | 0.00 | 0.00 | 18 | 18 | | **2** | **★ PCD (Dynamic)** | **0.64** | **1.30** | **0.97** | **18** | **18** | | 3 | Qatar | 10.21 | 10.22 | 10.21 | 17 | 18 | | 4 | UAQ | 11.08 | 10.22 | 10.65 | 17 | 18 | | 5 | MWL | 10.21 | 17.09 | 13.65 | 17 | 17 | | 6 | DIBT | 10.21 | 17.09 | 13.65 | 17 | 17 | | 7 | IGUT | 9.81 | 17.98 | 13.90 | 17 | 18 | | 8 | Kuwait | 10.21 | 18.92 | 14.56 | 17 | 17 | | 9 | Karachi | 10.21 | 20.89 | 15.55 | 17 | 17 | | 10 | SAMR | 11.54 | 19.94 | 15.74 | 17 | 18 | | 11 | Egypt | 14.49 | 18.92 | 16.71 | 17 | 17 | | 12 | MUIS | 17.79 | 20.89 | 19.34 | 17 | 17 | | 13 | ISNA | 19.44 | 19.94 | 19.69 | 18 | 18 | | 14 | ISNACA | 26.96 | 18.45 | 22.71 | 18 | 18 | | 15 | UOIF | 31.59 | 20.00 | 25.80 | 18 | 18 | **Notes on n values:** Methods with `n_Fajr = 17` or `n_Isha = 17` had one NaN result (typically London summer). Methods returning NaN for that case are not penalized in MAE: the actual failure rate is noted in the High-Latitude section below. --- ## Per-Case Detail: Fajr Errors by Method Error in minutes vs MSC reference (`+` = later, `−` = earlier). `N/A` = sun does not reach required depression. | City / Date | PCD | UOIF | ISNACA | ISNA | SAMR | IGUT | MWL | DIBT | Karachi | Kuwait | UAQ | Qatar | Egypt | MUIS | | ------------- | -------- | ----- | ------ | ----- | ----- | ----- | ----- | ----- | ------- | ------ | ----- | ----- | ----- | ----- | | NY Jun | **−0.2** | +34.0 | +26.3 | +10.2 | +1.7 | −13.6 | −16.4 | −16.4 | −16.4 | −16.4 | −21.2 | −16.4 | −31.3 | −36.6 | | NY Dec | **+0.1** | +30.6 | +25.0 | +13.8 | +8.3 | −1.1 | −2.7 | −2.7 | −2.7 | −2.7 | −5.5 | −2.7 | −10.9 | −13.7 | | NY Mar | **+0.2** | +30.0 | +24.6 | +13.8 | +8.3 | −1.0 | −2.7 | −2.7 | −2.7 | −2.7 | −5.4 | −2.7 | −11.0 | −13.7 | | Toronto Jun | **−0.8** | +29.9 | +21.1 | +2.5 | −7.6 | −26.2 | −29.8 | −29.8 | −29.8 | −29.8 | −36.0 | −29.8 | −49.3 | −56.7 | | London Jun | **−0.4** | −2.4 | −20.3 | −87.8 | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | | London Dec | **+0.1** | +18.6 | +11.6 | −2.1 | −8.8 | −20.2 | −22.2 | −22.2 | −22.2 | −22.2 | −25.6 | −22.2 | −32.2 | −35.5 | | Istanbul Jun | **−0.9** | +34.4 | +26.6 | +10.2 | +1.6 | −13.9 | −16.8 | −16.8 | −16.8 | −16.8 | −21.7 | −16.8 | −32.0 | −37.4 | | Makkah Jun | **−0.8** | +39.5 | +34.4 | +24.3 | +19.1 | +10.2 | +8.7 | +8.7 | +8.7 | +8.7 | +6.0 | +8.7 | +0.7 | −2.0 | | Makkah Dec | **−0.5** | +34.1 | +29.5 | +20.3 | +15.8 | +8.0 | +6.7 | +6.7 | +6.7 | +6.7 | +4.4 | +6.7 | −0.1 | −2.4 | | Tehran Jun | **−2.5** | +38.6 | +32.1 | +18.6 | +11.6 | −0.7 | −2.9 | −2.9 | −2.9 | −2.9 | −6.6 | −2.9 | −14.3 | −18.2 | | Cairo Jun | **−0.2** | +40.1 | +34.4 | +22.6 | +16.6 | +6.2 | +4.3 | +4.3 | +4.3 | +4.3 | +1.2 | +4.3 | −5.1 | −8.4 | | Cairo Dec | **0.0** | +34.8 | +29.9 | +20.1 | +15.2 | +7.0 | +5.5 | +5.5 | +5.5 | +5.5 | +3.1 | +5.5 | −1.7 | −4.1 | | Karachi Jun | **−0.1** | +40.4 | +35.1 | +24.4 | +19.0 | +9.6 | +7.9 | +7.9 | +7.9 | +7.9 | +5.1 | +7.9 | −0.5 | −3.3 | | Dhaka Jun | **−0.3** | +39.8 | +34.6 | +24.1 | +18.8 | +9.6 | +7.9 | +7.9 | +7.9 | +7.9 | +5.2 | +7.9 | −0.3 | −3.1 | | Jakarta Jun | **−0.3** | +29.0 | +24.7 | +15.9 | +11.6 | +4.2 | +2.9 | +2.9 | +2.9 | +2.9 | +0.7 | +2.9 | −3.7 | −5.9 | | Singapore Dec | **−0.4** | +26.9 | +22.5 | +13.8 | +9.4 | +2.0 | +0.7 | +0.7 | +0.7 | +0.7 | −1.5 | +0.7 | −5.9 | −8.1 | | Almaty Jun | **−3.0** | +30.8 | +22.2 | +4.0 | −5.7 | −23.7 | −27.2 | −27.2 | −27.2 | −27.2 | −33.1 | −27.2 | −45.7 | −52.6 | | Riyadh Mar | **−0.9** | +34.8 | +30.4 | +21.5 | +17.1 | +9.5 | +8.2 | +8.2 | +8.2 | +8.2 | +6.0 | +8.2 | +1.5 | −0.7 | --- ## Per-Case Detail: Isha Errors by Method | City / Date | PCD | UOIF | ISNACA | ISNA | SAMR | IGUT | MWL | DIBT | Karachi | Kuwait | UAQ | Qatar | Egypt | MUIS | | ------------- | --------- | ----- | ------ | ------ | ------ | ----- | ----- | ----- | ------- | ------ | ----- | ----- | ----- | ----- | | NY Jun | **+0.4** | −2.8 | +4.9 | +21.1 | +21.1 | +12.9 | +38.4 | +38.4 | +47.6 | +43.0 | +11.0 | +11.0 | +43.0 | +47.6 | | NY Dec | **−0.1** | −28.6 | −23.0 | −11.8 | −11.8 | −17.4 | −0.8 | −0.8 | +4.7 | +2.0 | −4.0 | −4.0 | +2.0 | +4.7 | | NY Mar | **−0.9** | −18.7 | −13.3 | −2.5 | −2.5 | −7.9 | +8.5 | +8.5 | +14.0 | +11.2 | +13.0 | +13.0 | +11.2 | +14.0 | | Toronto Jun | **+0.8** | +3.3 | +12.1 | +30.7 | +30.7 | +21.2 | +51.5 | +51.5 | +63.0 | +57.1 | +10.0 | +10.0 | +57.1 | +63.0 | | London Jun | **+13.3** | +42.4 | +60.4 | +127.8 | +127.8 | +83.4 | N/A | N/A | N/A | N/A | +10.0 | +10.0 | N/A | N/A | | London Dec | **−0.1** | −15.6 | −8.6 | +5.1 | +5.1 | −1.8 | +18.6 | +18.6 | +25.2 | +21.9 | −9.0 | −9.0 | +21.9 | +25.2 | | Istanbul Jun | **+0.7** | −2.3 | +5.4 | +21.8 | +21.8 | +13.5 | +39.4 | +39.4 | +48.8 | +44.0 | +11.0 | +11.0 | +44.0 | +48.8 | | Makkah Jun | **+0.8** | −22.5 | −17.4 | −7.2 | −7.2 | −12.4 | +3.1 | +3.1 | +8.3 | +5.7 | +13.0 | +13.0 | +5.7 | +8.3 | | Makkah Dec | **+0.5** | −33.1 | −28.5 | −19.3 | −19.3 | −23.9 | −10.2 | −10.2 | −5.7 | −8.0 | +5.0 | +5.0 | −8.0 | −5.7 | | Tehran Jun | **+2.3** | −11.6 | −5.0 | +8.5 | +8.5 | +1.6 | +22.6 | +22.6 | +29.9 | +26.2 | +11.0 | +11.0 | +26.2 | +29.9 | | Cairo Jun | **+0.2** | −17.1 | −11.4 | +0.4 | +0.4 | −5.5 | +12.5 | +12.5 | +18.7 | +15.6 | +12.0 | +12.0 | +15.6 | +18.7 | | Cairo Dec | **0.0** | −32.8 | −27.9 | −18.1 | −18.1 | −23.0 | −8.4 | −8.4 | −3.5 | −5.9 | +1.0 | +1.0 | −5.9 | −3.5 | | Karachi Jun | **+0.1** | −21.4 | −16.1 | −5.4 | −5.4 | −10.8 | +5.5 | +5.5 | +11.1 | +8.3 | +12.0 | +12.0 | +8.3 | +11.1 | | Dhaka Jun | **0.0** | −22.1 | −16.9 | −6.3 | −6.3 | −11.6 | +4.4 | +4.4 | +9.8 | +7.1 | +12.0 | +12.0 | +7.1 | +9.8 | | Jakarta Jun | **+0.1** | −29.2 | −24.9 | −16.2 | −16.2 | −20.5 | −7.4 | −7.4 | −3.1 | −5.3 | +12.0 | +12.0 | −5.3 | −3.1 | | Singapore Dec | **−0.1** | −27.4 | −23.0 | −14.3 | −14.3 | −18.7 | −5.5 | −5.5 | −1.1 | −3.3 | +14.0 | +14.0 | −3.3 | −1.1 | | Almaty Jun | **+2.4** | +2.0 | +10.5 | +28.7 | +28.7 | +19.4 | +48.8 | +48.8 | +59.9 | +54.3 | +10.0 | +10.0 | +54.3 | +59.9 | | Riyadh Mar | **+0.5** | −27.2 | −22.8 | −13.9 | −13.9 | −18.4 | −5.0 | −5.0 | −0.6 | −2.8 | +14.0 | +14.0 | −2.8 | −0.6 | --- ## High-Latitude Edge Case London, UK on June 21 (51.5°N) is the most extreme test case. As the sun approaches its highest declination, it never reaches deep depression angles. | Method | Fixed Isha° | Isha result | | ------- | ----------- | -------------------------------------- | | UOIF | 12° | 23:24 (valid) | | ISNACA | 13° | 23:42 (valid) | | ISNA | 15° | 24:49 (technically computed, next day) | | SAMR | 15° | 24:49 (same as ISNA Isha) | | IGUT | 14° | 24:05 (next day) | | UAQ | +90 min | 22:51 (valid: not angle-based) | | Qatar | +90 min | 22:51 (valid: not angle-based) | | MSC | seasonal | 22:41 (valid: observation-based) | | **PCD** | **10.00°** | **22:54 (valid: adapted)** | | MWL | 17° | **N/A** | | DIBT | 17° | **N/A** | | Karachi | 18° | **N/A** | | Kuwait | 17.5° | **N/A** | | Egypt | 17.5° | **N/A** | | MUIS | 18° | **N/A** | Six of the 14 methods produce no Isha time at London in midsummer. PCD adapts by clamping to the 10° lower bound and produces 22:54: 13 minutes later than MSC's 22:41 (the largest single error in the study). The error is structural: at 51.5°N in June, the sky never fully darkens, and both the observation reference and any computed method are approximations of a genuinely ambiguous twilight condition. --- ## Dynamic Angle Profile How the PCD-computed depression angle varies across the test cases. | City | Lat | Season | Fajr° | Isha° | Closest Fixed Method | | --------- | ------ | ------ | ------ | ------ | -------------------- | | Jakarta | 6.2°S | Jun | 18.72° | 18.72° | UAQ (18.5°) | | Singapore | 1.4°N | Dec | 18.23° | 18.23° | MWL/DIBT (18°) | | Makkah | 21.4°N | Jun | 19.79° | 16.56° | MUIS (20°) / Egypt | | Makkah | 21.4°N | Dec | 19.58° | 19.36° | Egypt (19.5°) | | Riyadh | 24.7°N | Mar | 20.04° | 18.25° | MUIS (20°) | | Karachi | 24.9°N | Jun | 19.43° | 16.01° | Egypt (19.5°) | | Dhaka | 23.8°N | Jun | 19.49° | 16.19° | Egypt (19.5°) | | Cairo | 30.1°N | Jun | 18.73° | 14.97° | UAQ (18.5°) | | Cairo | 30.1°N | Dec | 19.13° | 18.72° | Egypt (19.5°) | | Tehran | 35.7°N | Jun | 17.95° | 14.09° | IGUT (17.7°/14°) | | New York | 40.7°N | Dec | 17.48° | 17.12° | IGUT (17.7°) | | New York | 40.7°N | Mar | 17.48° | 15.28° | IGUT (17.7°) | | Istanbul | 41.0°N | Jun | 16.28° | 12.40° | SAMR (16°) | | New York | 40.7°N | Jun | 16.21° | 12.41° | SAMR (16°) | | Almaty | 43.2°N | Jun | 15.73° | 12.05° | SAMR (16°) | | Toronto | 43.7°N | Jun | 15.33° | 11.71° | ISNA (15°) | | London | 51.5°N | Dec | 14.69° | 14.24° | ISNA (15°) | | London | 51.5°N | Jun | 11.88° | 10.00° | UOIF (12°) | The angle moves from ~20° at tropical latitudes in summer to ~12° at high-latitude summer. No fixed method tracks this gradient correctly. SAMR (16°) is closest for North American and Central Asian summers. ISNA (15°) handles Toronto and London winter. IGUT (17.7°) is closest for Tehran and mid-latitude winters. But each of these methods fails in other conditions: only PCD adapts dynamically across the full range. --- _[Research](Research) | [Methodology](Research-Methodology) | [Home-Territory Study](Research-Home-Territory) | [Observational Evidence](Research-Observational-Evidence)_