resilience-memory-utac
GenesisAeon Package 97 — real critical-slowing-down statistics and post-perturbation resilience-debt tracking. Deliberately has no UTAC/CREP/AFET bridge — see DISCLAIMER.md.
What's real here
- Dakos et al. (2012, PLOS ONE): the generic early-warning-signal workflow — detrend a time series, compute rolling variance / lag-1 autocorrelation / skewness, test each for a trend with Kendall's tau.
- Scheffer et al. (2009, Nature): the underlying concept — recovery rate from small perturbations declines as a system nears a critical transition ("critical slowing down").
- van Nes & Scheffer (2007, American Naturalist): slow recovery from perturbations, tracked here as an explicit "resilience-debt" — if a system hasn't recovered before the next shock, it carries the deficit forward.
- A live, verified illustration (not calibration input): Rhine at Kaub (24 cm, 2026-08-04, matching the 2018 record), Danube at Paks (-144 cm, below the 2018 record of -98 cm, triggering Hungary's first-ever full reactor shutdown), and Cernavoda NPP (Romania, reactor shutdown + emergency underwater demolition to redirect cooling water) — see DISCLAIMER.md for exactly what this case study is and is not used for.
Quickstart
pip install resilience-memory-utac
from resilience_memory_utac import compute_early_warning_report
# any real time series you supply -- river discharge, coral cover, ...
report = compute_early_warning_report(my_series)
print(f"Variance trend: tau={report.variance_tau:.2f} (p={report.variance_p:.3f})")
print(f"Autocorrelation trend: tau={report.autocorrelation_tau:.2f}")
from resilience_memory_utac import PerturbationEvent, compute_resilience_debt
events = [
PerturbationEvent(label="2018 low-water", time=0, magnitude=8.0, tau=365.0),
PerturbationEvent(label="2026 low-water", time=2800, magnitude=10.0, tau=365.0),
]
states = compute_resilience_debt(events)
print(states[-1].fully_recovered) # False if the 2018 event hadn't fully decayed away
Development
pip install -e ".[dev]"
pre-commit install
ruff check src tests
mypy src
pytest
Citation
See CITATION.cff and .zenodo.json.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file resilience_memory_utac-0.1.0.tar.gz.
File metadata
- Download URL: resilience_memory_utac-0.1.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90dffb766ecab235211fae97ef75d7aac218d3adbab8673e31ba68ac26daafca
|
|
| MD5 |
e7ae6d66484662d556e44c55647f8857
|
|
| BLAKE2b-256 |
955fc5233bdfdead7a016ec508f8dec65338e35c95b1c8f751bb3b9e568e21e4
|
File details
Details for the file resilience_memory_utac-0.1.0-py3-none-any.whl.
File metadata
- Download URL: resilience_memory_utac-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c04079fc396404aaa696abc81e08438ca9f0ddbe881af086f3f2c12418855ac9
|
|
| MD5 |
f8d314821894fa10f314f6487ac9df0f
|
|
| BLAKE2b-256 |
d8adeda1299cd9deee5dd734bd0d2dfec4970e49f1704f7a00b3afd4d229c31a
|