romberg1.m
来自「Gauss-Legendre 采用五点 Gauss-Legendre 求积公式计」· M 代码 · 共 35 行
M
35 行
function[s,n]=romberg1(a,b,eps)
if nargin<3
eps=1e-2;
end
s=10;
s0=0;
k=2;
% intf(b)
t(1,1)=(b-a)*(intf(a)+intf(b))/2;
while(abs(s-s0)>eps)
h=(b-a)/2^(k-1);
w=0;
if (h~=0)
for i=1:(2^(k-1)-1)
w=w+intf(a+i*h);
end
t(k,1)=h*(intf(a)/2+w+intf(b)/2);
for p=2:k
for i=1:(k-p+1)
t(i,p)=(4^(p-1)*t(i+1,p-1)-t(i,p-1))/(4^(p-1)-1);
end
end
s=t(1,k);
s0=(t(1,k-1));
k=k+1;
n=k;
else
s=s0;
n=-k;
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?