fivepoint2.m
来自「Matlab语言常用算法程序集.rar 里面有很多有用的Matlab数值运」· M 代码 · 共 31 行
M
31 行
function df= FivePoint2(func,x0,type,h)
if nargin == 3
h = 0.1;
else if (nargin == 4 && h == 0.0)
disp('h不能为0!');
return;
end
end
for i=1:9
y(i) = subs(sym(func), findsym(sym(func)), x0-4*h+i*h-h);
end
hd = 1/12/h/h;
switch type
case 1,
df = (35*y(5)-104* y(6)+114* y(7)-56* y(8)+11* y(9))*hd; %用第一个公式求导数
case 2,
df = (11*y(4)-20* y(5)+6* y(6)+4* y(7)- y(8))*hd; %用第二个公式求导数
case 3,
df = (-y(3)+16* y(4)-30* y(5)+16* y(6)- y(7))*hd; %用第三个公式求导数
case 4,
df = (-y(2)+4*y(3)-6*y(4)+20*y(5)+11*y(6))*hd; %用第四个公式求导数
case 5,
df = (35*y(5)-104* y(4)+114* y(3)-56* y(2)+11* y(1))*hd; %用第五个公式求导数
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?