次のような方程式があります。
y= Sum[ i x[i] , {i,10}]
導関数を計算したい:
D[y,x[i]] -> = i
どうすれば mathematica でそれを行うことができますか?
私はできるしD[y, x[3]]
、それは私に 3 を与えますが、私が入力するD[y, x[i]]
と 0 を返しますが、私は i を期待しています。
Mathematica で上記のようなシリーズのパラメトリック導関数を定義する方法はありますか?
次のような方程式があります。
y= Sum[ i x[i] , {i,10}]
導関数を計算したい:
D[y,x[i]] -> = i
どうすれば mathematica でそれを行うことができますか?
私はできるしD[y, x[3]]
、それは私に 3 を与えますが、私が入力するD[y, x[i]]
と 0 を返しますが、私は i を期待しています。
Mathematica で上記のようなシリーズのパラメトリック導関数を定義する方法はありますか?
考慮すべきことがいくつかあります。
表記x_3
は、インデックス3のxを意味するものではありません。x_の3倍を意味します。代わりにSubscript[x、3]を使用する必要があります。
あなたのyは: Sum[n * Subscript[x, n], {n, 1, 5}]
これで、部分的な派生物を見つけることができます:
D[Sum[n * Subscript[x, n], {n, 1, 5}], Subscript[x, 2]]
2を与えます。
D[Sum[Subscript[x, n], {n, 1, 5}], Subscript[x, j]]
0を与えます。理由はSubscript[x, j]
変数と見なされるためです。
とにかく、おそらくあなたの問題について考える最良の方法ではありません:
変数のリストを作成します:
vars = Table[Symbol["x" <> ToString[i]], {i, 1, 10}]
(* {x1, x2, x3, x4, x5, x6, x7, x8, x9, x10} *)
関数をビルドします。
expr = Dot[Range[10], vars]
(* x1 + 10 x10 + 2 x2 + 3 x3 + 4 x4 + 5 x5 + 6 x6 + 7 x7 + 8 x8 + 9 x9 *)
導関数を取る:
D[expr, #] & /@ vars
(* {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} *)