# Overview of Characterization Steps

**Pre-processing**

The symmetry operations in the CIF file are applied to generate the positions of all atoms within a unit cell. Solvent molecules and disorder sites are removed. Bonds are inserted between nearby atoms to construct a periodic molecular graph of the structure.**Identifying portals**

Rings are identified within the structure's molecular graph though which molecules can pass using an algorithm based on k-cycle enumeration. These rings are known as "isometric cycles," a property that is checked using Dijkstra's shortest path algorithm.**Building channels**

A non-linear optimization model is used to find the largest void cylinder linking each pair of portals. A sufficiently large cylinder indicates the presence of a channel. Delaunay triangulation is used to better approximate the shape of each channel as the union of several overlapping cylinders.**Finding cages**

Large pockets of void space within the structure, known as cages, are identified using three-dimensional Delaunay triangulation. The shape of each cage is approximated by the union of several overlapping spheres.**Determining connectivity**

Places within the structure where a guest molecule can change its direction of travel are located by intersecting the geometric objects that represent channels and cages. A connectivity graph is constructed to describe how channels and cages connect to one another.**Calculating accessibility**

Given the characteristic size of a guest molecule, the connectivity graph is pruned using breadth-first search to remove channels and cages not reachable from afar.**Computing total volume**

The total pore volume is found by calculating the volume of the union of all cylinders and spheres within a unit cell using an octree decomposition and Monte Carlo integration. A pore size distribution is generated by tracking the contribution of each feature to the total volume.**Computing accessible volume**

The volume calculation is repeated using the pruned connectivity graph to determine the accessible pore volume as a function of characteristic guest molecule size.**Computing accessible surface area**

The accessible surface area is estimated as a function of characteristic guest molecule size by approximating each channel by a single cylinder and each cage by a single sphere and finding the geometric surface area.**Generating results output**

A three-dimensional visualization of channels and cages is generated to be viewed through our interactive Java applet.

For a more detailed description of each of these steps, please refer to our publications below.

## Publications

First, E. L., Floudas, C. A. MOFomics: Computational pore characterization of metal-organic frameworks. *Microporous and Mesoporous Materials*, 165:32–39, 2013.

First, E. L., Gounaris, C. E., Wei, J., and Floudas, C. A. Computational characterization of zeolite porous networks: an automated approach. *Physical Chemistry Chemical Physics*, 13(38):17339–17358, 2011.

Gounaris, C. E., Wei, J., Floudas, C. A., Ranjan, R., and Tsapatsis, M. Rational design of shape selective separations and catalysis: Lattice relaxation and effective aperture size. *AIChE Journal*, 56(3):611–632, 2009.

Gounaris, C. E., Wei, J., and Floudas, C. A. Rational design of shape selective separation and catalysis–II: Mathematical model and computational studies. *Chemical Engineering Science*, 61(24):7949–7962, 2006.

Gounaris, C. E., Floudas, C. A., and Wei, J. Rational design of shape selective separation and catalysis–I: Concepts and analysis. *Chemical Engineering Science*, 61(24):7933–7948, 2006.