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.

A227926 Triangle read by rows: number of pyramid polycubes counted by height and volume.

Original entry on oeis.org

1, 2, 1, 2, 4, 1, 3, 8, 4, 1, 2, 16, 10, 4, 1, 4, 22, 22, 10, 4, 1, 2, 36, 40, 24, 10, 4, 1, 4, 47, 66, 46, 24, 10, 4, 1, 3, 60, 110, 84, 48, 24, 10, 4, 1, 4, 83, 158, 144, 90, 48, 24, 10, 4, 1, 2, 100, 233, 232, 162, 92, 48, 24, 10, 4, 1, 6, 116, 327, 357, 266, 168, 92, 48, 24, 10, 4, 1, 2, 148, 444, 544, 435, 284, 170, 92, 48, 24, 10, 4, 1
Offset: 1

Views

Author

Matthieu Deneufchâtel, Oct 09 2013

Keywords

Comments

A pyramid polycube is obtained by gluing together horizontal plateaux (parallelepipeds of height 1) in such a way that (0,0,0) belongs to the first plateau and each cell with coordinate (0,b,c) belonging to the first plateau is such that b, c >= 0. If the cell with coordinates (a,b,c) belongs to the (a+1)-st plateau (a>0), then the cell with coordinates (a-1, b, c) belongs to the a-th plateau.

Crossrefs

The numbers of pyramids counted by volume are given by A229914.

Programs

  • Maple
    calcPyr:=proc(i,j,k,l) option remember;
    if (l<0) then 0
    elif (i*j*k>l) then 0
    elif k=1 then if (i*j=l) then 1 else 0;fi;
    else s:=0; a:=0;b:=0;
    while ((i+a)*j*(k-1)<=l-i*j) do
    b:=0;
    while ((i+a)*(j+b)*(k-1)<=l-i*j) do
    s:=s+(a+1)*(b+1)*calcPyr(i+a,j+b,k-1,l-i*j);
    b:=b+1;
    od;
    a:=a+1;
    od;
    s;
    fi;
    end;
    countPyr:=proc(l)
    s:=0;
    for k to l do
    i:=1:
    while (i*k<=l) do
    j:=1;
    while (i*k*j<=l) do
    s:=s+t^k*calcRecPyr(i,j,k,l);
    j:=j+1;
    od:
    i:=i+1;
    od;
    od;
    s;
    end;
    [1,seq(countPyr(ii),ii=1..200)];

Formula

The number n_{i,j,h,v} of pyramids of volume v, height h and such that the highest plateau has volume i * j is given by the recurrence: n_{i,j,h,v} = Sum_{a=0..(i*j*h-v)/((h-1)*j)} Sum_{b=0..(j*(h*(i+a)-a)-v)/((i+a)*(k-1))} (a+1)*(b+1)*n_{i+a,j+a,h-1,v-i*j}.