  Nanopores in two-dimensional (2D) materials, including graphene, can be used
for a variety of applications, such as gas separations, water desalination, and
DNA sequencing. So far, however, all plausible isomeric shapes of graphene
nanopores have not been enumerated. Instead, a probabilistic approach has been
followed to predict nanopore shapes in 2D materials, due to the exponential
increase in the number of nanopores as the size of the vacancy increases. For
example, there are 12 possible isomers when N=6 atoms are removed, a number
that theoretically increases to 11.7 million when N=20 atoms are removed from
the graphene lattice. The development of a smaller, exhaustive dataset of
stable nanopore shapes can help future experimental and theoretical studies
focused on using nanoporous 2D materials in various applications. In this work,
we use the theory of 2D triangular "lattice animals" to create a library of all
stable graphene nanopore shapes based on a modification of a well-known
algorithm in the mathematical combinatorics of polyforms known as Redelmeier's
algorithm. We show that there exists a correspondence between graphene
nanopores and triangular polyforms (called polyiamonds) as well as hexagonal
polyforms (called polyhexes). We develop the concept of a polyiamond ID to
identify unique nanopore isomers. We also use concepts from polyiamond and
polyhex geometry to eliminate unstable nanopores containing dangling atoms,
bonds, and moieties. The exclusion of such unstable nanopores leads to a
remarkable reduction in the possible nanopores from 11.7 million for N=20 to
only 0.184 million nanopores, thereby indicating that the number of stable
nanopores is almost two orders of magnitude lower and is much more tractable.
Not only that, by extracting the polyhex outline, our algorithm allows
searching for nanopores with dimensions and shape factors in a specified range.
