Skip to content

Code to generate each isomers for ambidentate node and linker polyhedra

License

Notifications You must be signed in to change notification settings

croningp/polyhedral-isomerism

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

polyhedral isomers

Determines number of isomers for certain chemical compounds with geometric structures

Method A:

Written in java. Compile and run Octahedron.java.
Explanation: Geometries are stored as length 12 bit strings. Each bit index maps to an octahedron half edge site, and the presence or absence of a bond at this location is denoted by 0 or 1, respectively. Valid strings are appended to the variable octs. Print out of octs.size() gives number of entities at each iteration. Output of final octs is given in octahedra.txt

Method B:

Written in python. To use: run main.py.
Explanation: Geometries are stored as a list of Node objects, which have attributes origin (numpy array) and bonds (list of numpy arrays). Origin denotes the cartesian location of the Node and each bond in bonds represents a vector from the origin towards a neighbouring Node origin. Each Node has four neighbours, which results in 16 different bonding possibilities (1x0, 4x1, 6x2, 4x3 and 1x4 bonds). For an octahedron, the six nodes, each with 16 bonding configurations represents the node pool and combinations of these are used to generate all possible isomer configurations.

Authors

All software was written as part of the Cronin Lab 2019


License

MIT

About

Code to generate each isomers for ambidentate node and linker polyhedra

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published