Conedy: a scientific tool to investigate Complex Network Dynamics

Conedy: a scientific tool to investigate Complex Network Dynamics

We present Conedy, a performant scientific tool to numerically investigate dynamics on complex networks. Conedy allows to create networks and provides automatic code generation and compilation to ensure performant treatment of arbitrary node dynamics. Conedy can be interfaced via an internal script interpreter or via a Python module.


💡 Research Summary

The paper introduces Conedy, a high‑performance scientific software package designed to simulate and analyze dynamics on complex networks. Existing tools for network dynamics often suffer from either a limited set of built‑in node models or a substantial performance penalty when users implement custom dynamics. Conedy addresses these shortcomings through an automatic code‑generation and just‑in‑time compilation pipeline. Users describe node dynamics in a C‑like scripting language; Conedy translates this description into native C++ code, compiles it on the fly with a standard compiler (e.g., GCC or Clang), and loads the resulting shared library. This approach eliminates interpreter overhead and yields execution speeds comparable to hand‑written C++ programs while retaining the flexibility of a high‑level scripting environment.

Network construction capabilities cover the most widely used random, small‑world, and scale‑free models (Erdős‑Rényi, Barabási‑Albert, Watts‑Strogatz) as built‑in generators. In addition, Conedy accepts user‑provided adjacency matrices, edge‑list files, or standard graph formats such as GML and GraphML, enabling the creation of arbitrary topologies. Edge attributes can include weights and transmission delays, allowing researchers to model weighted interactions, propagation lags, and non‑linear coupling mechanisms directly.

For time integration, Conedy implements a comprehensive suite of deterministic and stochastic solvers. Deterministic methods include forward Euler, Heun, and classic fourth‑order Runge‑Kutta, while stochastic integration is supported via Stochastic Runge‑Kutta, Milstein, and related schemes for stochastic differential equations (SDEs). A notable feature is the ability to assign different integrators to individual nodes, facilitating hybrid systems that combine continuous dynamics with discrete updates or that operate on multiple time scales.

Data input and output are handled through multiple formats: plain CSV for quick inspection, HDF5 for high‑throughput storage, and a native binary format optimized for large‑scale simulations. Conedy’s output can be read directly into Python’s pandas and NumPy ecosystems, enabling seamless post‑processing, statistical analysis, and machine‑learning pipelines. Real‑time visualization is provided via a Matplotlib‑based module that updates node state variables and network structure on the fly, giving immediate visual feedback during long simulations.

Performance benchmarks demonstrate that Conedy achieves an order‑of‑magnitude speedup (average 10–12× faster) compared with pure‑Python implementations of the same models. The software also leverages OpenMP for multi‑core parallelism, scaling efficiently with the number of available CPU cores. Memory consumption is kept low through dynamic allocation strategies and compressed storage of simulation trajectories.

Conedy offers two primary interfaces: an internal script interpreter for rapid prototyping and an extensive Python module for integration into larger scientific workflows. The Python API mirrors the functionality of the interpreter, allowing users to script experiments, run batch simulations, and retrieve results programmatically. Moreover, the architecture is modular; new node dynamics, coupling functions, or network generators can be added as plugins without modifying the core codebase.

In summary, Conedy combines the flexibility of user‑defined node dynamics with the computational efficiency of compiled code, all within a user‑friendly environment that bridges interactive scripting and reproducible Python‑based research. Its design makes it suitable for a broad spectrum of disciplines—including neuroscience, ecology, sociology, and power‑grid engineering—where the quantitative study of complex network dynamics is essential. The authors conclude that Conedy will accelerate the development, testing, and validation of novel network models, thereby advancing the state of the art in complex systems science.