"Integer partitions"의 두 판 사이의 차이
imported>Pythagoras0 |
imported>Pythagoras0 |
||
72번째 줄: | 72번째 줄: | ||
(* partition into odd parts *)<br> IntegerPartitions[11, All, {1, 3, 5, 7, 9, 11}] | (* partition into odd parts *)<br> IntegerPartitions[11, All, {1, 3, 5, 7, 9, 11}] | ||
+ | [[분류:math and physics]] | ||
[[분류:math and physics]] | [[분류:math and physics]] |
2012년 10월 29일 (월) 09:55 판
background
n:=9
md:=5
n:=12
md:=7
n:=6
md:=11
will be a good choice
\(p(5k+4)\equiv 0 \pmod 5\)
\(p(7k+5)\equiv 0 \pmod 7\)
\(p(11k+6)\equiv 0 \pmod {11}\)
partition rank and crank
(*define a integer you want to investigate*)n := 6
(*choose the proper moduli for the partition statistics*)
md := 2
S[n_] := IntegerPartitions[n]
(*define the rank of a partition with the name "pr"*)
pr[s_] := Max[s] - Length[s]
(*define the crank of a partition with the name "crank"*)
Om[s_] := Count[s, 1]
Mu[s_] := Length[Select[s, # > Om[s] &]]
crank[s_] := If[Om[s] == 0, Max[s], Mu[s] - Om[s]]
(*modulus distribution of partition rank*)
Sort[Tally[Table[Mod[pr[s], md], {s, S[n]}]]]
(*modulus distribution of partition crank*)
Sort[Tally[Table[Mod[crank[s], md], {s, S[n]}]]]
(*list of paritions with rank& crank*)
Do[Print[s, ", rank=", pr[s], "\[Congruent]", Mod[pr[s], md], "(mod ",
md, ")", ", crank=", crank[s], "\[Congruent]", Mod[crank[s], md],
"(mod ", md, ")"], {s, S[n]}]
(*you will see the distribution of rank/crank modulus,the partition \
statistics and list of paritions with rank&crank*)
number of partitions with odd and even rank
- for theoretical background, see rank of partition and mock theta function
S[n_] := IntegerPartitions[n]
pr[s_] := Max[s] - Length[s]
PrOd[n_] := Length[Select[S[n], OddQ[pr[#]] &]]
PrEv[n_] := Length[Select[S[n], EvenQ[pr[#]] &]]
alpha[n_] := PrEv[n] - PrOd[n]
Table[alpha[n], {n, 1, 20}]
- the generating function is can be shown by
Series[(1 + 4 Sum[(-1)^n q^(n (3 n + 1)/2)/(1 + q^n), {n, 1, 10}])/Sum[(-1)^n q^(n (3 n + 1)/2), {n, -8, 8}], {q, 0, 100}]
various partitions
(* partitions with at most 5 parts *)
IntegerPartitions[7, 5]
(* partition into exactly three parts *)
VS[n_] := IntegerPartitions[n, {3}]
VS[11]
(* number of partitions into distinct parts *)
PartitionsQ[11]
(* partition into odd parts *)
IntegerPartitions[11, All, {1, 3, 5, 7, 9, 11}]