2014-10-09 120 views
1

使用代碼,如何在MATLAB中區分函數w.r.t另一個符號函數?

syms x(t) 
y=x^2 
diff(y,t) 
diff(y,x) 

我得到以下錯誤:

2*D(x)(t)*x(t) 
Error using sym/diff (line 26) 
All arguments, except for the first one, must not be symbolic functions. 

有沒有辦法解決呢?謝謝你的時間。

+0

見我回答這個非常類似的問題:如何實現通過在Matlab一個「symfun」符號函數的導數?](http://stackoverflow.com/questions/27085362/如何對實施-A-衍生物對的一象徵 - 功能 - 通過-A-symfun合MATLAB) – horchler 2015-01-05 21:19:39

回答

1

我對符號數學工具箱不太瞭解,但對函數的派生wrt看起來並不支持(至少以直接方式)diff

您可以替換變量,計算導數,並將函數替換回來。像這樣:

syms z 
subs(diff(subs(y,x,z),z),z,x) 

ans(t) = 2*x(t) 
相關問題