%Romberg公式
clear
a = 1;b = 3;
m = 20;
n = 1;
h1 = b-a;
x1 = [a,b];
y1 = (100./(x1.^2)).*(sin(10./x1));
T(1,1) = h1/2*(y1(1)+y1(2));
for i = 2:m
n = 2*n;
h2 = h1/2;
h1 = h2;
x1 = a:h2:b;
y1 = (100./(x1.^2)).*(sin(10./x1));
T(i,1) = T(i-1,1)/2 + h2*sum(y1(2:2:n));
for j = 2:i
T(i,j) = (4^(j-1)*T(i,j-1)-T(i-1,j-1))/(4^(j-1)-1);
if abs(T(i,j)-T(i,j-1))< 0.5*10^(-6)
k = i;
return;
end
end
i = i+1;
end
T
T(k,j)
k