            --------------------------------------------
                           Physics collisions
                 Oblique collisions, gas laws, restitution
                           version 1.8.1 1999
                    Kevin Tam:  kevin.tam@bigfoot.com
            --------------------------------------------


------------------------
HOW TO USE THIS DOCUMENT
------------------------

To view Readme.txt on screen in Notepad enable word wrap.
You may wish to read the installation section before proceeding.


------------
INTRODUCTION
------------

This is a oblique collisions simulator of particles. It shows balls that bounce around the screen and perform oblique collisions. As a result, it also provides a good simulation of the ideal gas laws. The volume can be changed by changing the window size. Temperature can be changed by increasing their kinetic energy. Density can be changed by adding balls. There are other features as well such as changing the restitution of the balls' collisions or changing properties such as the mass of individual balls.

The simulator gives real time feedback as to what happens. Apart from seeing the balls interact, a statistics dialog gives you various physics details as to how it matches with the gas model, the terms are explained in the help file. Also, various colour schemes allow you to change the colours depending on the properties of the ball,

--------
CONTENTS
--------
INSTALLATION
SYSTEM REQUIREMENTS
TIPS AND TRICKS
KNOWN ISSUES
ABOUT THE AUTHOR
REVISION HISTORY
----------------------

SYSTEM REQUIREMENTS
===================
OS : Windows 95, 98, NT4
Requires OpenGL. OpenGL is included with Win98, NT4 and Win95 OSR2. Old Win95 users can download OpenGL from:
ftp://ftp.microsoft.com/softlib/mslfiles/opengl95.exe


INSTALLATION
============
Run the self-extracting package to extract the files to a directory. To run the program, simply run Physics.exe. If you wish you can create a shortcut to this program on the desktop or start menu.
To reduce download time, I did not include an uninstall program. However, to uninstall, simply remove the directory it was installed to. This removes all traces of the program.
This application is freeware and the installation program and other files are freely distributable as long as it is unmodified. Check license.txt for more information.
This version has a beta of the screensaver. It cannot be customised and has no password facilty so I released it properly. If you want to try it, rename or copy Physics.exe to Physics.scr and test or install it (right click the file)

TIPS AND TRICKS
===============
Here are some things to try with the simulation:
Try changing all gas variables in pV=nRT to see if the gas constant remains constant. In my simulations it remains around 1600. Try reducing the volume significantly. You may find the gas constant increase because the particles of gas becoming large enough to throw of one of the assumptions of the ideal gas model that particles of gas must be small compared to their container

You can simulate brownian motion. Make one particle heavier than all the others around it (about 15 times heavier) and put its velocities to 0. Watch that heavy particle get bombarded randomly

Try introducing gravity and watch to see if energy remains conserved: GPE + KE = Total. Then reduce the coefficient of restitution below 1 to watch the energy fall. Sometimes, the balls appear to become a liquid then a solid as their kinetic energy falls.

You get some pretty patterns with the colour schemes. Viewing by PE with gravity on about 0.05 gives a nice rainbow pattern

KNOWN ISSUES
================

The option "Show Window Contents While Dragging" occasionally doesn't cause the actual container to resize. I think I fixed it but occasionally it fails (a technical multithreading problem...) Since it happens rarely, just resize the window again.

If you had the previous version, you may notice that the fps rating is slighly slower. I have balanced this with more smooth graphics (those with faster computers will appreciate the difference). If you want the old speed, just bump up the "animation speed" setting to 2-3 and the animation will be similar to the previous version, faster but jerkier.

Over testing the release version, I occasionally get a crash out with a division by zero error on very slow machines. I don't know why this occurs but I think I've got it fixed. If it happens, please email me telling me your processor speed and what you were doing at the time. Thanks!

ABOUT THE AUTHOR
================
I am currently a student at Imperial College in London, UK. My programming is a hobby of mine and this simulator was originally designed to simulate oblique collisions for a physics project. However, its capabilities in demonstrating other areas of physics was expanded.
If you found the program useful or there are any problems, you can email me at kevin.tam@bigfoot.com

REVISION HISTORY
================
(Version 2.0 to come)
This is what 1.8 is building up to with the OpenGL engine.
Lookout, 3D physics collisions are coming! Thanks to the OpenGL engine... Now one can really compare the simulator to the gas model. Coming soon.

(Version 1.9 coming very soon...)
Includes a customisable screensaver
Better control over the colour schemes
Printing renabled?
Allowing setting of ball sizes

Version 1.8.1
Now allows you to save the window position and size
Added various demos demonstrating varoius concepts
Better colours
Sped up collisions calculations... and generalised to n-dimensions
Fixed screen refresh on window sizing

Version 1.8
A complete rewrite of the graphics using OpenGL. Gotta good graphics card? It might seem a bit slower but it is actually smoother and opens the possibility for 3D in the future!
A better fix for the jittery menus and resizing windows
Printing disabled unfortunately :-( need to learn to print using OpenGL...
This is a beta version really with a few of my target features missing. However, it is stable and definitely worth the upgrade!

Version 1.5	(Unreleased to public)
Fixed the problems with using the menus
Added colour coding to the balls by their properties
Fixed a problem under NT where a ball may lose its colour properties
Fixed the animation speed bug (ie it didn't do anything)

Version 1.1a
Oh, just minor tidy in the help file

Version 1.1
This was a total rewrite of the program in C++ to maximise speed and increase the flexibilty of the program by allowing saving of scenarios and multithreading to improve the user interface.

Version 1.0
The first version was written in Visual Basic using highly optimised animation techniques and coding to achieve smooth animation