Percolation/Mean cluster density: Difference between revisions

Content added Content deleted
(Corrected a bug in procedure "clusterCount".)
Line 908: Line 908:
func clusterCount(grid: var Grid): int =
func clusterCount(grid: var Grid): int =
var walkIndex = 1
var walkIndex = 1
for n, row in grid:
for n in 0..grid.high:
for m, cell in row:
for m in 0..grid[0].high:
if cell == NotClustered:
if grid[n][m] == NotClustered:
inc walkIndex
inc walkIndex
grid.walkMaze(m, n, walkIndex)
grid.walkMaze(m, n, walkIndex)
Line 947: Line 947:


{{out}}
{{out}}
<pre>Found 22 clusters in this 15 by 15 grid
<pre>Found 14 clusters in this 15 by 15 grid


0) a b c d e f g h i
0) a a b c c c c d
1) a a a a a a a a g
1) e e c c c c c c c
2) a a a a a j
2) f e c c c c c
3) a a a a a a a k
3) f f c c c c c c c c c
4) a a a a a a a l
4) f c c c c c c c c c c c
5) a a a a a m
5) g c c c c c c c
6) a a a a a a a a n o
6) h i c c c c c c c c
7) a a a a a a a
7) i i c c c
8) a a a a p q r s
8) j j j j c c k
9) a a a a a a a a p p p p
9) l j c k k
0) a a a a a t p p
0) l l l l j j k
1) a a a a a p p
1) l l l l l l j j j j j
2) a p p p p p
2) l l l m j j j j
3) a a a p p p p p
3) l l l l j j
4) u a a p p p p p p v
4) n l l l l j j j j j j j j


t = 5 p = 0.50 n = 4 sim = 0.16250
t = 5 p = 0.50 n = 4 sim = 0.11250
t = 5 p = 0.50 n = 64 sim = 0.10308
t = 5 p = 0.50 n = 64 sim = 0.07085
t = 5 p = 0.50 n = 256 sim = 0.09183
t = 5 p = 0.50 n = 256 sim = 0.06702
t = 5 p = 0.50 n = 1024 sim = 0.09053
t = 5 p = 0.50 n = 1024 sim = 0.06619
t = 5 p = 0.50 n = 4096 sim = 0.08995</pre>
t = 5 p = 0.50 n = 4096 sim = 0.06587</pre>


=={{header|Perl}}==
=={{header|Perl}}==