billiard simulation (Windows version)
The program kinmodel_.EXE simulates in 2 dimensions the kinetic behavior of a user-specified number of spherical atoms with user-specified masses, colliding as hard elastic disks at a user-specified center-to-center distance. The initial positions and speeds of the particles are randomly generated by the computer and the simulation develops from the corresonding initial state. Information related to particle speeds, x- and y- kinetic energies, and energy distributions is provided in the form of unlabelled graphs on the screen.
The simulation can be stopped once it is running by striking the 's' key.
The default settingsThe default settings are chosen to provide 43 particles or atoms, 32 colored green, 8 colored dark blue, 2 colored light blut and one colored red. One of the 'green' particles starts at rest and leaves a trail when it moves.
estimating the distribution of atomic speeds and mean free path
equipartition of energy and the tendency for an ordered system to move toward disorder
the improbability of 43 particles being segregated on one side of the viewing area (unlikelihood of an ordered configuration)
the probability that a particle's speed will occur in a given range
the connection between relative particle mass and average speed
the development of empirical frequency vs. speed and frequency vs. energy histograms (order and disorder, this time with statistical order emerging from the disordered system)
images of 2-dimensional collisions
appreciation of time scale of kinetic interactions in a gas at typical pressures and temperatures (at medium default speed the simulation represents many of the features of a thin slice approximately 10 nanometers on a side and, say, a nanometer thick, of a monatomic gas at room temperature and several atmospheres pressure, with 1 second of real-world time corresponding to a few thousand years of simulation time).
and others.
Experiments and ActivitiesPreliminary Observation
Run the program billiard simulation. Simply open the simulation and hit the 'Enter' key.
****
#$&*
****
#$&*
****
#$&*
Experiment kinmodel_01: The Distribution of Atomic Speeds
When the speed of the simulation is moderate it is possible to watch a specific particle (the red particle or the blue particle in the default simulation) and obtain an intuitive feeling for the relative frequencies of various speeds.
Run the simulation billiard simulation at the default settings.
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
Experiment kinmodel_02: Mean free path; mean time between collisions
It is possible to observe the mean free path of the green particle between collisions.
****
#$&*
Now take some data.
****
#$&*
****
#$&*
Experiment kinmodel_03: Equipartition of energy and the direction of disorder to (increasing or decreasing)
NOTE: The program is not currently set up to run the experiment as given here. See the alternative, a few lines below.
Observe the first several seconds of the simulation at the 'slow' default speed. You will see how the particles initially are all moving in or very close to the x direction, with little or no y component. Note the x and y kinetic energies, displayed near the top of the screen.
- Observe what happens to the directions of motion of the particles as they start colliding.
****
#$&*
****
#$&*
Run the simulation in this manner several times, and each time determine how long it takes before the total y kinetic energy is first greater than the total x kinetic energy. Report your results.
Now take some data:
Give your data and your results:
****
#$&*
****
#$&*
ALTERNATIVE
Start the program using default values. Let it run for several seconds, then start observing the green particle. Keep track of whether it is moving more in the x or more in the y direction. Just say to yourself 'x x x y y y y y x x y x y y y ... ', according to what you see. Do this at a steady but comfortable pace. Continue this for a minute or so.
Then take a pencil and paper, or alternatively open a text editor in a separate window, and start writing down or typing your x and y observations. I just did this and in about a minute or two I got the following: xxyyyyxyyxxyxyyxxyxxxyyyxxyyxxyyxyxxyyyxyyyxyyxy. I haven't done this before and found this a little confusing. Every time the particle got hit I wanted to type a letter right away, but I hadn't had time to figure out in what direction it was headed. With practice I began to get over that. You will experience different glitches in the process, but with a few minutes of practice you'll be able to do a reasonably good job. I suspect I also had some tendency to type one of the letters in preference to the other (e.g., x in preference to y, or maybe y in preference to x). I don't recommend fighting this sort of tendency but just noticing it and gently trying to improve. I didn't do this with pencil and paper, and it would be interesting to see if the tendencies are the same when writing as opposed to typing. However that's not our purpose here. As an alternative, you could make marks on a piece of paper then type them out (you might even use simple vertical and horizontal dashes, like | and -, which you can then translate into y's and x's).
At whatever pace you prefer, write or type about 50 observations of x or y. List them here.
****
#$&*
Now notice the KEx and KEy values represented toward the right-hand part of the program's window, just a little ways below the middle of the screen. KEx represents the total x component of the kinetic energies of all the particles and KEy the total y component.
Using the Pause and Restart buttons, stop and start the program and with each stop record the KEx and KEy. Values can be rounded to the nearest whole number. After each observation quickly hit 'Restart' then 'Pause', and record another. Record about 50 observations.
Having recorded the 50 KEx and KEy values, write 'x' next to each pair for which the x value is greater, 'y' next to each pair for which the y value is greater. List your x's and y's in sequence here (don't list your values for the KE).
****
#$&*
What is the greatest KEx value you observed and what is the least?
****
#$&*
What is the greatest KEy value you observed and what is the least?
****
#$&*
On a 50-trial sample of a normal distribution, the mean would be expected to occur about halfway between the least and greatest values observed, and the expected standard deviation would be very roughly 1/5 of the difference between the least and greatest values. According to this (very approximate) rule, what would be the mean and standard deviation of your KEx values, and what would be the mean and standard deviation of your KEy values?
****
#$&*
Do you think the mean KEx value differs significantly from the mean KEy value? There is a difference. By 'significantly', we mean a difference that seems greater than what would naturally occur by chance statistical variations.
****
#$&*
Experiment kinmodel_04: The improbability of all particles being segregated on one side of the viewing area (order vs. disorder)
Any selected region of the screen can be selected for viewing by masking the rest of the screen. The viewer can estimate the probability of this region being vacated within an hour, within a day, within a year, ..., within the age of the universe. Results will differ with the size of the region, the number of particles and the speed of the simulation.
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
****
#$&*
Experiment kinmodel_05: The probability that a particle's speed will occur in a given range
NOTE: This experiment is pretty much redundant with a previous one and is to be OMITTED.
The default settings will not work with this experiment. This time when you run the program you need to choose to customize the settings. For everything but the numbers of different particles and their masses, and the 'yellow' marker, you may use the defaults.
For the number and masses of particles:
- When asked for the number of particles of type 1, enter 28. When asked for the mass of this type give 1.
- When asked for the number of particles of type 2, enter 1. When asked for the mass of this type give 10.
- When asked for the number of particles of type 3, enter 1. When asked for the mass of this type give 1.
Regarding the 'yellow' marker:
- You will choose the minimum and maximum speeds which will result in the particle being 'painted' yellow. This will allow you to observe the proportions of the particles in different velocity ranges.
If you wish you may also adjust the speed factor, which has default value 3. If you want the simulation to slow down to 1/3 the pace, you can enter 1 for the speed factor. If you want the simulation to go as fast as practical for the other default setting, you could use a speed factor up to 5. Only the pace of the simulation is affected by the speed factor; the speeds displayed on the screen are not affected.
Now try to observe the numbers of particles in various ranges:
What are the percentages corresponding to each of these velocities?
What therefore do you think is the average particle velocity?
Experiment kinmodel_06: The connection between relative particle mass and average speed; equality of average kinetic energies
Using default settings, answer the following:
****
#$&*
****
#$&*
****
#$&*
****
#$&*
Experiment kinmodel_07: The development of empirical frequency vs. speed and frequency vs. energy histograms (more about order vs. disorder, with statistical order emerging from the disordered system)
NOT CURRENTLY ASSIGNED:
The frequency vs. speed, frequency vs. square root of energy, and frequency vs. energy histograms (it is left up to the student to determine which is which) are normalized to have a consistent total area. These distributions develop over time, eventually reaching a smooth distribution analogous to the Maxwell-Boltzmann distribution. This development occurs much more quickly if the settings are customized to encourage a maximal number of collisions.
Experiment kinmodel_08: Images of 2-dimensional collisions
NOT CURRENTLY ASSIGNED:
It is easy to customize the settings to obtain two large relatively slow particles. Any student who has watched air hockey pucks or billiard balls colliding will recognize the validity of the simulation.
If the particles leave 'tracks' then a 'snapshot' in which a single collision between the particles occurs will provide data sufficient to validate conservation of momentum.
Customized settingsNOT CURRENTLY ASSIGNED:
The following parameters can be controlled by electing to customize settings:
The number of particles (default setting is 30, maximum is 1000).
The number of different particle types (more than 9 different particle types is not recommended because of restricted number of colors).
The speed factor that determines how fast the particles move across the screen. If the speed factor is too great, particles may occasionally (or frequently, depending on how great) miss collisions. This is not a big problem unless data is being taken that assumes no 'misses'.
The radius of a particle (default radius is 1% the width of the square viewing area).
The proximity of the centers of the particles within which collision will occur (default is 5 particle radii). A greater value here will result in more collisions, other parameters being equal.
The minimum and maximum speeds defining a speed 'window'. Any particle whose speed is in this 'window' will be colored bright yellow. This range of speeds will be indicated by a yellow rectangle on one of the graphs.
Whether all the particles leave 'tracks' or not. The last two particles usually leave 'tracks'.
The number of iterations before the screen is cleared and the various graphs are updated. An iteration consists of the calculation and display of the position of every particle. A fairly small number allows the viewer to observe the evolution of the graphs, while a somewhat greater number permits observation of a significant number and variety of particle 'tracks'. If the number is too great the particle 'tracks' will be obscured.
The last two particles specified will have velocities indicated onscreen; the last of these particles will be sampled to obtain the velocity distribution shown at the right of the screen.
'Research' questionsFor which particle speeds is the time between collisions likely to be greatest, and for which will it be least?
Initial particle speeds are uniformly distributed. After a short time a specific nonuniform distribution of speeds takes over. How long does it take before the contribution of the initial uniform distribution to the graphs and histograms displayed on the screen become indistinguishable? How will the shape of the graph differ from the ideal distribution during the transition?
For the default settings, what is the 'peak' particle energy? What is the 'peak' velocity of the sampled particle?
A narrower speed range near the peak of the speed distribution can result in more instances of 'yellow' particles than a wider speed range away from the peak. At each possible integer speed v, it is possible to define a speed range (v0, vf) with v at the midpoint of that range, such that the average number of 'yellow' particles will be the same as for the 'unit' range around the peak of the distribution. The 'unit' range is a velocity range of width 1 unit centered at the 'peak' velocity.
What does it take to get a massive molecule surrounded by low-mass particles moving fast?
Does the presence of an even more massive particle give a medium-mass particle, surrounded by a greater number of low-mass particles, an advantage in achieving greater speeds? Does the presence of a more massive particle affect the energy distribution of the medium-mass particle?
At an advanced level: Derive Maxwell-Boltzmann distribution in 2 dimensions and compare the the empirical distribution.