Open-source Sentinel-2 chlorophyll-a retrieval in the Westerschelde qualifies the Sado weak-Chl-a finding
This replication qualifies the original claim. Sent et al. (2021) found that Sentinel-2 MSI retrieves water-quality parameters with parameter-dependent accuracy — strong for turbidity but weak for chlorophyll-a, concluding that "for the key parameter Chl-a further research is needed, with a more complete set of match-ups." Testing that chlorophyll-a limb in an independent, more turbid estuary (the Westerschelde, 2016–2026) with a fully open-source atmospheric-correction chain (Acolite + Gons et al. 2005, the aGS chain), we obtained no useful agreement with in situ chlorophyll-a: R² = 0.10 over the full record (N = 33) and R² = 0.13 for the 2018–2020 subset (N = 14), with a negative regression slope and a positive bias. This does not confirm that an operationally reproducible, open-source chain can retrieve estuarine chlorophyll-a at the accuracy of the paper's selected cGS chain (R² = 0.63, C2RCC + Gons). Rather than contradicting the paper, the result supports and extends its central caution: chlorophyll-a is the parameter for which MSI retrieval is not yet reliable, and that weakness persists — indeed deepens — when the proprietary C2RCC step is replaced by an open-source processor and the method is transferred to a different optical regime.
From results/chla_satellite_acolite.parquet, agreement computed in log10 space (scripts/matchup_stats.py), matching the paper's log-scale treatment of Chl-a: Full record (2016–2026): N = 33, R² = 0.10, slope = −0.20, RMSE = 0.63 (log10), BIAS = +0.40 Original-window subset (2018–2020): N = 14, R² = 0.13, slope = −0.14, RMSE = 0.59 (log10), BIAS = +0.30 Satellite chlorophyll-a (median 8.7 µg/L, range 1.9–27.7) systematically exceeds the coincident Rijkswaterstaat in situ chlorophyll-a (median 3.1 µg/L, range 0.9–26.0) across six along-axis stations. The negative slope is the decisive feature: the retrieval does not track in situ chlorophyll-a at all, consistent with the Gons red-edge algorithm responding to backscatter/turbidity rather than pigment in this high-SPM estuary. For comparison, the original study's selected cGS chain reported R² = 0.63. Match-up figure: figures/main_result.png.
Three factors bound this conclusion and must be read together. 1. Processor change. The paper's headline Chl-a number (R² = 0.63) is the cGS chain (C2RCC + Gons). We ran the aGS chain (Acolite + Gons) because C2RCC exists only inside ESA SNAP and crashes natively in the container (docs/atmospheric-correction-choice.md). We therefore did not test cGS and cannot dispute its number. The paper itself reports Acolite as its worst- performing processor (mean BIAS 2.78, mean APD 254 percent), so a weaker aGS result is partly anticipated by the original study — a reason this is a qualification, not a contradiction. 2. Site and period change. This is a Replication, not a Reproduction: the Sado in situ data are not public (paper Data Availability Statement), so we validated in the Westerschelde (2016–2026), a different and more turbid mesotidal estuary. A different optical regime tests generalisability, not the correctness of the original analysis. We report both the full record and the 2018–2020 subset to separate the period change from the site change as far as the data allow. 3. Sample size. N = 33 (14 in the original window) over six stations is small — as in the original (N = 19–21) — so every R² carries wide uncertainty. The direction of the result (no useful agreement) is robust; its precise magnitude is not. A grid-sensitivity check on a HEALPix / DGGS (GRID4EARTH) representation of the corrected fields is deliberately out of scope here and deferred to a separate follow-up chain that will extend this one, so the primary validation stays on the native Sentinel-2 grid.