ChemNetworks: New capabilities for high-throughput, real-time chemical graph construction and analysis
Daniel J. Pope, Jackson Elowitt, Bo Zhang, Manish Parashar, Aurora E. Clark · Computer Physics Communications · 2026
A major revision of the ChemNetworks software (originally published in the Journal of Computational Chemistry , 2014, 35, 495–505) is presented. While the original ChemNetworks provided foundational graph construction capabilities for chemical systems, it was limited to simple distance and 3-body angular edge criteria, was not designed for high-performance computing environments or real-time operation alongside running simulations. This release addresses these limitations through three core contributions. First, a recursive Z-matrix-based search algorithm is introduced that enables chemically intuitive, arbitrarily descriptive three-dimensional structure searches, supporting geometric, energetic, and logical criteria. Second, the DataSpaces data staging framework is incorporated as an optional I/O engine, enabling in-memory data exchange between ChemNetworks and running simulations that eliminates persistent storage bottlenecks and supports real-time graph construction and analysis. Third, a modular analysis framework leveraging the igraph library is introduced, providing a straightforward plugin architecture for community-contributed workflows. Benchmark results demonstrate linear scaling with system size and efficient MPI parallelization across up to 64 cores, with total computational complexity of O ( N R T / P ), where N is the number of atoms, R is the Z-matrix depth, T is the number of timesteps, and P is the number of MPI processes. NEW VERSION PROGRAM SUMMARY Program Title: ChemNetworks CPC Library link to program files: (to be added by Technical Editor) Developer’s repository link: https://gitlab.com/ChemNetworks/ChemNetworks Licensing provisions: GPLv3 Programming language: C++ Supplementary material: https://chemnetworks.readthedocs.io Journal reference of previous version: A. Özkanlar, A.E. Clark, ChemNetworks: A complex network analysis tool for chemical systems, J. Comput. Chem. 35 (2014) 495–505 [1]. Does the new version supersede the previous version?: Yes Reasons for the new version: ChemNetworks was limited to simple distance and angular edge criteria, lacked HPC support, and could not operate in real-time alongside running simulations. Nature of problem: Molecular dynamics simulations generate large volumes of coordinate data requiring conversion to graph representations for network-based chemical analysis. Existing tools are limited to simple pairwise or angular criteria, cannot describe arbitrary 3D structures or stereoisomers, and are ill-suited for HPC environments. Writing simulation output to disk before graph construction creates I/O bottlenecks that worsen with system size. Solution: ChemNetworks builds graphs from standard trajectory files, with nodes representing atoms or molecules and edges defined via a recursive Z-matrix-based algorithm supporting geometric (distance, angle, dihedral), energetic (Lennard-Jones), and boolean criteria. Graph operations use the igraph C library [2]. MPI distributes timesteps across processors via round-robin partitioning. Optional DataSpaces [3] integration enables in-memory simulation coupling, and a plugin architecture supports user-contributed analyses. Summary of revisions: Complete rewrite in C++20. Key additions include: a recursive Z-matrix-based search algorithm supporting geometric, energetic, and logical edge criteria; DataSpaces integration for real-time in-memory data exchange with running simulations; a plugin architecture via the igraph library [2] for community-contributed analyses; and MPI parallelization for multi-core scaling. Additional comments: Requires a C++20-compliant compiler (GCC 13.1+). MPI and DataSpaces integration are both optional. References [1] A. Ozkanlar, A.E. Clark, ChemNetworks: A complex network analysis tool for chemical systems, J. Comput. Chem. 35 (2014) 495–505. [2] G. Csárdi, T. Nepusz, The igraph software package for complex network research, InterJournal Complex Systems (2006) 1695. [3] C. Docan, M. Parashar, S. Klasky, Enabling high-speed asynchronous data extraction and transfer using DART, Concurr. Comput. Pract. Exp. 22 (2010) 1181–1204.