cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A328506 Iteration of Abelian sandpile model where the n-th matrix expansions occurs. Begins with infinite sand in 1 X 1 matrix.

This page as a plain text file.
%I A328506 #27 Oct 24 2019 10:52:24
%S A328506 1,5,16,36,66,101,160,218,285,374,464,565,680,815,969,1124,1282,1467,
%T A328506 1659,1863,2091,2346,2559,2824,3100,3411,3690,4043,4380,4697,5060,
%U A328506 5468,5833,6266,6670,7132,7595,8006,8502,9004,9518,10039,10609,11155,11740,12304,12971,13603,14202,14861,15532,16217
%N A328506 Iteration of Abelian sandpile model where the n-th matrix expansions occurs. Begins with infinite sand in 1 X 1 matrix.
%C A328506 The Abelian sandpile model is a cellular automaton considering the behavior of sand grains on a square grid. Any square containing 4 or more grains will topple, sending a grain to each of its 4 neighbors and subtracting 4 grains from itself.
%C A328506 Here, expansion refers to the addition of a boundary layer to the outside of the existing matrix when the model reaches beyond the previous matrix boundary.
%e A328506                                                       _ _ _ _ _
%e A328506           _ _ _      _ _ _      _ _ _      _ _ _     |0|0|1|0|0|
%e A328506    _     |0|1|0|    |0|2|0|    |0|3|0|    |0|4|0|    |0|2|1|2|0|
%e A328506   |∞| -> |1|∞|1| -> |2|∞|2| -> |3|∞|3| -> |4|∞|4| -> |1|1|∞|1|1| -> ...
%e A328506    ‾     |0|1|0|    |0|2|0|    |0|3|0|    |0|4|0|    |0|2|1|2|0|
%e A328506           ‾ ‾ ‾      ‾ ‾ ‾      ‾ ‾ ‾      ‾ ‾ ‾     |0|0|1|0|0|
%e A328506                                                       ‾ ‾ ‾ ‾ ‾
%e A328506             ^                                             ^
%e A328506      1st expansion on                              2nd expansion on
%e A328506    1st iteration (a(1) = 1)                      5th iteration (a(2) = 5)
%o A328506 (MATLAB)
%o A328506 L = 3;
%o A328506 plane = zeros(3,3);
%o A328506 plane(2,2) = 99999999999999999999999999999999999999999999999;
%o A328506 listn = [];
%o A328506 for n = 1:50000
%o A328506     plane2 = plane;
%o A328506     for r = 1:L
%o A328506         for c = 1:L
%o A328506             if plane(r,c) > 3
%o A328506                 plane2(r,c) = plane2(r,c) - 4;
%o A328506                 plane2(r-1,c) = plane2(r-1,c)+1;
%o A328506                 plane2(r+1,c) = plane2(r+1,c)+1;
%o A328506                 plane2(r,c-1) = plane2(r,c-1)+1;
%o A328506                 plane2(r,c+1) = plane2(r,c+1)+1;
%o A328506             end
%o A328506         end
%o A328506     end
%o A328506     if sum(plane2(:,1))+sum(plane2(1,:)) > 0
%o A328506         plane2 = padarray(plane2,[1,1]);
%o A328506         L = L+2;
%o A328506         listn = [listn n];
%o A328506     end
%o A328506     plane = plane2;
%o A328506 end
%o A328506 fprintf('%s\n', sprintf('%d,', listn))
%o A328506 (PARI)
%o A328506 Step(M)={my(n=#M, R=matrix(n,n)); for(i=2, n-1, for(j=2, n-1, if(M[i,j]>=4, R[i,j]-=4; R[i,j+1]++; R[i,j-1]++; R[i-1,j]++; R[i+1,j]++))); M+R}
%o A328506 Expand(M)={my(n=#M, R=matrix(n+2, n+2)); for(i=1, n, for(j=1, n, R[i+1, j+1]=M[i,j])); R}
%o A328506 seq(n)={my(L=List(), M=matrix(3,3), k=0); while(#L<n, k++; my(o=#L+2); M[o,o]=4; M=Step(M); if(M[1,], M=Expand(M); listput(L,k))); Vec(L)} \\ _Andrew Howroyd_, Oct 23 2019
%Y A328506 Cf. A259013, A249872.
%K A328506 nonn
%O A328506 1,2
%A A328506 _Parker Grootenhuis_, Oct 22 2019