matlab如何用三点公式求一阶导数

img

你好同学,三点公式对于端点和中间点的系数是不一样的
左端点是[-3/2,2,-1/2],右端点是[1/2,-2,3/2],中间点是[-1/2,0,1/2],都是从左往右数

h = 0.1; % x取点的间隔
df_1 = ((-3/2)*0.25 + (2)*0.2268 + (-1/2)*0.2066)/h % 括号里面的三个系数是三点求导所用,f在x=1处的导数【左端点】
df_2 = ((-1/2)*0.25 + (0)*0.2268 + (1/2)*0.2066)/h % 括号里面的三个系数是三点求导所用,f在x=1.1处的导数【中间点】
df_3 = ((1/2)*0.2066 + (-2)*0.189 + (3/2)*0.1736)/h % 括号里面的三个系数是三点求导所用,f在x=1.4处的导数【右端点】

结果:

df_1 =

   -0.2470


df_2 =

   -0.2170


df_3 =

   -0.1430

如有帮助还望题主给个宝贵的采纳支持一下答主答题呢,谢谢啦