还用去翻标准答案吗?
我们以下面这个函数为例:
一阶一维(这里的阶是求几阶导函数的阶,维指的是函数表达式的变量个数):
输入以下命令,其中diff(函数表达式名)是MATLAB内置的求导函数名。
>> syms x;
>> f(x)=sin(x)+x^2;
>> diff(f(x))
结果为:
ans =
2*x + cos(x)
结果确实是sin(x)+x^2的导函数啊!
再利用pretty()函数输出我们手写函数的表示形式:
>> pretty(ans)
2 x + cos(x)
发现结果变成我们日常手写的函数表示形式2x+cos(x)
假如我要对sin(x)+x^2求n阶导函数呢?
嘿嘿!只需要在diff(函数表达式名,阶数)即可,比如下面的:
二阶一维
diff(f(x),n),n阶导数
>> diff(f(x),2)
ans =
2 - sin(x)
校验确实是sin(x)+x^2的二阶导函数,更高阶的各位同学可以再去实践下!
多维一阶偏导:
diff(f(x1,x2,.....),xi),对含有M个变量的函数求xi的偏导数.
比如这个函数:
对这个函数x2求偏导:
哈哈,结果就是2*x2。
如果我们对函数x2求二阶偏导呢,只需要diff()第三个添加一个2.
通过今天的学习,我们可以用MATLAB求函数的n阶n维的导函数!