Chemistry and Biochemistry

Boltzmann 3D

Welcome to the Boltzmann 3D homepage. Boltzmann 3D is a kinetic theory demonstrator that visually illustrates principles of kinetic theory on your computer screen. Boltzmann 3D is written in Java using OpenGL graphics libraries and exists in Windows, Mac, and Linux versions.

Author: Randall B. Shirts
Department of Chemistry and Biochemistry
Brigham Young University
Provo, Utah 84602
Programmers: Scott R. Burt, Benjamin J. Lemmon
Additional programming: Jared Duke, Derek Manwaring, Aaron Stewart, Dustin A. Carr

Copyright 2004, 2005, 2008, 2009 by Brigham Young University, All Rights Reserved


Use Boltzmann 3D as a classroom demonstrator of molecular motion by projecting the computer image on a screen. It may also be used as a hands-on activity for students to understand how molecular motion leads to macroscopic properties like gas pressure, vapor pressure, chemical reaction rates, diffusion, effusion, thermal transport, and many more. Many suggestions are included in the documentation available below.

Click here to try the beta version 3.0 (May 2013). The link will download a Java Web Start application. Open the application to start Boltzmann 3D. You will need to agree to let the application run and agree to let it install the graphics library (LWJGL). New features in version 3.0 include square wells and the ability to simulate more than two particle types.

Settings files for common simulations can be downloaded here.

To download the latest Boltzmann 3D, follow the instructions below appropriate to your operating system. The current version is 2.49 released August 2009.

Microsoft Windows

1. Download the current version of the Java2 runtime environment by clicking on and choose that you want to get the free download.

2. Make sure you have updated OpenGL graphics libraries for your video card by updating the video card drivers from the computer or video card manufacturer. Find the make and model of your video card by right clicking on the desktop, choose "properties", select the "settings" tab, then look under the heading "Display" after the word "on". Then use your browser to find the manufacturer's web site and driver download page.

3. Click here to download a self-installing Windows executable file for Boltzmann 3D. Follow the instructions including having an icon placed in the desktop. When the installation is complete, doubleclick the icon. Boltzmann 3D should begin to load and the interface should appear with 50 disks moving in a two-dimensional arena. Click on help or find the help file in the directory where Boltzmann 3D is installed for instructions.

Apple Macintosh

1. Download the current version of the Java2 runtime environment and the most recent drivers for you video card by running Software Update in the Apple menu.

2. Click here to download a .zip file containing the Boltzmann 3D application. Unzip the file and drag the application into the applications directory to install. When you double click on Boltzmann 3D, the program should begin to load and the interface should appear with 50 disks moving in a two dimensional arena. Click on help or find the help file in the directory where Boltzmann 3D is installed for instructions.

To run Boltzmann 3D on a Power PC Mac, you will need to run an older version available here.


Click here to download a linux g-zipped, tar archive.  The program can be run by executing the shell script Boltzmann3D (or boltzmann3d) after extracting the contents of the archive.

  1. java -version
  2. tar xvf Boltzmann3D.tar.gz
  3. cd boltzmann3d
  4. ./boltzmann3d

The program requires Java version 1.5 or above.

Because Linux is open-source, and video cards are varied, appropriate graphics drivers may need to be downloaded, recompiled and/or tweaked.

View the Boltzmann 3D Quickstart and Troubleshooting Guide for a brief introduction to the program for those too busy to read the entire manual.

Features of the Boltzmann 3D main screen showing a 2D arena.

Boltzmann 3D showing 3D rendering

Boltzmann 3D was named after the Austrian physicist Ludwig Boltzmann (1844-1906) who worked out much of the theory of entropy and statistical mechanics. The Boltzmann distribution for energy and the Maxwell-Boltzmann distribution for velocity both carry his name. He also developed an equation, named in his honor, to describe the approach of a system to equilibrium. However, he is most famous for his definition of entropy in terms of the logarithm of the number of microstates. This equation, S = klnW, is carved on his tomb (picture by Tom Schneider, NIH) where S is entropy, W is the number of microstates, and k is the proportionality constant which depends on your units of entropy and is now called Boltzmann's constant. The universal gas constant, R, is just Avogadro's number times Boltzmann's constant. Thus, Boltzmann's constant is the gas constant per molecule.

Technical questions and comments about Boltzmann 3D, should be directed to

The Boltzmann 3D online manual can be viewed in html or pdf. It explains the features of Boltzmann 3D and answers frequently asked questions

Curriculum material submitted by users

You are free to download and adapt these to your needs

Example #1 submitted by Paul Burgmayer, Great Valley High School, Malvern, PA

Example #2 submitted by R. B. Shirts, Brigham Young University

A Poem by Roald Hoffman Describing the Maxwell-Boltzmann Distribution

Heat: Hot, as ____: Cold

a poem by Roald Hoffman (used by permission)

from: Roald Hoffmann and Vivian Torrance

Chemistry Imagined, Reflections on Science

Smithsonian Institution Press: Washington, D.C., 1993, p. 46.

Deep in,

they're there, they're

at it all the time, it's jai

alai on the hot molecular fronton-

a bounce off walls onto the packed aleatory

dance floor where sideswipes are medium of exchange,

momentum trades sealed in swift carom sequences,

or just that quick kick in the rear, the haphaz-

ard locomotion of the warm, warm world.

But spring nights grow cold in Ithaca;

the containing walls, glass or metal,

are a jagged rough rut of tethered

masses, still vibrant, but now

retarding, in each collision,

the cooling molecules.

There, they're there,

still there,

in deep,


History of the Boltzmann series of kinetic theory demonstrators

In 1994, long before Boltzmann 3D was written, Dr. Shirts produced a two-dimensional DOS program called MotionBYU to help chemistry and physics students at BYU visualize the distribution of molecular velocities. MotionBYU was programmed in TurboPascal by David L. Summers (an undergraduate electrical engineering student with game programming experience) and may have been the first program to perform real-time simulations of particle motion on emerging Intel 486 computers that made such simulations possible for the first time. MotionBYU was rewritten in C++ by David Summers as a Windows program and renamed Boltzmann. Boltzmann was commercialized and distributed by Trinity Software until the current version, Boltzmann 3D was written. Boltzmann 3D was written by Scott R. Burt (an undergraduate chemistry major) and Benjamin J. Lemmon (an undergraduate computer science major) during the summer of 2004. The major improvements for Boltzmann 3D are that it is programmed in Java using OpenGL so as to be portable to other platforms besides Windows, the addition of 1D and 3D simulations, and an improved user interface.

Preliminary design for the user interface was developed by the Center for Instructional Design at Brigham Young University.

Back to Top

Last updated 21 May 2013