|
1 | 1 | # HuckelTheory
|
2 |
| -A package for simplifying Huckel calculations and visualizations using the Mathematica 12 Molecule functionality |
| 2 | +A package for simplifying [Huckel theory](https://en.wikipedia.org/wiki/H%C3%BCckel_method) calculations and visualizations using the Mathematica 12 [Molecule](https://reference.wolfram.com/language/ref/Molecule.html) functionality |
| 3 | + |
| 4 | +## Background |
| 5 | +[Hückel molecular orbital theory](https://en.wikipedia.org/wiki/H%C3%BCckel_method) describes the pi electrons in planar molecules. For background theory, see Schrier, [Introduction to Computational Physical Chemistry](https://amzn.to/2Jj4Yp4) (University Science Books, 2017), Chapter 6. A [preview version of this chapter is available at the publisher's website]( http://www.uscibooks.com/schrier.htm) |
| 6 | + |
| 7 | +The code in this package largely follows the approach described in that chapter. However, as the book is meant to be pedagogical for students who are new to programming and easily implemented in different programming languages, it does not take full advantage of the functional programing paradigm in Mathematica. In contrast, this package does. This package also makes extensive use of the [Molecule](https://reference.wolfram.com/language/ref/Molecule.html) functionality that was released in Mathematica 12 (2019). |
| 8 | + |
| 9 | +## Live Demo |
| 10 | + |
| 11 | + |
| 12 | + |
| 13 | +## Installation |
| 14 | + |
| 15 | +Note: To install Packages in Mathematica, go to File >> Install... |
| 16 | + |
| 17 | +The relevant package file is `HuckelTheory.wl` |
| 18 | + |
| 19 | +## Usage |
| 20 | + |
| 21 | +All functions take a [Molecule](https://reference.wolfram.com/language/ref/Molecule.html) as an input. Outputs are in units of the C-C coupling index, t. |
| 22 | + |
| 23 | +The `HuckelTheory` package is general enough to treat most heteroaromatic systems (B, N, O, F, Cl, Br), using the Streitwieser parameters. (See [Introduction to Computational Physical Chemistry](https://amzn.to/2Jj4Yp4), Table 6.1, p. 154). |
| 24 | + |
| 25 | +Atoms considered part of the pi system are: |
| 26 | +- Any sp2 atom |
| 27 | +- oxygens, nitrogens, and halogens connected to the pi system |
| 28 | + |
| 29 | +*Potential limitation:* Charge-density based calculations (bond orders, net charges, etc.) depend on having an even number of pi-electrons. |
| 30 | + |
| 31 | +Functions provided: |
| 32 | + |
| 33 | +- `HuckelHamiltonianMatrix` |
| 34 | +- `HuckelMO` |
| 35 | +- `HuckelChargeDensityMatrix` |
| 36 | + |
| 37 | +- `HuckelMOPlot` |
| 38 | +- `HuckelBondOrderPlot` |
| 39 | +- `HuckelTotalElectronsPlot` |
| 40 | +- `HuckelNetChargePlot` |
| 41 | + |
| 42 | +The file `HuckelTheory_demo.nb` in this repository demonstrates each of the functions. |
| 43 | + |
| 44 | +## Why not put this on the Wolfram Function Repository? |
| 45 | + |
| 46 | +It's not just one public function, and they are all closely dependent on one another. Maybe in the future. |
0 commit comments