%I #17 Feb 10 2023 11:53:43
%S 1,1,0,0,1,1,1,0,0,1,2,3,2,1,0,0,1,3,6,10,8,3,1,0,0,1,4,10,22,36,28,
%T 12,4,1,0,0,1,5,15,39,83,135,107,47,17,5,1,0,0,1,6,21,62,155,324,525,
%U 418,189,72,23,6,1,0,0,1,7,28,92,259,629,1298,2094,1676,773,305,104,30,7,1,0,0
%N Pendular trinomial triangle, read by rows of 2n+1 terms (n>=0), defined by the recurrence: if 0 < k < n, T(n,k) = T(n-1,k) + 2*T(n,2n-1-k); otherwise, if n-1 < k < 2n-1, T(n,k) = T(n-1,k) + T(n,2n-2-k); with T(n,0) = T(n+1,2n) = 1 and T(n+1,2n+1) = T(n+1,2n+2) = 0.
%C The diagonals may be generated by iterated convolutions of a base sequence B with the sequence C of central terms. The g.f. B(x) of the base sequence satisfies: B = 1 + x*B^2 + 2x^2*(B^2 - B); the g.f. C(x) of the central terms satisfies: C(x) = 1/(1+x - xB(x)).
%H G. C. Greubel, <a href="/A122445/b122445.txt">Rows n = 0..50 of the triangle, flattened</a>
%e To obtain row 4, pendular sums of row 3 are carried out as follows.
%e [1, 2, 3, 2, 1, 0, 0]: given row 3;
%e [1, _, _, __, _, _, _]: start with T(4,0) = T(3,0) = 1;
%e [1, _, _, __, _, _, 1]: T(4,6) = T(4,0) + 2*T(3,6) = 1 + 2*0 = 1;
%e [1, 3, _, __, _, _, 1]: T(4,1) = T(4,6) + 1*T(3,1) = 1 + 1*2 = 3;
%e [1, 3, _, __, _, 3, 1]: T(4,5) = T(4,1) + 2*T(3,5) = 3 + 2*0 = 3;
%e [1, 3, 6, __, _, 3, 1]: T(4,2) = T(4,5) + 1*T(3,2) = 3 + 1*3 = 6;
%e [1, 3, 6, __, 8, 3, 1]: T(4,4) = T(4,2) + 2*T(3,4) = 6 + 2*1 = 8;
%e [1, 3, 6, 10, 8, 3, 1]: T(4,3) = T(4,4) + 1*T(3,3) = 8 + 1*2 = 10;
%e [1, 3, 6, 10, 8, 3, 1,0,0]: complete row 4 by appending two zeros.
%e Triangle begins:
%e 1;
%e 1, 0, 0;
%e 1, 1, 1, 0, 0;
%e 1, 2, 3, 2, 1, 0, 0;
%e 1, 3, 6, 10, 8, 3, 1, 0, 0;
%e 1, 4, 10, 22, 36, 28, 12, 4, 1, 0, 0;
%e 1, 5, 15, 39, 83, 135, 107, 47, 17, 5, 1, 0, 0;
%e 1, 6, 21, 62, 155, 324, 525, 418, 189, 72, 23, 6, 1, 0, 0;
%e Central terms are:
%e C = A122447 = [1, 0, 1, 2, 8, 28, 107, 418, 1676, 6848, ...].
%e Lower diagonals start:
%e D1 = A122448 = [1, 1, 3, 10, 36, 135, 525, 2094, 8524, ...];
%e D2 = A122449 = [1, 2, 6, 22, 83, 324, 1298, 5302, 22002, ...].
%e Diagonals above central terms (ignoring leading zeros) start:
%e U1 = A122450 = [1, 3, 12, 47, 189, 773, 3208, 13478, 57222, ...];
%e U2 = A122451 = [1, 4, 17, 72, 305, 1300, 5576, 24068, 104510, ...].
%e There exists the base sequence:
%e B = A122446 = [1, 1, 2, 7, 24, 88, 336, 1321, 5316, 21788, ...]
%e which generates all diagonals by convolutions with central terms:
%e D2 = B * D1 = B^2 * C
%e U2 = B * U1 = B^2 * C"
%e where C" = [1, 2, 8, 28, 107, 418, 1676, 6848, 28418, ...]
%e are central terms not including the initial [1,0].
%p T:= proc(n, k) option remember;
%p if k=0 and n=0 then 1
%p elif k<0 or k>2*(n-1) then 0
%p elif n=2 and k<3 then 1
%p else T(n-1, k) + `if`(k<n, T(n, 2*n-k-1), T(n-1, k) + T(n, 2*n-k-2))
%p fi
%p end:
%p seq(seq(T(n, k), k=0..2*n), n=0..12); # _G. C. Greubel_, Mar 16 2021
%t T[n_, k_]:= T[n, k]= If[n==0 && k==0, 1, If[k<0 || k>2*(n-1), 0, If[n==2 && k<3, 1, T[n-1, k] + If[k<n, T[n, 2*n-k-1], T[n-1, k] + T[n, 2*n-k-2]]]]];
%t Table[T[n, k], {n,0,12}, {k,0,2*n}] // Flatten (* _G. C. Greubel_, Mar 16 2021 *)
%o (PARI) {T(n,k)= if(k==0 && n==0, 1, if(k>2*n-2 || k<0, 0, if(n==2 && k<=2, 1, if(k<n,T(n-1,k) +T(n,2*n-1-k),2*T(n-1,k)+T(n,2*n-2-k) ))))};
%o (Sage)
%o @CachedFunction
%o def T(n, k):
%o if (n==0 and k==0): return 1
%o elif (k<0 or k>2*(n-1)): return 0
%o elif (n==2 and k<3): return 1
%o else: return T(n-1, k) + ( T(n, 2*n-k-1) if k<n else T(n-1, k) +T(n, 2*n-k-2) )
%o flatten([[T(n, k) for k in (0..2*n)] for n in (0..12)]) # _G. C. Greubel_, Mar 16 2021
%Y Cf. A122446, A122447 (central terms), A122452 (row sums).
%Y Diagonals: A122448, A122449, A122450, A122451.
%Y Variants: A118340, A118345, A118350, A119369.
%K nonn,tabf
%O 0,11
%A _Paul D. Hanna_, Sep 07 2006