2012-12-28 52 views
1

系列我有這樣一個公式:衍生物數學

y= Sum[ i x[i] , {i,10}] 

,我要計算的衍生:

D[y,x[i]] -> = i 

我如何能做到這一點的數學?

我可以做D[y, x[3]]它給我3 但如果我輸入D[y, x[i]]它返回0,但我期待我。

有沒有辦法在Mathematica中爲上述系列定義參數導數?

+1

sugest you fix your notation .. y = Sum [i x [i],{i,10}]; D [y,x [3]] - > 3; D [y,x [i]] - > 0 – agentp

+1

正確的reult不是「i」,而是「如果我是一個範圍爲1:10的整數,否則爲零。」這應該給出一個線索,爲什麼這不是一個微不足道的事情來實現。 – agentp

回答

1

可能不是最好的方式去思考你的問題,反正:

建立你的變量列表:

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} *) 
1

這裏有幾件事情要考慮。

  1. 符號x_3並不意味着x與索引3。它意味着三次x_。 您應該使用下標[x,3]來代替。

  2. 你y是:Sum[n * Subscript[x, n], {n, 1, 5}]

  3. 現在,您可以找到部分deriviative: D[Sum[n * Subscript[x, n], {n, 1, 5}], Subscript[x, 2]] 給人2.

  4. D[Sum[Subscript[x, n], {n, 1, 5}], Subscript[x, j]]給出0 的原因是Subscript[x, j]被認爲是一個變量。