pypfda v1.0: An open-source, model-agnostic particle-filter engine for online sequential paleo data assimilation in Earth system models
Abstract. Data assimilation combines observations with the dynamics of a model to estimate the state of a system; in paleoclimatology it merges proxy records with climate models. Most reconstructions use the offline approach, in which the assimilated state does not persist, so slow processes such as the Atlantic overturning are not carried through time. We present pypfda v1.0, an open-source Python engine that runs an online particle filter inside a coupled Earth system model. At each analysis, ensemble members are weighted by their fit to the proxies, and the best-fitting members are copied and perturbed before the simulation continues, which preserves the ocean's multiyear memory without offline calibration or surrogate models. The engine connects to any model through four functions, so adding a model requires recompiling neither the model nor the filter. We tested it with the coupled model CM2Mc-BLING in twin experiments, in which 59 synthetic sea surface temperature proxies drawn from one model run constrain a 100-member ensemble that reconstructs the Atlantic Meridional Overturning Circulation (AMOC), a quantity the proxies do not observe directly. Skill appears only when the members start from diverse ocean states and when the analysis interval matches the ocean's timescales; a five-year interval works best. In a 300-year experiment, the reconstructed AMOC correlates with the truth at r = +0.78, while an ensemble without assimilation shows no correlation. Copying members at each analysis concentrates the ensemble's ancestry, and the 300-year run converges to a single lineage after about 155 years, while skill is maintained because each analysis realigns the ensemble with the proxies. Because the observation operator is a separate module, proxy system models can be added for reconstructions with real proxies.