Geometric phase transition

2D site percolation

To get the picture below every cell of a LxL lattice is seeded with the site occupation probability p by "conducting" squares. If any two conducting (occupied) cells have a common side, then they form a cluster. The multiple cluster labeling method of Hoshen and Kopelman is used to paint different clusters in different colors. Two touching (but not connected) clusters can have the same color accidentally as only 18 different colors are used. The first percolating cluster (from the top of the grid to the bottom) is painted in black. This cluster is fractal for the critical p value pc = 0.5927 and L -> Infinity.
It is evident, that if pseudo-random numbers are good enough all conducting cells are independent and boundaries of a lattice do not influence on its distribution. But the boundaries play important role when we are labeling clusters, as border can cut them. It is particularly important when length of a cluster becomes comparable with the size of the lattice L. To decrease this effect we can use periodic boundary conditions, i.e. we can examine percolation on a cylinder (the left and right borders of the square are connected) or torus (the top and bottom borders are connected too). Clusters on torus are more "homogeneous", but all the same we cannot see infinite spanning cluster on a finite surface :)

Controls Click mouse to get a new iteration. Press "Enter" to set a new p value. See also 640x640 lattice.

Phase transition

It is evident, that for p << 1, in the low-concentration regime, all clusters are small and isolated. When p increases, clusters merge together and grow. At p = pc percolation probability W leaps into 1 and infinite spanning cluster appears. It makes random thin web and covers the hole space. Finite clusters are confined in pores of infinite cluster. For bigger p it absorbs finite clusters and becomes more dense. Mean size of its pores and closed clusters decreases.
functions To the left you see that percolation probability W and spanning claster density P have peculiarity at p = pc (the curves are ploted for L = 640 lattice).
On an infinite lattice there is a type of phase transition from a state with finite isolated clusters to a state with one infinite spanning cluster. The critical point pc marks a singularity, i.e. smooth functions behave singularly at this point (as the size of the lattice tends to infinity). The P(p) behaviour near the critical point is similar to the dependance of order parameter of thermodinamic phase transition (e.g. spontaneous magnetization in ferromagnetic materials).
The remarkable fact, that the Ising and Potts models, together with the percolation model, may be placed within a unified system having a coherent methodology, was discovered in the late 1960s by Fortuin and Kasteleyn.

Single 2D cluster

Single 2D cluster is made by random seeding of its neighborhood (click the applet to get new realization).

Single 3D cluster

For 3D site percolation on a simple cubic lattice percolation threshold is p = 3.12 . I.e. you will get big percolating claster in 50% of trials. 30x30x30 lattice is used to the left. (See Hidden Surface Removal Algorithms for a couple of 3D hints).

Controls:
Drag mouse to rotate cluster.
Drag mouse with "Shift" to zoom it.

See also
INTRODUCTION TO PERCOLATION THEORY by Junqiao Wu
Percolation by Craig Savage
Appendix: Cluster labeling method of Hoshen and Kopelman

We assign cluster labels to occupied sites beginning at the lower left corner and continue (by lines) from left to right (and from bottom to up). A label is inherited from the left or bottom neighbour. If these sites are empty, then a new cluster label is generated. When we come to an occupied site at which two different clusters coalesce, we assign to it a "proper" cluster label. The "proper" labels are determined by the label tree np(i) array. At first all elements np(i) = 0. If at any occupied site two labels e.g. 3 and 4 are linked, we set np(4) = 3. This nonzero value shows us, that the label 4 is linked to the 3 one. It is "improper" and we shall use the "proper" label 3. In general case, "proper" labels are culculated by recursion (see detailed explanations in [Gould]).


Contents     Previous: Hedgehog zoo     Next: Percolation characteristic functions
updated 22 Apr 2004