MATLAB:关于x(t)的符号区分f?

时间:2015-08-31 11:27:48

标签: matlab symlink symbolic-math mupad

我有一个函数f(x(t))=sin(x(t))我想在MATLAB中区分有时与t有关,有时与x(t)有关。在MATLAB中,我输入:

>> syms x(t);
>> f=sin(x(t));
>> diff(f,t)

ans =

cos(x(t))*diff(x(t), t)

然而,当我区分x(t)时,我得到:

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

解决方法是:

>> syms temp;
>> subs(diff(subs(f,{x},{temp}),temp),{temp},{x})

ans =

cos(x(t))

但是对于我在代码中实际处理的大型函数subs 非常慢 - 这是我代码中的瓶颈。当然有办法直接做diff(f,x)?!我的意思是MathWorks的开发人员不能只留下如此巨大的尾巴,对吗?

我非常感谢你的帮助。谢谢!

0 个答案:

没有答案