Matlab 符号表达式 求微分 TOT程序书上有Matlab 符号表达式 求微分的例子,我用mat
答案:2 悬赏:30 手机版
解决时间 2021-02-23 14:02
- 提问者网友:我们很暧昧
- 2021-02-22 21:52
Matlab 符号表达式 求微分 TOT程序书上有Matlab 符号表达式 求微分的例子,我用mat
最佳答案
- 五星知识达人网友:七十二街
- 2021-02-22 23:25
由于diff函数有多个(可以用which diff -all命令查看),调用的时候就会涉及到调用哪一个的问题. MATLAB会调用哪个函数,是由该函数的参数类型决定的,例如对于符号变量(sym对象),很自然就会调用符号数学工具箱中求微分的那个函数,而对于普通的double数值类型,则会调用求差分的那个函数.函数重载的概念听说过吧? 现在楼主给的参数是char字符类型,在早期的版本里(例如6.5、2007b),符号数学工具箱专门提供了一个对char类型的重载函数 toolbox\symbolic\@char\diff.m,其有效代码只有一句:y = diff(sym(f),varargin{:});但不知道什么原因,这个重载的形式在2013a里面消失了,所以楼主的语句就会把char转换为double,然后调用求差分的那个diff,就得到了你现在看到的结果. 比较稳妥的方式是,把符号类型的东西明确声明为sym类型,那样就不会错了:>> y=sym('4*x^4+3*x^3+2*x^2+x+1');>> diff(y) ans = 16*x^3+9*x^2+4*x+1
全部回答
- 1楼网友:蕴藏春秋
- 2021-02-23 00:07
哦,回答的不错
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯