ZZPolyCalc: An open-source code with fragment caching for determination of Zhang-Zhang polynomials of carbon nanostructures
Abstract
Determination of topological invariants of graphene flakes, nanotubes, and fullerenes constitutes a challenging task due to its time-intensive nature and exponential scaling. The invariants can be organized in a form of a combinatorial polynomial commonly known as the Zhang-Zhang (ZZ) polynomial or the Clar covering polynomial. We report here a computer program, ZZPolyCalc, specifically designed to compute ZZ polynomials of large carbon nanostructures. The curse of exponential scaling is avoided for a broad class of nanostructures by employing a sophisticated bookkeeping algorithm, in which each fragment appearing in the recursive decomposition is stored in the cache repository of molecular fragments indexed by a hash of the corresponding adjacency matrix. Although exponential scaling persists for the remaining nanostructures, the computational time is reduced by a few orders of magnitude owing to efficient use of hash-based fragment bookkeeping. The provided benchmark timings show that ZZPolyCalc allows for treating much larger carbon nanostructures than previously envisioned.
Turn this paper into a full lesson
ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.