Wigner crystal simulator

Back to my home page

This is an applet that simulates Winger crystals. Particles are randomly placed in a horizontal two-dimensional plane and then allowed to interact with some repulsive potential. They rapidly form a triangular crystal lattice, with some defects. You need Java enabled to run this. Explanation of how to use the applet are below, but to start out, just click the "Run" button and watch the randomly placed particles form a crystal on their own.

Applet instructions

System parameters and energy function

The first seven entries are used to characterize the shape and size of the system, and the energy function. Simply changing these parameteres does not immediately change the fields; do update the changed, you need to click the "Initialize" button, at which point a new random state will be formed.

The first three fields and the first drop-down menu let you choose the size of the system, the shape of the system, and the number of particles. (Note: if you rescale both the x and y sizes equally, it will not affect the bounding shape seen on the screen, since the picture is always rescaled to fill as much of the applet as possible.)

The next three parameters define the potential that the particles move in. The particles repel with a 1/rα potential. The cutoff gives the short-range at which the potential is cutoff to give a constant repulsive force. (This cutoff is necessary to prevent overflow problems for large values of α. And the value of centrifugal gives the strength of the centrifugal force: a positive value indicates that the particles are on a spinning plate, and tend to be pushed to the outer rim, while a negative value indicates the the particles are in a parabolic confining potential.

Running the simulation

Once you click the "Run" button the applet begins minimizing the energy of the particles with the conjugate gradient method. Sorry, there is no way to pause or stop the simulation once it is started, except by leaving the web page. (The version I use has more options on how to minimize the energy, but I've put a trimmed down version on the web, to make things simpler.)

The "Shake" button shakes all the particles around a little bit, and the field above the shake button gives the size of the shake.

The fields at the bottom right of the applet give information about how many conjugate gradient steps were needed, the energy of the configuration, and the amount of time it took your computer to complete the energy minmization.