MATLAB diff函数计算符号微分/数值差分的办法
介绍MATLAB中计算差分微分,具有多种用途的diff函数和其用法举例。
操作方法
- 01
首先,对于一个长度n的一维列表,直接对其使用diff函数,可以得到一个长度为n-1的列表,列表元素为相邻元素之差。
- 02
如果我们对一个列表X使用diff(diff(X)),等价于diff(X,2),相当于求二阶差分(数值微分)。
- 03
如图,当步长值取得足够小,就可以使用diff函数计算数值微分以及用来作图。请注意f=exp(-X).*sin(X),用的是 .*符号,用来将两个列表对应元素相乘。
- 04
diff还可以用来求Datetime的时间差,如图所示。
- 05
diff函数第二个参数如前所述,是差分次数。而第三个参数则是计算差分的方向(适用于多维数组)。 如图,使用diff(A,1,2)计算矩阵A沿着水平方向的一阶差分,diff(A,1,1)则是竖直方向(默认),也可写作diff(A,1)
- 06
使用diff还可以求符号微分。首先定义符号a,b,c,x,写出表达式,使用 diff(符号表达式,待微分符号)来求微分。
赞 (0)