HOME   Rubik's cube | Atom collisions | DelTree | ExtractResources | Hash | IntegrityCheck | SelectiveStartup | Jigoku Sudoku | Rays About

Atom collisions simulation



This application allows you to simulate what happens when atoms fully elastically bounce against
each other in a box.

Depending on the speed of your CPU you should be able to simulate at least 1'000 atoms on a slow
CPU. On a modern CPU, simulating 100'000 atoms is also possible.
Slow CPUs can still do simulations of 100'000 atoms, but at a very low speed (FPS).

If you put too many atoms in too small of a space, you will get more of a plasma simulation rather
than an elastic simulation.

The simulation always tries to run at 60 FPS to reduce the energy used. So, even if your CPU is capable
of running the simulation faster, only 60 simulation steps are executed and shown per second.
If your CPU can't run at 60 FPS, then the simulation will run as your CPU allows for.


Download

Atom collissions v1.0.0
Size = 8185482 bytes
CRC-32 = 946ae421
MD5 = da8d634b98fcb4c86d147fbd52c062ca
SHA-256 = 0bcab31ab518aeca574f9cfe8a13fe5bcf44940a4d424bf9c239839fc989ad03


Version history

v1.0.0 (27-Dec-2024)
- Initial public release.

v0.0.4 (11-Nov-2024))
- Drastically improve the speed by splitting the world into sectors of 100x100.

v0.0.3 (04-Nov-2024))
- Drastically improve the speed by reducing the amount of draw calls.
- Improve the simulation by handling overlapping atoms better.

v0.0.2 (24-Oct-2024))
- Draw atoms as circles instead of squares.
- Use 3 colours to indicate the atoms' speed (slow, average, fast).
- Allow the user to change settings (e.g., world size, min/max atom size, amount of atoms).

v0.0.1 (12-Oct-2024))
- Start of project.


Instructions

User interface
The title bar of the window contains some statistics of the running simulation.
The left side contains the simulation.
The right side contains the settings.
The status bar contains info on the setting your mouse is hovering, and also the date and time.

User interface

Settings
Start/Stop button
The top right button is for starting and stopping the simulation.

World dimensions (width and height)
The world dimensions are for setting the size of the world's simulation. If the world size is too
and/or too wide, then scrollbars are automatically shown.

Background colour
The background colour allows you to choose the world's background colour. Although any colour
is allowed, some colours may make the atoms harder to see. White and black backgrounds give
a high amount of contrast, making the simulation clearer.

Tot atoms
The total amount of atoms in the simulation. The more atoms, the slower the simulation. Also,
if you choose too many atoms, they may not fit in the world.

Radius (min and max)
The minimum and maximum radius can be used to set the random size of each atom. If you
choose the minimum and maximum the same, then all atoms are the same size.
Note that the atoms have no mass, so bigger atoms have the same amount of energy in a
collision compared to smaller atoms.


Example 1
Have every atom be the same size.

Same size atoms


Example 2
Scrollbars when the world is larger than your window.

Scrollbars


Example 3
Non-square world dimensions.

Non-square world


Example 4
We can also do many atoms.

Many atoms


Example 5
When you have too many atoms, the simulation behaves more like a plasma.

Too many atoms


Example 6
100'000 atoms on a 4k screen.