Description Usage Arguments Details Value Author(s) References See Also Examples
ssi30()
function provides sites labeling of the isotropic cluster on 3D square lattice with von Neumann (1,0)-neighborhood.
1 2 |
x |
a linear dimension of 3D square percolation lattice. |
p |
the relative fractions |
set |
a vector of linear indexes of a starting sites subset. |
all |
logical; if |
shape |
a vector with two shape parameters of beta-distributed random variables, weighting the percolation lattice sites. |
The percolation is simulated on 3D square lattice with uniformly weighted sites acc
and the constant parameter p
.
The isotropic cluster is formed from the accessible sites connected with initial sites subset set
.
To form the cluster the condition acc[set+e]<p
is iteratively tested for sites of the von Neumann (1,0)-neighborhood e
for the current cluster perimeter set
.
Von Neumann (1,0)-neighborhood on 3D square lattice consists of sites, only one coordinate of which is different from the current site by one: e=c(-1,
1,
-x,
x,
-x^2,
x^2)
.
Forming cluster ends with the exhaustion of accessible sites in von Neumann (1,0)-neighborhood of the current cluster perimeter.
acc |
an accessiblity matrix for 3D square percolation lattice: |
Pavel V. Moskalev
[1] Moskalev, P.V. Percolation modeling of porous structures. Moscow: URSS, 2018. 240 pp; in Russian.
[2] Moskalev, P.V. (2013) The structure of site percolation models on three-dimensional square lattices. Computer Research and Modeling, Vol.5, No.4, pp.607–622; in Russian.
fssi30, ssi20, ssa20, ssa30, ssi2d, ssi3d
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | # Example No.1. Axonometric projection of 3D cluster
require(lattice)
set.seed(20120507)
x <- y <- z <- seq(33)
cls <- which(ssi30(p=.285)>1, arr.ind=TRUE)
cloud(cls[,3] ~ cls[,1]*cls[,2],
xlim=range(x), ylim=range(y), zlim=range(z),
col=rgb(1,0,0,0.4), xlab="x", ylab="y", zlab="z", main.cex=1,
main="Isotropic (1,0)-cluster")
# Example No.2. Z=17 slice of 3D cluster
set.seed(20120507)
cls <- ssi30(p=.285)
x <- y <- z <- seq(33)
image(x, y, cls[,,17], zlim=c(0,2), cex.main=1,
main="Z=17 slice of an isotropic (1,0)-cluster")
abline(h=17, lty=2); abline(v=17, lty=2)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.