Abstract
The percolation problem can be solved exactly in two limits: in the one-dimensional and the infinite dimensional cases. Here, we will first address the one-dimensional system. While the one-dimensional system does not allow us to study the full complexity of the percolation problem, many of the concepts and measures introduced to study the one-dimensional problem can generalized to higher dimensions.
You have full access to this open access chapter, Download chapter PDF
The percolation problem can be solved exactly in two limits: in the one-dimensional and the infinite dimensional cases. Here, we will first address the one-dimensional system. While the one-dimensional system does not allow us to study the full complexity of the percolation problem, many of the concepts and measures introduced to study the one-dimensional problem can generalized to higher dimensions.
2.1 Percolation Probability
Let us first address percolation in a one-dimensional lattice of L sites. In this case, there is a spanning cluster if and only if all the sites are occupied. If only a single site is empty, the connecting path will be broken and there will not be any connecting path from one side to the other. The percolation probability is therefore
This has a trivial behavior when \(L \rightarrow \infty \)
This shows that the percolation threshold is \(p_c = 1\) in one dimension. However, the one-dimensional system is anomalous, and in higher dimensions we will always have \(p_c < 1\), so that we can study the system both above and below \(p:c\). Unfortunately, for the one-dimensional system we can only study the system below \(p:c\).
2.2 Cluster Number Density
2.2.1 Definition of Cluster Number Density
In the simulations in Fig. 1.4 we saw that the percolation system was characterized by a wide distribution of clusters—regions of connected sites. The clusters have varying shape and size. If we increase p to approach \(p:c\) we saw that the clusters increased in size until they reached the system size. We can use the one-dimensional system to learn more about the behavior of clusters as p approaches \(p:c\).
Figure 2.1 illustrates a realization of an \(L = 16\) percolation system in one dimension below \(p_c = 1\). In this case there are 5 clusters of sizes: 1,1,4,2,1 measured as the number of sites in each cluster. The clusters are numbered, indexed, from 1 to 5 as we did for the numerical simulations in two dimensions. How can we characterize the clusters in a system? In percolation theory we characterize cluster sizes by asking a particular question: If you point at a (random) site in the lattice, what is the probability for this site to belong to a cluster of size s?
It is common to use the notation \(s n(s,p)\) for this probability for a given site to belong to a cluster of size s. Why is it divided into two parts, s and \(n(s,p)\)? Because we must divide the question into two parts: (1) What is the probability for a given site to be a specific site in a cluster of size s, and (2) how many such specific sites are there in a cluster? What do we mean by a specific site? For the cluster with index 3 in Fig. 2.1 there are 4 sites. We could therefore ask the question: What is the probability for a site to be the left-most site in a cluster of size s? This is what we mean with a specific site. We could ask the same question about the second left-most, the third left-most and so on. We call the probability for a site to belong to a specific site in a cluster of size s (such as the left-most site in the cluster) the cluster number density, and we use the notation \(n(s,p)\) for this. To find the probability \(s n(s,p)\) for a site to belong to any of the s sites in a cluster of size s we must sum the probabilities for each of the specific sites. This is illustrated for the case of a cluster of size 4:
because each of these probabilities are the same. What is the probability for a site to be the left-most site in a cluster of size s in one dimension? In order for it to be in a cluster of size s, the site must be present, which has probability p, and then \(s-1\) sites must also be present to the right of it, which has probability \(p^{s-1}\). In addition, the site to the left must be empty (illustrated by an X in Fig. 2.1 bottom part), which has probability \((1-p)\) and the site to the right of the fourth site (illustrated by an X in Fig. 2.1 bottom part), which also has probability \((1-p)\). Since the occupation probabilities for each site are independent, the probability for the site to be the left-most site in a cluster of size s is the product of these probabilities:
This is the cluster number density in one dimension.
Cluster Number Density The cluster number density \(n(s,p)\) is the probability for a site to be a particular site in a cluster of size s. For example, in one dimension, \(n(s,p)\) can be interpreted as the probability for a site to be the left-most site in a cluster of size s.
We should check that \(s n(s,p)\) really is a normalized probability. How should it be normalized? We know that if we point at a random site in the system, the probability for that site to be occupied is p. An occupied site is then either a part of a finite cluster of some size s or it is part of the infinite cluster. The probability for a site to be a part of the infinite cluster we called P. This means that we have the following normalization condition:
Normalization of the Cluster Number Density A site is occupied with probability p. An occupied site is either part of a finite cluster of size s with probability \(sn(s,p)\) or it is part of the infinite (spanning) cluster with probability \(P(p)\):
Let us check that this is indeed the case for the one-dimensional expression for \(n(s,p)\) by calculating the sum:
where we will now employ a common trick:
which gives
Since \(P = 0\) when \(p<0\) we see that the probability is normalized. We can use similar tricks to calculate moments of any order.
2.2.2 Measuring the Cluster Number Density
In order to gain further insight into the distribution of cluster sizes, let us study Fig. 2.1 in more detail. There are 3 clusters of size \(s=1\), one cluster of size \(s=2\), and one cluster of size \(s=4\). We could therefore introduce a histogram of cluster sizes, which is what we would do if we studied the cluster distribution numerically. Let us write \(N:s\) as the number of clusters of size s so that \(N_1 = 3\), \(N_2 = 1\), \(N_3 = 0\) and \(N_4 = 1\).
How can we estimate \(s n(s,p)\), the probability for a given site to be part of a cluster of size s, from \(N:s\)? The probability for a site to belong to cluster of size s can be estimated by the number of sites belonging to a cluster of size s divided by the total number of sites. The number of sites belonging to a cluster of size s is \(s N_s\), and the total number of sites is \(L^d\), where L is the system size and d is the dimensionality. (Here, \(d = 1\)). This means that we can estimate the probability \(sn(s,p)\) from
where we use a bar to show that this is an estimated quantity and not the actual probability. We divide by s on both sides, and find
This argument and the result are valid in any dimension, not only for \(d = 1\). We can also see why this quantity is called the cluster number density: it is the number of clusters divided by the volume measured in number of sites. We have therefore found a method to estimate the cluster number density:
Measuring the Cluster Number Density We can measure \(n(s,p)\) in a simulation by measuring \(N:s\), the number of clusters of size s, and then calculate \(n(s,p)\) from
For the clusters in Fig. 2.1 we find that
which is our estimate of \(n(s,p)\) based on this single realization. We check the consistency of the result by ensuring that the estimated probabilities also are normalized:
where \(\overline {p}\) is estimated from the number of present sites divided by the total number of sites.
In order to produce good statistical estimates for \(n(s,p)\), we must sample from many random realization of the system. If we sample from M realizations, and then measure the total number of clusters of size s, \(N:s(M)\), summed over all the realizations, we estimate the cluster number density from
Notice that all simulations are for finite L, and we would therefore expect deviations due to a finite L as well as due to the finite number of samples. However, we expect the estimated \(\overline {n(s,p;L)}\) to approach the underlying \(n(s,p)\) as M and L approaches infinity.
2.2.3 Shape of the Cluster Number Density
We found that the cluster number density in one dimension is
In Fig. 2.2 we have plotted \(n(s,p)\) for various values of p. In order to compare the s-dependence of the plot directly for various p-values we plot
as a function of s. We notice that \((1-p)^2n(s,p)\) is approximately constant for a wide range of s and then falls off rapidly for some characteristic value \(s_{\xi }\) which increases as p approaches \(p:c=1\). We can understand this behavior better by rewriting \(n(s,p)\) as
where we have introduced the cut-off cluster size
What we are seeing in Fig. 2.2 is therefore the exponential cut-off curve, where the cut-off \(s_{\xi }(p)\) increases as \(p \rightarrow 1\). We call it a cut-off because the value of \(n(s,p)\) decays very rapidly (exponentially fast) when s is larger than \(s_{\xi }\).
(Top) A plot of \(n(s,p)(1-p)^2\) as a function of s for various values of p for a one-dimensional percolation system shows that the cut-off increases as a function of s. (Bottom) When the s axis is rescaled by \(s_{\xi }\) to \(s/s_{\xi }\), all the curves fall onto a common scaling function, that is, \(n(s,p) = (1-p)^{2}F(s/s_{\xi })\)
How does \(s_{\xi }\) depend on p?. We see from (2.21) that as p approaches \(p_c = 1\), the characteristic cluster size \(s_{\xi }\) will diverge. The form of the divergence can be determined in more detail through a Taylor expansion:
when p is close to 1, we see that \(1 - p \ll 1\) and we can write
where we have used that \(\ln (1 -x) = -x + \mathcal {O}(x^2)\), which is simply the Taylor expansion of the logarithm, where \(\mathcal {O}(x^2)\) is term that is on the order of \(x^2\). As a result
This shows that the divergence of \(s_{\xi }\) as p approaches \(p:c\) is a power-law with exponent \(-1\). This power-law behavior is general in percolation theory:
Scaling Behavior of the Characteristic Cluster Size The characteristic cluster size \(s_{\xi }\) diverges as
when \(p \rightarrow p_c\). In one dimension, \(\sigma = 1\).
The value of the exponent \(\sigma \) depends on the lattice dimensionality, but it does not depend on the details of the lattice. It would, for example, be the same also for next-nearest neighbor connectivity.
The functional form we have found is also an example of a data collapse. We see that if we plot \((1-p)^{-2} n(s,p)\) as a function of \(s/s_{\xi }\), all data-points for various values of p should fall onto a single curve:
as illustrated in Fig. 2.2. We call this a data-collapse. We have one behavior for small s and then a rapid cut-off when s reaches \(s_{\xi }\). We can rewrite \(n(s,p)\) so that all the \(s_{\xi }\) dependence is in the cut-off function by realizing that since \(s_{\xi } \simeq (1-p)^{-1}\) we have that \((1-p)^2 = s_{\xi }^{-2}\). This gives
where \(F(u) = u^2e^{-u}\). We will see later that this form for \(n(s,p)\) is general—it is valid for percolation in any dimension, although with other values for the exponent \(-2\) and other shapes of the cut-off function \(F(u)\). In percolation theory, we call this exponent \(\tau \):
where \(\tau = 2\) in two dimensions. The exponent \(\tau \) is another example of a universal exponent that does not depend on details such as the connectivity rule, while it depends on the dimensionality of the system.
2.2.4 Numerical Measurement of the Cluster Number Density
Let us now test the measurement method and the theory through a numerical study of the cluster number density. According to the theory developed above we can estimate the cluster number density \(n(s,p)\) from
where \(N:s(M)\) is the number of clusters of size s measured in M realizations of the percolation system. We generate a one-dimensional percolation system and index the clusters using
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaaa_HTML.png)
Now, lw contains the indices for all the clusters. We can extract the size of the clusters by summing the number of elements for each label:
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaab_HTML.png)
The resulting list of areas for one sample is
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaac_HTML.png)
We need to collect all the areas of all the clusters for many realizations, and then calculate the number of clusters of each size s based on this long list of areas. This is all brought together by continuously appending the area-array to the end of an array allarea that contains the areas of all the clusters.
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaad_HTML.png)
This script also calculates \(N:s\) using the histogram function with L bins to ensure that there is at least one bin for each value of s:
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaae_HTML.png)
where we find s as the midpoints of the bins returned by the histogram-function. We estimate \(\overline {n(s,p)}\) from
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaaf_HTML.png)
For comparison with theory, we calculate values from the theoretically predicted expression \(n(s,p)\), which is \(n(s,p) = (1-p)^2 \exp (-s/s_{\xi })\), where \(s_{\xi } = -1/\ln p\). This is calculated for the same values of s as used for the histogram using:
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaag_HTML.png)
When we use the histogram-function with many bins, we risk that many of the bins contain zero elements. To remove these elements from the plot, we can use the nonzero function from numpy to find the indices of the elements of n that are non-zero:
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaah_HTML.png)
And then we only plot the values of \(\overline {n(s,p)}\) at these indices. The values for the theoretical \(n(s,p)\) are calculated for all values of s, and the two are plotted in the same plot:
![](http://media.springernature.com/lw553/springer-static/image/chp%3A10.1007%2F978-3-031-59900-2_2/MediaObjects/502335_1_En_2_Figaai_HTML.png)
The resulting plot is shown in Fig. 2.3. We see that the measured results and the theoretical values fit nicely, even though the theory is for an infinite system size, and the simulations where performed at \(L = 1000\). We also see that for larger values of s there are fewer observed values. It may therefore be a good idea to make the bins used for the histogram larger for larger values of s. We will return to this when we measure the cluster number density in two-dimensional systems in Chap. 4.
Plot of the predicted \(\overline {n(s,p)}\), based on \(M = 1000\) samples of a \(L = 1000\) system with \(p = 0.9\), and the theoretical \(n(s,p)\) curve on a linear scale (top) and a semilogarithmic scale (bottom). The semilogarithmic plot shows that \(\overline {n(s,p)}\) follows an exponential curve
2.2.5 Average Cluster size
Since we have an exact expression for the cluster number density, \(n(s,p)\) we can use it to calculate the average cluster size. However, what do we mean by the average cluster size in this case? In percolation theory it is common to define the average cluster size as the average size of a cluster connected to a given (random) site in our system. That is, we will use the cluster number density, \(n(s,p)\), as the basic distribution for calculating the moments.
Average Cluster Size The average cluster size \(S(p)\) is defined as
The normalization sum in the denominator is equal to p when \(p<p:c\). In this case, we can therefore write this as
We can calculate the average cluster size from:
where we have used the trick introduced in (2.7) to move the derivation out through the sum.
This shows that we can write
with \(\gamma = 1\) and \(\varGamma (p) = 1+p\). That is, the average cluster size, S, also diverges as a power-law when p approaches \(p:c\). The exponent \(\gamma = 1\) of the power-law is again universal. That is, it depends on features such as dimensionality, but not on details such as the lattice structure.
2.3 Spanning Cluster
The density of the spanning cluster, \(P(p;L)\), can be found using similar approaches. The spanning cluster only exists for \(p \ge p_c\). The discussion for \(P(p;L)\) is therefore not that interesting for the one-dimensional case. However, we can still introduce some of the general notions.
The behavior of \(P(p;\infty )\) for \(L \rightarrow \infty \) in one dimension is
What is the relation between \(P(p;L)\) and the distribution of cluster sizes? The distribution of the sizes of finite clusters is described by \(s n(s,p)\), which is the probability that a given site belongs to a cluster of size s. If we look at a given site, that site is occupied with probability p. If a site is occupied it is either part of a finite cluster of size s or it is part of the spanning cluster. Since these two events cannot occur at the same time, the probability for a site to be occupied must be the sum of the probability to belong to a finite cluster and the probability to belong to the infinite cluster. The probability to belong to a finite cluster is the sum of the probabilities to belong to a cluster of s for all s. We therefore have the equality:
which is valid for percolation in any dimension, since we have not assumed anything about the dimensionality in this argument.
We can use this relation to find the density of the spanning cluster from the cluster number density \(n(s,p)\) through
This illustrates that the cluster number density \(n(s,p)\) is a fundamental property, which can be used to deduce many aspects of the percolation system.
2.4 Correlation Length
From the simulations in Fig. 1.4 we see that the size of the clusters increases as \(p \rightarrow p_c\). We expect a similar behavior for the one-dimensional system. We have already seen that the mass (or area) of the clusters diverges as \(p \rightarrow p_c\). The characteristic cluster size \(s_{\xi }\) characterizes the mass (or area) of a cluster. How can we characterize the extent of a cluster?
To characterize the linear extent of a cluster, we find the probability for two sites at a distance r to belong to the same cluster. This probability is called the correlation function, \(g(r)\):
Correlation Function The correlation function \(g(r)\) describes the conditional probability that two sites a and b, which both are occupied and are separated by a distance r, belong to the same cluster.
For one-dimensional percolation, two sites a and b are part of the same cluster if and only if all the points in between a and b are occupied. If r denotes the number of points between a and b (not counting the start and end positions) as illustrated in Fig. 2.4, we find that the correlation function is
where \(\xi = -\frac {1}{\ln p}\) is called the correlation length. The correlation length diverges as \(p \rightarrow p_c = 1\). We can again find the way in which it diverges from a Taylor expansion in \((1-p)\) when \(p \rightarrow 1\)
We find that the correlation length is
with \(\nu = 1\). The correlation length therefore diverges as a power-law when \(p \rightarrow p_c = 1\). This behavior is general for percolation theory, although the particular value of the exponent \(\nu \) depends on the dimensionality.
We can use the correlation function to strengthen our interpretation of when a finite system size becomes relevant. As long as \(\xi \ll L\), we will not notice the effect of a finite system, because no cluster is large enough to notice the finite system size. However, when \(\xi \gg L\), the behavior is dominated by the system size L, and we are no longer able to determine how close we are to percolation. We will address these arguments in more detail in Chap. 5.
Exercises
Exercise 2.1 (Next-Nearest Neighbor Connectivity in 1d)
Assume that connectivity is to the next-nearest neighbors for an infinite one-dimensional percolation system.
-
(a)
Find \(\varPi (p,L)\) for a system of length L.
-
(b)
What is \(p:c\) for this system?
-
(c)
Find \(n(s,p)\) for an infinite system.
Exercise 2.2 (Higher Moments of s)
The k’th moment of s is defined as
-
(a)
Find the second moment of s as a function of p.
-
(b)
Calculate the first moment of s numerically from \(M = 1000\) samples for \(p = 0.90\), \(0.95\), \(0.975\) and \(0.99\). Compare with the theoretical result.
-
(c)
Calculate the second moment of s numerically from \(M = 1000\) samples for \(p = 0.90\), \(0.95\), \(0.975\) and \(0.99\). Compare with the theoretical result.
Author information
Authors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2024 The Author(s)
About this chapter
Cite this chapter
Malthe-Sørenssen, A. (2024). One-Dimensional Percolation. In: Percolation Theory Using Python. Lecture Notes in Physics, vol 1029. Springer, Cham. https://doi.org/10.1007/978-3-031-59900-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-031-59900-2_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-59899-9
Online ISBN: 978-3-031-59900-2
eBook Packages: Physics and AstronomyPhysics and Astronomy (R0)