Blog Archives

Nice Energy Level Diagrams with rxnlvl

I have written a bit of code lately which automates the process of constructing chemical reaction energy level diagrams rather well. It’s called rxnlvl. It’s written in Python, outputs to SVG (Scalable Vector Graphics) and is GPL3. I’m not a ninja programmer by any stretch of the imagination, however the program is basically functional, and in my estimation yields quite attractive results.

ImageYou can check it out at

Enjoy, and if you find it useful I encourage you to show me what you’ve done with it.




Energy level ladder plots made trivial

I have written a simple but fairly nice script for generating energy level ladder plots. It uses matplotlib on python.

An energy levels plot

A generic energy levels ladder plot

You feed it a file with some energy parameters and pairs of energy levels and descriptors and get a consistent graph out of it which can be saved as a raster or vector graphic. These plots are sort of hard to do consistently in Excel and the like.

You can grab the files here.

The archives consist of the script, some examples and the manual. You will need python 2.6 and matplotlib. Older versions may work but are untested.

I hope someone finds this useful, as I certainly do.

The package is released under the GPL.

Edit: I have updated the package to fix a bug which interfered with rendering of *.pdf files in Adobe Reader 8

Blackbody Curves

Something I worked on last night. Wrote a program to generate relative radiance curves for ideal blackbodies at different temperatures from Planck’s Law, used Excel to graph them and then embellished in Photoshop. These emission curves explain why very hot objects become incandescent, and the integrals of these curves determine their colour (cooler objects glow dull red, hot objects glow yellow-orange, and very hot objects glow blue-white). The gradient is modified from David Eccles’ normalised linear spectrum, which was released to the public domain. My modifications mean that the spectrum is only qualitatively correct, placing more emphasis on yellow.

Blackbody emission curves for various temperatures

Blackbody emission curves via Planck's Law at 3000, 4000 and 5000 K - cc-by-sa 3.0

This adventure was inspired by an exercise in my ancient copy of Atkins Physical Chemistry, which asks readers to write a program that outputs blackbody spectra and optionally numerically integrates them. There’s also a question involving a glow worm being propelled through space via photon momentum, quite a charming imagination 😀