Reminder: The OEIS is hiring a new managing editor, and the application deadline is January 26.
%I #9 Jan 19 2019 04:14:59
%S 3,9,23,47,91,169,291,494,815,1295,2043,3155,4775,7165,10599,15458,
%T 22455,32145,45659,64519,90247,125493,173515,238153,325423,442169,
%U 597575,804203,1077283,1436593,1908571,2525611,3329391,4373969,5726611,7472763,9721983,12608475,16305179,21027921,27043631,34689187,44385995,56652421,72137483,91645813,116167379,146932651,185456419,233594265
%N Numbers of quasi-pyramid polycubes of a given volume (number of atomic cells)
%C 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.
%C A quasi-pyramid polycube is an object obtained from a pyramid by removing all the cells with coordinates (a,b,c) with 1 <= a <= h for a fixed pair (b,c) chosen among the triples (h,b,c) such that there is a cell with coordinates (h,b,c) in the pyramid ((h,b,c) belongs to the highest plateau of the pyramid).
%C If Q(x) denotes the generating function of the quasi-pyramids and P(x,h) the generating function of the pyramids counted by height, then the x^(-h) P(x,h) converges when h goes to infinity and the limit is Q(x) + x/(1-x).
%p calcPyr:=proc(i, j, k, l) option remember;
%p if (l<0) then 0
%p elif (i*j*k>l) then 0
%p elif k=1 then if (i*j=l) then 1 else 0; fi;
%p else s:=0; a:=0; b:=0;
%p while ((i+a)*j*(k-1)<=l-i*j) do
%p b:=0;
%p while ((i+a)*(j+b)*(k-1)<=l-i*j) do
%p s:=s+(a+1)*(b+1)*calcPyr(i+a, j+b, k-1, l-i*j);
%p b:=b+1;
%p od;
%p a:=a+1;
%p od;
%p s;
%p fi;
%p end;
%p countPyr:=proc(l)
%p s:=0;
%p for k to l do
%p i:=1:
%p while (i*k<=l) do
%p j:=1;
%p while (i*k*j<=l) do
%p s:=s+t^k*calcRecPyr(i, j, k, l);
%p j:=j+1;
%p od:
%p i:=i+1;
%p od;
%p od;
%p s;
%p end;
%p enum=[seq(countPyr(ii), ii=1..200)];
%p serie_quasiPyr:=proc(l) global enum;local ii;
%p map(coeff,enump,t^l);
%p select(x->x>0,%);
%p sum(t^(ii-1)*%[ii],ii=1..nops(%));
%p end;
%p serie_quasiPyr(100):
%p [1,seq(coeff(%,t^ii)-1,ii=1..50)];
%Y A229914, A227926
%K nonn
%O 1,1
%A _Matthieu Deneufchâtel_, Oct 10 2013