An open collection of educational Jupyter Notebooks relevant to chemistry. The notebooks can e.g. exemplify how to use a theory, process experimental data, or visualise data. It can also be tutorials, labs, etc.
We recommend to install Anaconda or the much smaller Miniforge. For the latter, the following installs all dependencies and starts JupyterLab in a web-browser:
conda env create -f environment.yml # done only once
source activate luchem
jupyter-lab
- Data wrangling Example of how to extract HTML tables into Python
- Reaction balance. Balancing chemical reactions using linear algebra.
- Reaction order. Determine reaction order from kinetic data.
- Polyprotic Acid. General equilibrium calculations for arbitrary polyprotic-acids.
- Acetone-Chloroform Mixture. Activities and activity coefficients in an acetone-chloroform mixture.
- Bragg-Williams Mixing. Interactive plot of vapor pressures over a two-component, non-ideal mixture.
- Claysius-Clapeyron. Applications of the Clausius-Clapeyron equation. E.g. linear regression on (p,T) data.
- Equilibrium Reactions
- Haber-Bosch process. Numerical integration of H and S to find temperature dependent eq. constant.
- Heat Capacity
- Mixing Entropy. Solved exercise illustrating mixing entropy and free energy of gases and mixtures.
- Molecular partition functions. Exploration of various molecular partition functions, e.g. rotation; vibrational; two-level systems. This also illustrates the use of symbolic algebra and interactive plots.
- Polymer Collapse. Partition function of a collapsing polymer.
Contributions are very welcome and done in the following steps:
- Make a fork/branch of this repository
- Add files and update
Topics
in thisREADME.md
file - Submit a pull-request (PR)
- Await review
Please avoid using exotic dependencies - we do not want to pin the python version,
or common libraries. If your contribution has special needs, consider placing it
in a separate sub-directory with it's own environment.yml
file.