MATLAB 函数求导 用法以及实例
求导是高等数学中的基本知识。在MATLAB中可以使用一条简单的命令实现函数符号形式求导,以及求某点处的导数值。
操作方法
打开MATLAB,首先定义一个变量x:syms x;
首先我们来看一元函数的导数,求导的命令为diff(y,x),第一个参数为函数表达式,第二个参数是被求导的变量。以y = x^2*sin(x)为例说明,它的导函数是y'=2*x*sin(x)+x^2*cos(x),使用MATLAB验证如下。
如果要计算高阶导数,使用diff(y,x,n)即可求出y对x的的n阶导数,默认为1,即步骤2所示的那样。现在,我们计算y = x^2*sin(x)的3阶导数与5阶导数,如下所示
如果我们要计算函数在某一个点处的n阶导数值,则首先使用diff(y,x,n)计算出这个函数的n阶导函数,然后使用subs(yn, x, x0)计算出y对x在x0处的n阶导数值。例如计算y = x^2*sin(x)在x=2处的4阶导数则使用以下两条命令。最后一条输出是为了将三角函数表示的结果转化为具体的数值。
对于多元函数的偏导数,也可以采用类似的方法进行计算。例如对于二元函数z = x^2*sin(y),使用diff(z,x)与diff(z,y)分别求处在x与y方向的一阶偏导数。
对于二阶偏导数,如果依次在一个方向求偏导数则可以采用类似一元的方式diff(z,x,n)。如果不断改变求导变量,则只能依次对一个变量求完之后,再对另一个求。例如z先对x求二阶导数,再对y求2阶导数如下:
如果分别只对x,y求一阶导数,就可以只使用一条命令diff(z,x,y)即可。x与y的顺序在这里是无所谓的。