ランダムなメモランダム

雑草のような雑念と雑考

3項の多項式の係数 Mathematica Code

 (p+q+r)^nの係数をパスカルの三角形のように出力するやり方です。

1)フロベニウスの定理から3の分解ケースをソーティングして出す(逆順になっている)
l[n_]:=FrobeniusSolve[Table[1,{i,3}],n]

nは次数

2)各項の係数を算出
mul[n_]:=Table[Multinomial[l[n] k/. {x___}->x] ,{k,Length[l[n]],1,-1}]

3)剰余類による色分け。
これは係数に紐づいていればOK
col1=Table[Which[ Mod[mulk,2]==0, Red,Mod[mulk,2]==1, Cyan],{k,1,Length[mul]}]

4)互いに接する円を色付けするコマンド
Graphics[Riffle[col1,Apply[Circle,Flatten[Table[{{i,-Sqrt[3]/2 j},1/2},{j,-4,4},{i,-j/2,j/2}],1],1]]]