A274706
Irregular triangle read by rows. T(n,k) (n >= 0) is a statistic on orbital systems over n sectors: the number of orbitals which have an integral whose absolute value is k.
Original entry on oeis.org
1, 1, 0, 2, 0, 4, 2, 2, 0, 2, 0, 2, 6, 4, 6, 4, 4, 4, 2, 0, 6, 0, 6, 0, 4, 0, 2, 0, 2, 6, 24, 16, 20, 14, 16, 12, 8, 6, 8, 4, 4, 2, 8, 0, 14, 0, 14, 0, 10, 0, 10, 0, 6, 0, 4, 0, 2, 0, 2, 36, 52, 68, 48, 64, 48, 48, 40, 44, 32, 36, 24, 22, 16, 16, 8, 10, 8, 4, 4, 2
Offset: 0
The length of row n is 1+floor(n^2//4).
The triangle begins:
[n] [k=0,1,2,...] [row sum]
[0] [1] 1
[1] [1] 1
[2] [0, 2] 2
[3] [0, 4, 2] 6
[4] [2, 0, 2, 0, 2] 6
[5] [6, 4, 6, 4, 4, 4, 2] 30
[6] [0, 6, 0, 6, 0, 4, 0, 2, 0, 2] 20
[7] [6, 24, 16, 20, 14, 16, 12, 8, 6, 8, 4, 4, 2] 140
[8] [8, 0, 14, 0, 14, 0, 10, 0, 10, 0, 6, 0, 4, 0, 2, 0, 2] 70
T(5, 4) = 4 because the integral of four orbitals have the absolute value 4:
Integral([-1, -1, 1, 1, 0]) = -4, Integral([0, -1, -1, 1, 1]) = -4,
Integral([0, 1, 1, -1, -1]) = 4, Integral([1, 1, -1, -1, 0]) = 4.
-
from itertools import accumulate
# Brute force counting
def unit_orbitals(n):
sym_range = [i for i in range(-n+1, n, 2)]
for c in Combinations(sym_range, n):
P = Permutations([sgn(v) for v in c])
for p in P: yield p
def orbital_integral(n):
if n == 0: return [1]
S = [0]*(1+floor(n^2//4))
for u in unit_orbitals(n):
L = list(accumulate(accumulate(u)))
S[abs(L[-1])] += 1
return S
for n in (0..8): print(orbital_integral(n))
A274710
A statistic on orbital systems over n sectors: the number of orbitals which make k turns.
Original entry on oeis.org
1, 1, 0, 2, 0, 0, 6, 0, 2, 2, 2, 0, 0, 6, 12, 12, 0, 2, 4, 8, 4, 2, 0, 0, 6, 24, 52, 40, 18, 0, 2, 6, 18, 18, 18, 6, 2, 0, 0, 6, 36, 120, 180, 180, 84, 24, 0, 2, 8, 32, 48, 72, 48, 32, 8, 2, 0, 0, 6, 48, 216, 480, 744, 672, 432, 144, 30, 0, 2, 10, 50, 100, 200, 200, 200, 100, 50, 10, 2
Offset: 0
Triangle read by rows, n>=0. The length of row n is n for n>=1.
[n] [k=0,1,2,...] [row sum]
[0] [1] 1
[1] [1] 1
[2] [0, 2] 2
[3] [0, 0, 6] 6
[4] [0, 2, 2, 2] 6
[5] [0, 0, 6, 12, 12] 30
[6] [0, 2, 4, 8, 4, 2] 20
[7] [0, 0, 6, 24, 52, 40, 18] 140
[8] [0, 2, 6, 18, 18, 18, 6, 2] 70
[9] [0, 0, 6, 36, 120, 180, 180, 84, 24] 630
T(5,2) = 6 because the six orbitals [-1, -1, 0, 1, 1], [-1, -1, 1, 1, 0], [0, -1, -1, 1, 1], [0, 1, 1, -1, -1], [1, 1, -1, -1, 0], [1, 1, 0, -1, -1] make 2 turns.
A274878
A statistic on orbital systems over n sectors: the number of orbitals with span k.
Original entry on oeis.org
1, 1, 0, 2, 0, 6, 0, 2, 4, 0, 10, 20, 0, 2, 12, 6, 0, 14, 84, 42, 0, 2, 28, 32, 8, 0, 18, 252, 288, 72, 0, 2, 60, 120, 60, 10, 0, 22, 660, 1320, 660, 110, 0, 2, 124, 390, 300, 96, 12, 0, 26, 1612, 5070, 3900, 1248, 156, 0, 2, 252, 1176, 1260, 588, 140, 14
Offset: 0
Triangle read by rows, n>=0. The length of row n is floor((n+2)/2).
[ n] [k=0,1,2,...] [row sum]
[ 0] [1] 1
[ 1] [1] 1
[ 2] [0, 2] 2
[ 3] [0, 6] 6
[ 4] [0, 2, 4] 6
[ 5] [0, 10, 20] 30
[ 6] [0, 2, 12, 6] 20
[ 7] [0, 14, 84, 42] 140
[ 8] [0, 2, 28, 32, 8] 70
[ 9] [0, 18, 252, 288, 72] 630
[10] [0, 2, 60, 120, 60, 10] 252
T(6, 3) = 6 because the span of the following six orbitals is 3:
[-1, -1, -1, 1, 1, 1], [-1, -1, 1, 1, 1, -1], [-1, 1, 1, 1, -1, -1],
[1, -1, -1, -1, 1, 1], [1, 1, -1, -1, -1, 1], [1, 1, 1, -1, -1, -1].
A274879
A statistic on orbital systems over n sectors: the number of orbitals with k returns.
Original entry on oeis.org
1, 1, 2, 2, 4, 2, 4, 6, 12, 12, 4, 8, 8, 20, 40, 48, 32, 10, 20, 24, 16, 70, 140, 180, 160, 80, 28, 56, 72, 64, 32, 252, 504, 672, 672, 480, 192, 84, 168, 224, 224, 160, 64, 924, 1848, 2520, 2688, 2240, 1344, 448, 264, 528, 720, 768, 640, 384, 128
Offset: 0
Triangle read by rows, n>=0. The length of row n is floor((n+1)/2) for n>=1.
[ n] [k=0,1,2,...] [row sum]
[ 0] [1] 1
[ 1] [1] 1
[ 2] [2] 2
[ 3] [2, 4] 6
[ 4] [2, 4] 6
[ 5] [6, 12, 12] 30
[ 6] [4, 8, 8] 20
[ 7] [20, 40, 48, 32] 140
[ 8] [10, 20, 24, 16] 70
[ 9] [70, 140, 180, 160, 80] 630
[10] [28, 56, 72, 64, 32] 252
[11] [252, 504, 672, 672, 480, 192] 2772
T(6,0) = 4 because the following 4 orbitals stay above or below the central
circle: [-1, -1, -1, 1, 1, 1], [-1, -1, 1, -1, 1, 1], [1, 1, -1, 1, -1, -1],
[1, 1, 1, -1, -1, -1].
-
# uses[unit_orbitals from A274709]
from itertools import accumulate
# Brute force counting
def orbital_returns(n):
if n == 0: return [1]
S = [0]*((n+1)//2)
for u in unit_orbitals(n):
L = list(accumulate(u))
Z = len(list(filter(lambda z: z == 0, L)))
S[Z-1] += 1 # exclude origin
return S
for n in (0..10): print(orbital_returns(n))
A274880
A statistic on orbital systems over n sectors: the number of orbitals with k restarts.
Original entry on oeis.org
1, 1, 2, 5, 1, 4, 2, 18, 11, 1, 10, 8, 2, 65, 57, 17, 1, 28, 28, 12, 2, 238, 252, 116, 23, 1, 84, 96, 54, 16, 2, 882, 1050, 615, 195, 29, 1, 264, 330, 220, 88, 20, 2, 3300, 4257, 2915, 1210, 294, 35, 1, 858, 1144, 858, 416, 130, 24, 2, 12441, 17017, 13013, 6461, 2093, 413, 41, 1
Offset: 0
Triangle read by rows, n>=0. The length of row n is floor((n+1)/2) for n>=1.
[n] [k=0,1,2,...] [row sum]
[ 0] [1] 1
[ 1] [1] 1
[ 2] [2] 2
[ 3] [5, 1] 6
[ 4] [4, 2] 6
[ 5] [18, 11, 1] 30
[ 6] [10, 8, 2] 20
[ 7] [65, 57, 17, 1] 140
[ 8] [28, 28, 12, 2] 70
[ 9] [238, 252, 116, 23, 1] 630
[10] [84, 96, 54, 16, 2] 252
[11] [882, 1050, 615, 195, 29, 1] 2772
T(6, 2) = 2 because there are two orbitals over 6 segments which have 2 ascents:
[-1, 1, 1, -1, 1, -1] and [1, -1, 1, -1, 1, -1].
A274881
A statistic on orbital systems over n sectors: the number of orbitals which have an ascent of length k.
Original entry on oeis.org
1, 1, 0, 2, 0, 6, 0, 3, 3, 0, 18, 12, 0, 4, 12, 4, 0, 40, 80, 20, 0, 5, 40, 20, 5, 0, 75, 375, 150, 30, 0, 6, 120, 90, 30, 6, 0, 126, 1470, 882, 252, 42, 0, 7, 350, 371, 147, 42, 7, 0, 196, 5292, 4508, 1568, 392, 56, 0, 8, 1008, 1456, 672, 224, 56, 8
Offset: 0
Triangle read by rows, n>=0. The length of row n is floor((n+2)/2).
[ n] [k=0,1,2,...] [row sum]
[ 0] [1] 1
[ 1] [1] 1
[ 2] [0, 2] 2
[ 3] [0, 6] 6
[ 4] [0, 3, 3] 6
[ 5] [0, 18, 12] 30
[ 6] [0, 4, 12, 4] 20
[ 7] [0, 40, 80, 20] 140
[ 8] [0, 5, 40, 20, 5] 70
[ 9] [0, 75, 375, 150, 30] 630
[10] [0, 6, 120, 90, 30, 6] 252
[11] [0, 126, 1470, 882, 252, 42] 2772
[12] [0, 7, 350, 371, 147, 42, 7] 924
T(6,3) = 4 because four orbitals over six sectors have a maximal up-run of length 3.
[-1,-1,-1,1,1,1], [-1,-1,1,1,1,-1], [-1,1,1,1,-1,-1], [1,1,1,-1,-1,-1].
A274708
A statistic on orbital systems over n sectors: the number of orbitals with k peaks.
Original entry on oeis.org
1, 1, 2, 4, 2, 4, 2, 12, 15, 3, 10, 8, 2, 38, 68, 30, 4, 26, 30, 12, 2, 121, 272, 183, 49, 5, 70, 104, 60, 16, 2, 384, 1026, 912, 372, 72, 6, 192, 350, 260, 100, 20, 2, 1214, 3727, 4095, 2220, 650, 99, 7, 534, 1152, 1050, 520, 150, 24, 2, 3822, 13200, 17178, 11600, 4510, 1032, 130, 8
Offset: 0
Triangle read by rows, n>=0. The length of row n is floor((n+1)/2) for n>=1.
[ n] [k=0,1,2,...] [row sum]
[ 0] [ 1] 1
[ 1] [ 1] 1
[ 2] [ 2] 2
[ 3] [ 4, 2] 6
[ 4] [ 4, 2] 6
[ 5] [ 12, 15, 3] 30
[ 6] [ 10, 8, 2] 20
[ 7] [ 38, 68, 30, 4] 140
[ 8] [ 26, 30, 12, 2] 70
[ 9] [121, 272, 183, 49, 5] 630
[10] [ 70, 104, 60, 16, 2] 252
[11] [384, 1026, 912, 372, 72, 6] 2772
[12] [192, 350, 260, 100, 20, 2] 924
T(6, 2) = 2 because the two orbitals [-1, 1, -1, 1, -1, 1] and [1, -1, 1, -1, 1, -1] have 2 peaks.
A274888
Triangle read by rows: the q-analog of the swinging factorial which is defined as q-multinomial([floor(n/2), n mod 2, floor(n/2)]).
Original entry on oeis.org
1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 1, 2, 4, 5, 6, 5, 4, 2, 1, 1, 1, 2, 3, 3, 3, 3, 2, 1, 1, 1, 2, 4, 7, 10, 13, 16, 17, 17, 16, 13, 10, 7, 4, 2, 1, 1, 1, 2, 3, 5, 5, 7, 7, 8, 7, 7, 5, 5, 3, 2, 1, 1, 1, 2, 4, 7, 12, 17, 24, 31, 39, 45, 51, 54, 56, 54, 51, 45, 39, 31, 24, 17, 12, 7, 4, 2, 1
Offset: 0
The polynomials start:
[0] 1
[1] 1
[2] q + 1
[3] (q + 1) * (q^2 + q + 1)
[4] (q^2 + 1) * (q^2 + q + 1)
[5] (q^2 + 1) * (q^2 + q + 1) * (q^4 + q^3 + q^2 + q + 1)
[6] (q + 1) * (q^2 - q + 1) * (q^2 + 1) * (q^4 + q^3 + q^2 + q + 1)
The coefficients of the polynomials start:
[n] [k=0,1,2,...] [row sum]
[0] [1] [1]
[1] [1] [1]
[2] [1, 1] [2]
[3] [1, 2, 2, 1] [6]
[4] [1, 1, 2, 1, 1] [6]
[5] [1, 2, 4, 5, 6, 5, 4, 2, 1] [30]
[6] [1, 1, 2, 3, 3, 3, 3, 2, 1, 1] [20]
[7] [1, 2, 4, 7, 10, 13, 16, 17, 17, 16, 13, 10, 7, 4, 2, 1] [140]
[8] [1, 1, 2, 3, 5, 5, 7, 7, 8, 7, 7, 5, 5, 3, 2, 1, 1] [70]
T(5, 4) = 6 because the 2 orbitals [-1,-1,1,1,0] and [-1,0,1,1,-1] have at position 4 and the 4 orbitals [0,-1,1,-1,1], [1,-1,0,-1,1], [1,-1,1,-1,0] and [1,0,1,-1,-1] at positions 1 and 3 a down step.
-
QSwingFactorial_coeffs := proc(n) local P,a,b;
a := mul((p^(n-i)-1)/(p^(i+1)-1),i=0..iquo(n,2)-1);
b := ((p^(iquo(n,2)+1)-1)/(p-1))^((1-(-1)^n)/2);
P := simplify(a*b); seq(coeff(P,p,j),j=0..degree(P)) end:
for n from 0 to 9 do print(QSwingFactorial_coeffs(n)) od;
# Alternatively (recursive):
with(QDifferenceEquations):
QSwingRec := proc(n,q) local r; if n = 0 then return 1 fi:
if irem(n,2) = 0 then r := (1+q^(n/2))/QBrackets(n/2,q)
else r := QBrackets(n,q) fi; r*QSwingRec(n-1,q) end:
Trow := proc(n) expand(QSimplify(QSwingRec(n,q)));
seq(coeff(%,q,j),j=0..degree(%)) end: seq(Trow(n),n=0..10);
-
p[n_] := QFactorial[n, q] / QFactorial[Quotient[n, 2], q]^2
Table[CoefficientList[p[n] // FunctionExpand, q], {n,0,9}] // Flatten
-
from sage.combinat.q_analogues import q_factorial
def q_swing_factorial(n, q=None):
return q_factorial(n)//q_factorial(n//2)^2
for n in (0..8): print(q_swing_factorial(n).list())
-
# uses[unit_orbitals from A274709]
# Brute force counting
def orbital_major_index(n):
S = [0]*(((n+1)//2)^2 + ((n+1) % 2))
for u in unit_orbitals(n):
L = [i+1 if u[i+1] < u[i] else 0 for i in (0..n-2)]
# i+1 because u is 0-based whereas convention assumes 1-base.
S[sum(L)] += 1
return S
for n in (0..9): print(orbital_major_index(n))
A274886
Triangle read by rows, the q-analog of the extended Catalan numbers A057977.
Original entry on oeis.org
1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 2, 2, 2, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 2, 3, 4, 4, 5, 4, 4, 3, 2, 1, 1, 1, 0, 1, 1, 2, 1, 2, 1, 2, 1, 1, 0, 1, 1, 1, 2, 3, 5, 6, 8, 9, 11, 11, 12, 11, 11, 9, 8, 6, 5, 3, 2, 1, 1, 1, 0, 1, 1, 2, 2, 3, 2, 4, 3, 4, 3, 4, 2, 3, 2, 2, 1, 1, 0, 1
Offset: 0
The polynomials start:
[0] 1
[1] 1
[2] 1
[3] q^2 + q + 1
[4] q^2 + 1
[5] (q^2 + 1) * (q^4 + q^3 + q^2 + q + 1)
[6] (q^2 - q + 1) * (q^4 + q^3 + q^2 + q + 1)
The coefficients of the polynomials are:
[ 0] [1]
[ 1] [1]
[ 2] [1]
[ 3] [1, 1, 1]
[ 4] [1, 0, 1]
[ 5] [1, 1, 2, 2, 2, 1, 1]
[ 6] [1, 0, 1, 1, 1, 0, 1]
[ 7] [1, 1, 2, 3, 4, 4, 5, 4, 4, 3, 2, 1, 1]
[ 8] [1, 0, 1, 1, 2, 1, 2, 1, 2, 1, 1, 0, 1]
[ 9] [1, 1, 2, 3, 5, 6, 8, 9, 11, 11, 12, 11, 11, 9, 8, 6, 5, 3, 2, 1, 1]
[10] [1, 0, 1, 1, 2, 2, 3, 2, 4, 3, 4, 3, 4, 2, 3, 2, 2, 1, 1, 0, 1]
-
QExtCatalan := proc(n) local h, p, P;
P := x -> QDifferenceEquations:-QPochhammer(q,q,x);
h := iquo(n, 2): p := `if`(n::even, 1-q, 1); (p*P(n))/(P(h)*P(h+1));
expand(simplify(expand(%))); seq(coeff(%, q, j), j=0..degree(%)) end:
seq(QExtCatalan(n, q), n=0..10);
-
(* Function QBinom1 is defined in A274885. *)
QExtCatalan[n_] := QBinom1[n] / QBinomial[n+1,1,q]; Table[CoefficientList[ QExtCatalan[n] // FunctionExpand,q], {n,0,10}] // Flatten
-
# uses[q_binom1 from A274885]
from sage.combinat.q_analogues import q_int
def q_ext_catalan_number(n): return q_binom1(n)//q_int(n+1)
for n in (0..10): print([n], q_ext_catalan_number(n).list())
-
# uses[unit_orbitals from A274709]
# Brute force counting
def catalan_major_index(n):
S = [0]*(((n+1)//2)^2 + ((n+1) % 2) - (n//2))
for u in unit_orbitals(n):
if any(x > 0 for x in accumulate(u)): continue # never rise above 0
L = [i+1 if u[i+1] < u[i] else 0 for i in (0..n-2)]
# i+1 because u is 0-based whereas convention assumes 1-base.
S[sum(L)] += 1
return S
for n in (0..10): print(catalan_major_index(n))
A275325
Triangle read by rows: number of orbitals over n sectors which have a Catalan decomposition into k parts.
Original entry on oeis.org
1, 0, 1, 0, 2, 0, 6, 0, 4, 2, 0, 20, 10, 0, 10, 8, 2, 0, 70, 56, 14, 0, 28, 28, 12, 2, 0, 252, 252, 108, 18, 0, 84, 96, 54, 16, 2, 0, 924, 1056, 594, 176, 22, 0, 264, 330, 220, 88, 20, 2, 0, 3432, 4290, 2860, 1144, 260, 26, 0, 858, 1144, 858, 416, 130, 24, 2
Offset: 0
Table starts:
[ n] [k=0,1,2,...] [row sum]
[ 0] [1] 1
[ 1] [0, 1] 1
[ 2] [0, 2] 2
[ 3] [0, 6] 6
[ 4] [0, 4, 2] 6
[ 5] [0, 20, 10] 30
[ 6] [0, 10, 8, 2] 20
[ 7] [0, 70, 56, 14] 140
[ 8] [0, 28, 28, 12, 2] 70
[ 9] [0, 252, 252, 108, 18] 630
[10] [0, 84, 96, 54, 16, 2] 252
[11] [0, 924, 1056, 594, 176, 22] 2772
[12] [0, 264, 330, 220, 88, 20, 2] 924
For example T(2*n, n) = 2 counts the Catalan decompositions
[[-1, 1], [1, -1], [-1, 1], ..., [(-1)^n, (-1)^(n+1)]] and
[[1, -1], [-1, 1], [1, -1], ..., [(-1)^(n+1), (-1)^n]].
-
# uses[unit_orbitals from A274709]
# Brute force counting
from itertools import accumulate
def catalan_factors(P):
def bisect(orb):
i = 1
A = list(accumulate(orb))
if orb[1] > 0 if orb[0] == 0 else orb[0] > 0:
while i < len(A) and A[i] >= 0: i += 1
else:
while i < len(A) and A[i] <= 0: i += 1
return i
R = []
while P:
i = bisect(P)
R.append(P[:i])
P = P[i:]
return R
def orbital_factors(n):
if n == 0: return [1]
if n == 1: return [0, 1]
S = [0]*(n//2 + 1)
for o in unit_orbitals(n):
S[len(catalan_factors(o))] += 1
return S
for n in (0..9): print(orbital_factors(n))
Showing 1-10 of 12 results.
Comments