Validation of the custom Holocene Data Assimilation reconstruction against
published Holocene global temperature reconstructions. Reference datasets
are discovered at runtime from reference_data/ — any CSV
with columns age_BP, median, q05, q95 or
age_BP, anomaly, uncertainty_1sigma will be used.
Pearson correlation (R) and Nash–Sutcliffe coefficient of efficiency (CE) of the ensemble-median GMST against each reference over their common age range. CE = 1 is perfect; CE = 0 equals climatology; CE < 0 is worse than climatology.
| Reference | Overlap | R | CE |
|---|---|---|---|
| erb2022_gmst | 4.0–11994.0 BP (1200 pts) | 0.9945 | 0.9877 |
| kaufman2020_temp12k | 100.0–11900.0 BP (119 pts) | 0.8526 | -1.1521 |
Mean temperature anomaly for 5500–6500 BP relative to 0–1000 BP baseline. Robinson projection.
Side-by-side 6 ka temperature anomaly for the custom reconstruction and each spatial reference, plus their difference. Pattern correlation (R) and area-weighted RMSE are computed after nearest-neighbor regridding of the reference onto the reconstruction grid.
| Reference | Pattern R | RMSE (°C) | Recon geo mean | Ref geo mean |
|---|---|---|---|---|
| erb2022 | 0.9766 | 0.0493 | +0.093 °C | +0.085 °C |
For each proxy site, the reconstruction’s 6 ka anomaly is sampled via nearest-neighbor on the model grid, then compared to the proxy’s own 6 ka anomaly (5500–6500 BP relative to 0–1000 BP baseline, falling back to the record mean if the modern baseline is absent). R, RMSE, and bias (recon − proxy) summarize the match.
| Dataset | N | R | RMSE (°C) | Bias (°C) |
|---|---|---|---|---|
| temp12k_v102_proxies | 1174 | 0.1040 | 1.8542 | -0.1662 |
Comparison of the proxy records in this run’s
lipd_legacy.pkl against
Temp12k 1.0.2 (Erb et al. 2022), the version used by the published
Erb et al. 2022 reconstruction. Records are matched on
paleoData_TSid after the same
paleoData_inCompilation == Temp12k +
paleoData_units == degC filter that
da_load_proxies.py applies at runtime.
| Statistic | Custom | Temp12k 1.0.2 (Erb et al. 2022) |
|---|---|---|
| Records | 1,201 | 1,276 |
| Distinct archive types | 8 | 8 |
| Earliest record start (yr BP) | 1,277,346 | 1,277,346 |
| Latest record end (yr BP) | -275 | -275 |
| Median record length (yr) | 11403 | 11403 |
| Median observations per record | 71 | 71 |
| Archive | Shared | Custom-only | Temp12k 1.0.2 (Erb et al. 2022)-only | Total |
|---|---|---|---|---|
| LakeSediment | 627 | 35 | 67 | 729 |
| MarineSediment | 285 | 49 | 72 | 406 |
| Peat | 167 | 10 | 24 | 201 |
| GlacierIce | 10 | 3 | 5 | 18 |
| Midden | 8 | 0 | 2 | 10 |
| Speleothem | 3 | 0 | 2 | 5 |
| Wood | 3 | 0 | 0 | 3 |
| GroundIce | 1 | 0 | 0 | 1 |
| Total | 1104 | 97 | 172 | 1373 |
Records covering each 250-yr age bin, partitioned by which database they belong to.
Records present in this reconstruction’s proxy database but absent from Temp12k 1.0.2 (Erb et al. 2022) — typically records added in later Temp12k versions or pulled from filtered queries.
| TSID | Archive | Dataset | Age range (BP) | n_obs |
|---|---|---|---|---|
GH2d963782 | MarineSediment | BS79_38.Cacho.2001 | 867–24,517 | 71 |
GH6edd69de | MarineSediment | GeoB33131.Lamy.2002 | 283–6,990 | 75 |
LPD52d54dc4 | MarineSediment | GEOFAR_KF16_MgCa.Repschlager.2016 | 524–11,258 | 98 |
LPD537be86c | Peat | SouthernCalifornia.Ohlwein.2012 | 408–9,276 | 22 |
LPD5d932ca5 | MarineSediment | PP10-07.Mary.2016 | 422–10,150 | 206 |
LPD71287822 | MarineSediment | TTR17_434G.Rodrigo-Gamiz.2014 | 27–13,728 | 92 |
LPD73260700 | MarineSediment | PP10-07.Mary.2016 | 422–10,150 | 206 |
LPD74bc6584 | LakeSediment | LittlePondRoyalston.Marsicek.2013 | 0–11,000 | 221 |
LPD779b21dc | LakeSediment | BloodPond.Marsicek.2013 | 0–11,000 | 221 |
LPD7abab671-dup | GlacierIce | LawDome.Dahl-Jensen.1999 | -45–8,692 | 35 |
LPD92d845a8 | MarineSediment | PP10-07.Mary.2016 | 422–10,150 | 206 |
LPD9c79485dxxxx | MarineSediment | ODP658C_UK37.Zhao.1995 | 137–22,589 | 203 |
LPDa0c55c63 | MarineSediment | PP10-07.Mary.2016 | 422–10,150 | 206 |
LPDadaae75f | MarineSediment | SN-6.Tiwari.2015 | 154–4,772 | 36 |
LPDb59e4b87 | Peat | SouthernCalifornia.Ohlwein.2012 | 10,469–11,446 | 6 |
LPDc82d344d | MarineSediment | GEOFAR_KF16_MgCa.Repschlager.2016 | 524–11,258 | 98 |
M2L4bz5nk5qP | LakeSediment | BanksIsland-12.Gajewski.2000 | 175–10,183 | 33 |
M2Lzkp2ld6fP | LakeSediment | BanksIsland-12.Gajewski.2000 | 175–10,183 | 33 |
PYT2264KMU9 | LakeSediment | Trout.Irvine.2012 | 63–9,884 | 31 |
PYT2GZRWCSF | LakeSediment | Qipisarqo.Frechette.2009 | 8–8,634 | 50 |
PYT5H6FC5I1 | LakeSediment | Qipisarqo.Frechette.2009 | 8–8,634 | 50 |
PYT79QPULU7 | LakeSediment | Trout.Irvine.2012 | 1,784–15,424 | 67 |
PYT917S9C8J | MarineSediment | GIK17748-2.Kim.2002 | 1,080–16,070 | 54 |
PYTDSG9BNO2 | MarineSediment | GIK23258.Sarnthein.2003 | 698–13,987 | 285 |
PYTH91MXU0Z | MarineSediment | P1003.Sejrup.2011 | -48–7,881 | 649 |
PYTP4VYPRWB | LakeSediment | UpperFly.Bunbury.2009 | 0–13,329 | 53 |
PYTQ5AK802P | LakeSediment | Holebudalen.Seppa.2009 | -10–8,929 | 66 |
PYTQBB7JT6P | LakeSediment | sjuuodjijaure.Rosen.2001 | 167–9,263 | 48 |
PYTRS33LNIK | MarineSediment | GIK23258.Sarnthein.2003 | 698–13,987 | 285 |
PYTUQPUNFJT | Peat | Corser.Nichols.2014 | 103–11,116 | 36 |
Records used by the published reconstruction but missing from this custom run — typically records dropped by the user’s filter or removed from later Temp12k versions.
| TSID | Archive | Dataset | Age range (BP) | n_obs |
|---|---|---|---|---|
GH06e59526 | MarineSediment | MD79-257.Levi.2007 | 1,554–15,695 | 47 |
LPD27f34021 | Peat | Yakumo.Leipe.2013 | 40–5,506 | 38 |
LPD3267fe5d | MarineSediment | PP10-07.Mary.2016 | 422–10,150 | 206 |
LPD5c8693b4 | MarineSediment | MD01-2416.Sarnthien.2004 | 5,727–11,920 | 41 |
LPD7abab671 | GlacierIce | LawDome.Dahl-Jensen.1999 | -45–8,692 | 35 |
M2L1fcqp9rpP | LakeSediment | EC1.Gajewski.1993 | 58–6,610 | 32 |
M2L1r9snju2P | LakeSediment | Atocas.Gauthier.1981 | 0–11,977 | 41 |
M2L68fmqq0lP | LakeSediment | Atocas.Gauthier.1981 | 0–11,977 | 41 |
M2L68iw0l2eP | LakeSediment | NorthPond.Whitehead.1978 | -105–13,083 | 55 |
M2L6qbln98nP | LakeSediment | LoneFoxLake.MacDonald.1985 | -32–12,638 | 37 |
M2L726ed2xjP | LakeSediment | CH2.Garralla.1992 | 1–8,332 | 89 |
M2L7thzxje2P | LakeSediment | Hams.Bennett.1987 | -29–11,945 | 82 |
M2L8sc7gn3mP | LakeSediment | Hams.Bennett.1987 | -29–11,945 | 82 |
M2LdjjxzkgtP | LakeSediment | Queens.Moser.1990 | 0–8,840 | 33 |
M2Lfut6kmdqP | LakeSediment | Queens.Moser.1990 | 0–8,840 | 33 |
M2Lg77nq75zP | LakeSediment | EC1.Gajewski.1993 | 58–6,610 | 32 |
M2Lh4fhttxhP | LakeSediment | CH2.Garralla.1992 | 1–8,332 | 89 |
M2LiaueutgvP | LakeSediment | Eldora.Maher.1969 | 9–8,640 | 44 |
M2Ll9trg0t0P | LakeSediment | BI2Lake.Gajewski.1992 | -42–7,791 | 43 |
M2Lmx8lcp55P | LakeSediment | PerchLake_Manitoba.Ritchie.NA | -14–6,058 | 45 |
M2LnpuqcuqlP | LakeSediment | BanksIsland-15.Gajewski.2000 | 14–10,183 | 62 |
M2Lq7umd2r5P | LakeSediment | Radtke.Webb.1983 | 1–13,358 | 49 |
M2Lqd7jeqa8P | LakeSediment | BanksIsland-15.Gajewski.2000 | 14–10,183 | 62 |
M2Lqditl4qyP | LakeSediment | Billys.Jacobson.1975 | 0–11,474 | 77 |
M2Lr58abc8kP | LakeSediment | Atocas.Gauthier.1981 | 0–11,977 | 41 |
M2LsdjhmhltP | LakeSediment | SaintCalixte.Larouche.NA | 77–11,209 | 35 |
M2Ltt67sy8bP | LakeSediment | SaintCalixte.Larouche.NA | 77–11,209 | 35 |
M2Luwan852aP | LakeSediment | SaintCalixte.Larouche.NA | 77–11,209 | 35 |
M2Lv9gueit2P | LakeSediment | EC1.Gajewski.1993 | 58–6,610 | 32 |
M2Lvlvf54mwP | LakeSediment | Demont.Kapp.NA | 13–13,282 | 73 |
Custom reconstruction ensemble spread alongside reference medians. X-axis runs from the oldest age (left) to present (right).
Every ensemble member plotted individually (subsampled to 200 for readability), showing the full reconstruction spread.
Year-by-year difference between the custom reconstruction median and the primary reference. Red = warmer, Blue = cooler.