1

この 10,0,0,10,0,0,10,0,0,10,0,0,10... のように変化する境界条件で定常状態の熱方程式を解いています。私が選ぶポイント。これらの境界条件の行列を作成したいのですが、行列の i 番目の要素に関してシーケンスのロジックを指定できません。

私はこれに mathematica を使用していますが、奇数の場合は 2n+1 を指定でき、偶数の場合は 2n 、シーケンス 10,0,0,10,0,0,10,0,0 のような式のみが必要です。 10、....

4

3 に答える 3

0

Mathematica でこれを行う方法:

Take[Flatten[ConstantArray[{10, 0, 0}, Ceiling[1000/3] ], 1],1000]

別の方法

Table[Boole[Mod[i,3]==1]*10, {i,1,1000}]
于 2013-04-21T19:24:10.890 に答える
0

特に数式が必要なので、方法を提案させてください。

seq = PadRight[{}, 30, {10, 0, 0}];

func = FindSequenceFunction[seq]
10/3 (1 + Cos[2/3 \[Pi] (-1 + #1)] + Cos[4/3 \[Pi] (-1 + #1)]) &

試して:

Array[func, 10]
{10, 0, 0, 10, 0, 0, 10, 0, 0, 10}

次のような、このシーケンスを生成するためのより単純なプログラムが確実に存在します。

Array[10 Boole[1 == Mod[#, 3]] &, 10]
{10, 0, 0, 10, 0, 0, 10, 0, 0, 10}
于 2013-04-26T09:39:01.673 に答える