Here we provide access to computational models and other software tools we develop for our research. COPAN strives to make software publicly available as open source code latest upon publication of the related research articles.
COPAN:CORE World-Earth modelling framework
The copan:CORE World-Earth modeling framework supports the development and use of dynamical models of those processes that are important for the mid- to long-term fate of nature and humanity on a global scale, to gain a better understanding of their feedbacks, important parameters, and possible emergent dynamics, and to help answering research questions about possibilities of sustainable management and policy.
- Description paper: Donges, Heitzig et al., Earth system modelling with complex dynamic human societies: the copan:CORE World-Earth modeling framework, Earth System Dynamics Discussions, in review (2018), DOI: 10.5194/esd-2017-126.
- Python reference implementation: github.com/pik-copan/pycopancore
COPAN:EXPLOIT model
The Exploit model is an agent-based adaptive network model, conceptualizing planetary social-ecological coevolution. Each of the N
agents harvests its individual resource according to either a sustainable or non-sustainble strategy reflecting either long-term sustainable yields or short-term profit maximization. These strategies get updated via a preference formation process covering two key schemes of social interaction on an adaptive network: imitation and homophily.
- More information on the copan:exploit model
- Python/Cython high-performance implementation on GitHub (cyexploit)
- Interactive NetLogo implementation on GitHub (netlogo-exploit)
- copan:exploit paper (Wiedermann, Donges et al., Physical Review E 91, 052801, 2015; Preprint: arxiv:1503.05914 [physics.soc-ph])
- Application paper studying effects of heterogeneous resource distribution (Barfuss, Donges et al., Earth System Dynamics 8, 255-264, 2017)
COPAN:BEHAVE model
BEHAVE is a model of the coevolution of individual decision making or opinion formation and adaptive social network dynamics under external political pressure. The model incorporates realistic assumptions on human cognitive parameters such as the maximum number of social relationships that can be effectively maintained (Dunbar number).
- More information on the copan:behave model
- Python implementation on GitHub (pycopanbehave)
- copan:behave paper (Schleussner, Donges, Engemann, and Levermann; Nature Scientific Reports 6, 30790, 2016; Preprint: arxiv.org:1512.05013 [physics.soc-ph] (2015))
- Original software release along with paper publication:
pymofa: Python modeling framework
A collection of simple functions to run and evaluate computer models systematically.
pyunicorn: Python modules for complex network and nonlinear time series analysis
In our group we are currently developing the high performance, object oriented package pyunicorn for analyzing general (spatially embedded) networks, climate networks, recurrence plots and recurrence networks using the scripting language Python. Particularly, the libraries implement the algorithms and measures described in our publications on climate and recurrence networks.
- pyunicorn website (documentation, download)
- pyunicorn development version (github)
- pyunicorn description paper (Donges et al., Chaos 25, 113101, 2015, preprint: arxiv.org:1507.01571 [physics.data-an])
Event coincidence analysis
We have developed the method of event coincidence analysis (ECA) for quantifying the strength, lag and possible directionality of statistical interrelationships between event time series (considered as realizations of unmarked point processes). A package in the statistical scripting language R is available (developed by Jonatan F. Siegmund) that implements ECA:
- R package CoinCalc on github
- CoinCalc description paper (Siegmund et al., Computers & Geosciences 98, 64-72, 2017; Preprint arxiv.org:1603.05038)
- Methodological paper on event coincidence analysis (Donges et al., European Physical Journal Special Topics, 225(3), 471-487, 2016; Preprint: arxiv.org:1508.03534 [physics.soc-ph]
EvoMine algorithm
Complex networks like social networks are ever-changing. New links are formed, existing ties are broken, individuals change their attitudes. In this project, we aim at microscopic descriptions of the processes that govern network evolution by mining frequently occurring graph evolution rules. These rules formally characterize the evolution of a dynamic network, help domain experts analyze the underlying processes, and allow to build data-driven models for friendship and opinion dynamics. In collaboration with Erik Scharwächter and the Knowledge Discovery and Data Mining group of Prof. Dr. Emmanuel Müller at Hasso-Plattner-Institute Potsdam.
- Erik Scharwächter, Emmanuel Müller, Jonathan Donges, Marwan Hassani, Thomas Seidl. Detecting Change Processes in Dynamic Networks by Frequent Graph Evolution Rule Mining. In: Proceedings of the IEEE International Conference on Data Mining (ICDM), 2016. (pdf)
- Corresponding author: Erik Scharwächter <erik.scharwaechter(at)hpi.de>
- More information on EvoMine and software download
pyregimeshifts: Python scripts for detecting regime shifts in paleoclimate time series
Scripts for reproducing the analysis reported in:
- Donges et al., Nonlinear regime shifts in Holocene Asian monsoon variability: Potential impacts on cultural change and migratory patterns, Clim. Past 11, 709-741 (2015).
The analysis scripts provided in this package provide a general toolkit for detecting regime shifts in multiple (paleo-) climate time series. They should, hence, prove useful for diverse studies on Earth system dynamics beyond the work reported in the original paper. First, the methodology developed in the original paper can be applied to a broad range of data sets of interest. Second, the methodology can be easily generalized by making full use of the capabilities of the pyunicorn package. For example, other measures for detecting regime shifts from recurrence analysis such determinism or laminarity could be used or visibility graph analysis could be applied instead of recurrence networks.
Development version and download of pyregimeshifts:
- https://github.com/pik-copan/pyregimeshifts
- Original software release along with paper publication:
pycopanpbcc: Python scripts for modelling collateral transgression of planetary boundaries
Python scripts for analyzing Planetary Boundaries in a conceptual model of the Earth's Carbon Cycle including geoengineering by terrestrial carbon dioxide removal for reproducing the analysis reported in:
- V. Heck, J.F. Donges, and W. Lucht, Collateral transgression of planetary boundaries due to climate engineering by terrestrial carbon dioxide removal, Earth System Dynamics 7, 783-796 (2016).
Development version and download of pycopanpbcc: