关于数值积分的程序
function =TX(f,a,b,eps)h=b-a;
n=1;
eps=1e-3;
T1=0;
T2=1/2*h*(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b));
while abs(T2-T1)>eps
h=h/2;
T1=T2;
x=a+h;
s=0;
while x<b
s=s+subs(sym(f),findsym(sym(f)),x);
x=x+h;
end
T2=1/2*(T1+h*s);
n=n+1;
end
I=T2+1/3*(T2-T1);
:Q 这是一个关于变步长梯形积分的程序,但是怎么调试就是得不出正确的结果,请各位帮忙看看。帮忙修改一下,顺便指出我的错误,感激不尽! 自己修改过的,是正确的!
function =FHTX(f,a,b,ep)
a=a+eps;
h=b-a;
n=1;
ep=1e-6;
T1=1/2*h*(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b));
tol=1;
while tol>ep
u=h/2;
x=a+u;
H=0;
while x<b
H=H+subs(sym(f),findsym(sym(f)),x);
x=x+h;
end
T2=1/2*(T1+h*H);
tol=abs(T2-T1);
h=u;
T1=T2;
n=n+1;
end
I=T2+1/3*(T2-T1);
页:
[1]