Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,57 @@
|
|||
UInt32 seed = 0
|
||||
F nonrandom()
|
||||
:seed = 1664525 * :seed + 1013904223
|
||||
R (:seed >> 16) / Float(FF'FF)
|
||||
|
||||
V nn = 15
|
||||
V tt = 5
|
||||
V pp = 0.5
|
||||
V NotClustered = 1
|
||||
V Cell2Char = ‘ #abcdefghijklmnopqrstuvwxyz’
|
||||
V NRange = [4, 64, 256, 1024, 4096]
|
||||
|
||||
F newGrid(n, p)
|
||||
R (0 .< n).map(i -> (0 .< @n).map(i -> Int(nonrandom() < @@p)))
|
||||
|
||||
F walkMaze(&grid, m, n, idx) -> N
|
||||
grid[n][m] = idx
|
||||
I n < grid.len - 1 & grid[n + 1][m] == NotClustered
|
||||
walkMaze(&grid, m, n + 1, idx)
|
||||
I m < grid[0].len - 1 & grid[n][m + 1] == NotClustered
|
||||
walkMaze(&grid, m + 1, n, idx)
|
||||
I m > 0 & grid[n][m - 1] == NotClustered
|
||||
walkMaze(&grid, m - 1, n, idx)
|
||||
I n > 0 & grid[n - 1][m] == NotClustered
|
||||
walkMaze(&grid, m, n - 1, idx)
|
||||
|
||||
F clusterCount(&grid)
|
||||
V walkIndex = 1
|
||||
L(n) 0 .< grid.len
|
||||
L(m) 0 .< grid[0].len
|
||||
I grid[n][m] == NotClustered
|
||||
walkIndex++
|
||||
walkMaze(&grid, m, n, walkIndex)
|
||||
R walkIndex - 1
|
||||
|
||||
F clusterDensity(n, p)
|
||||
V grid = newGrid(n, p)
|
||||
R clusterCount(&grid) / Float(n * n)
|
||||
|
||||
F print_grid(grid)
|
||||
L(row) grid
|
||||
print(L.index % 10, end' ‘) ’)
|
||||
L(cell) row
|
||||
print(‘ ’Cell2Char[cell], end' ‘’)
|
||||
print()
|
||||
|
||||
V grid = newGrid(nn, 0.5)
|
||||
print(‘Found ’clusterCount(&grid)‘ clusters in this ’nn‘ by ’nn" grid\n")
|
||||
print_grid(grid)
|
||||
print()
|
||||
|
||||
L(n) NRange
|
||||
V sum = 0.0
|
||||
L 0 .< tt
|
||||
sum += clusterDensity(n, pp)
|
||||
V sim = sum / tt
|
||||
print(‘t = #. p = #.2 n = #4 sim = #.5’.format(tt, pp, n, sim))
|
||||
Loading…
Add table
Add a link
Reference in a new issue