MATLAB匿名函数的应用4

来源:互联网 发布:js秒杀脚本怎么写 编辑:程序博客网 时间:2024/05/15 08:42

匿名函数和符号计算的结合

有时候需要推导一些表达式,而对得到的表达式进行诸如求值、积分或者极值的运算。如果表达式不是很复杂的话,可以手动推导。但是很多时候手动推导非常烦琐甚至根本不可能,这时候就要借助计算机来推导。在得到表达式后,再将其转化成匿名函数,从而方便的进行后续

例1求下面函数三阶导数在[0,1]的图像。
例1

本例如果用手动计算的话,比较烦琐。如果用符号运算得到三阶导数的解析表达式,然后再转化成匿名函数,则比较方便。
代码如下

syms xf=(x+tan(x))^(sin(x));c=diff(f,3);f3=eval(['@(x)' vectorize(c)]);x=linspace(0,1,100);plot(x,f3(x),'r','linewidth',2)title('y=(x+tan(x))\^(sin(x))三阶导数图像')xlabel('x');ylabel('y');

得到的图形如图
三阶导数图
eval函数的功能是将字符串转换为matlab可执行语句
vectorize函数的功能是把一个接受标量的函数(更准确的说,可调用对象)变为接受向量的函数

原创粉丝点击