matlab数值导数怎么计算?怎样利用Matlab求函数的导数?

来源:中国焦点日报网 发布:2023-01-16 09:12:52

先确定 假设在[-3,3]区间(定义域)内以0.01为步长求数值导数。

第一种:首先用一个4次多项式p(x)拟合y=f(x),并对p(x)求一般意义下的导数dp(x),然后求出dp(x)在假设点的值;

第二种:直接求y=f(x)在假设点的数值导数;

第三种:先手工算出y=f(x)导函数,然后求在假设点的值。

程序如下:

f=inline('sqrt(x.^3+2*x.^2-x+12)+7*x.^2+36');

x=-3:0.01:3;

p=polyfit(x,f(x),4);

dp=polyder(p);

dpx=polyval(dp,x);

dx=diff(f([x,3.01]))/0.01;

g=inline('(3*x.^2+4*x-1)./sqrt(x.^3+2*x.^2-x+12)/2+14*x');

gx=g(x);

plot(x,dpx,x,dx,'.',x,gx,'-');

怎样利用Matlab求函数的导数

第一种情况、求符号函数的导数:这是最为常见的情况,利用diff函数求符号函数的导数。

1.打开Matlab-->新建脚本文件-->新建一个脚本文件(m文件)用于编写程序,在m文件中编写程序方便修改

2.以求下图一所示函数的一阶导数和二阶倒数为例。在m文件中输入下图二所示求解程序-->保存-->运行。这里的画图函数是fplot,不是plot,因为plot函数画图时函数值应该是数据格式。

3.点击运行程序以后可以在命令窗口看到各阶导数的表达式,同时在figure页面可以看到各阶导数的图形。

第二种情况:求已知自变量的数值函数的导数:这种情况下自变量是已知的,在求导数时要注意对自变量的处理。

1. 打开Matlab-->Ctrl+N-->新建一个脚本文件-->用脚本文件编写程序方便修改。

2. 求图一所示函数在自变量x取值[-2*pi,2*pi]内的一阶、二阶、三阶导数,并画出函数图像。在m文件中输入图二所示程序-->保存-->点击运行。

3.运行程序以后得到求解结果,这里得到的求解结果是一个个数值的形式-->利用plot函数画出个函数图像如图二所示。

相关新闻

最近更新