"Integer partitions"의 두 판 사이의 차이
21번째 줄: | 21번째 줄: | ||
<h5>partition and rank</h5> | <h5>partition and rank</h5> | ||
− | + | (*define a integer you want to investigate*)<br> n := 12<br> (*choose the proper moduli for the partition statistics*)<br> md := 7<br> S[n_] := IntegerPartitions[n]<br> (*define the rank of a partition with the name "pr"*)<br> pr[s_] := Max[s] - Length[s]<br> (*modulus distribution partition rank *)<br> Sort[Table[Mod[pr[s], md], {s, S[n]}]]<br> (*list of paritions with rank*)<br> Do[Print[s, ", rank=", pr[s], "\[Congruent]",<br> Mod[Max[s] - Length[s], md], "(mod ", md, ")"], {s, S[n]}]<br> (*you will see p (n),the partition statistics and list of paritions \<br> with rank*) | |
27번째 줄: | 27번째 줄: | ||
− | <h5> | + | <h5>partition and crank</h5> |
+ | |||
+ | (* Choose n*)<br> n := 6<br> Om[s_] := Count[s, 1]<br> KK[s_] := Select[s, # > Om[s] &]<br> Mu[s_] := Length[KK[s]]<br> Crank[s_] := If[Om[s] == 0, Max[s], Mu[s] - Om[s]]<br> NV[m_, n_] := Length[Select[IntegerPartitions[n], Crank[#] == m &]]<br> Do[Print[s, ",", Max[s], ",", Om[s], ",", Mu[s], ",", Crank[s]], {s,<br> IntegerPartitions[n]}]<br> (* partion of "n", maximum part, number of ones=w, number of parts \<br> larger than w, the crank *) | ||
+ | |||
+ | |||
+ | |||
+ | {6},6,0,1,6<br> {5,1},5,1,1,0<br> {4,2},4,0,2,4<br> {4,1,1},4,2,1,-1<br> {3,3},3,0,2,3<br> {3,2,1},3,1,2,1<br> {3,1,1,1},3,3,0,-3<br> {2,2,2},2,0,3,2<br> {2,2,1,1},2,2,0,-2<br> {2,1,1,1,1},2,4,0,-4<br> {1,1,1,1,1,1},1,6,0,-6 | ||
+ | |||
+ | |||
+ | |||
+ | <h5>various partitions</h5> | ||
+ | |||
+ | (* partitions with at most 5 parts *)<br> IntegerPartitions[7, 5] | ||
+ | |||
+ | <br> (* partition into exactly three parts *)<br> VS[n_] := IntegerPartitions[n, {3}]<br> VS[11] | ||
+ | |||
+ | |||
+ | |||
+ | <br> (* number of partitions into distinct parts *)<br> PartitionsQ[11] | ||
+ | |||
+ | |||
+ | |||
+ | (* partition into odd parts *)<br> IntegerPartitions[11, All, {1, 3, 5, 7, 9, 11}] |
2010년 3월 4일 (목) 20:33 판
background
n:=9
md:=5
n:=12
md:=7
will be a good choice
partition and rank
(*define a integer you want to investigate*)
n := 12
(*choose the proper moduli for the partition statistics*)
md := 7
S[n_] := IntegerPartitions[n]
(*define the rank of a partition with the name "pr"*)
pr[s_] := Max[s] - Length[s]
(*modulus distribution partition rank *)
Sort[Table[Mod[pr[s], md], {s, S[n]}]]
(*list of paritions with rank*)
Do[Print[s, ", rank=", pr[s], "\[Congruent]",
Mod[Max[s] - Length[s], md], "(mod ", md, ")"], {s, S[n]}]
(*you will see p (n),the partition statistics and list of paritions \
with rank*)
partition and crank
(* Choose n*)
n := 6
Om[s_] := Count[s, 1]
KK[s_] := Select[s, # > Om[s] &]
Mu[s_] := Length[KK[s]]
Crank[s_] := If[Om[s] == 0, Max[s], Mu[s] - Om[s]]
NV[m_, n_] := Length[Select[IntegerPartitions[n], Crank[#] == m &]]
Do[Print[s, ",", Max[s], ",", Om[s], ",", Mu[s], ",", Crank[s]], {s,
IntegerPartitions[n]}]
(* partion of "n", maximum part, number of ones=w, number of parts \
larger than w, the crank *)
{6},6,0,1,6
{5,1},5,1,1,0
{4,2},4,0,2,4
{4,1,1},4,2,1,-1
{3,3},3,0,2,3
{3,2,1},3,1,2,1
{3,1,1,1},3,3,0,-3
{2,2,2},2,0,3,2
{2,2,1,1},2,2,0,-2
{2,1,1,1,1},2,4,0,-4
{1,1,1,1,1,1},1,6,0,-6
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}]