matlab新手求指点function y=romberg(f,n,a,b) z=zeros(n,n);h=b-a;z(1,1)=(h/2)*(f(a)+f(b));f1=0;for i=2:nfor k=1:2^(i-2)f1=f1+f(a+(k-0.5)*h);endz(i,1)=0.5*z(i-1,1)+0.5*h*f1;h=h/2;f1=0;for j=2:iz(i,j)=z(i,j-1)+(z(i,j-1)-z(i-1,j-1))/(4^(j-1)-1);enden
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/31 02:54:05
matlab新手求指点function y=romberg(f,n,a,b) z=zeros(n,n);h=b-a;z(1,1)=(h/2)*(f(a)+f(b));f1=0;for i=2:nfor k=1:2^(i-2)f1=f1+f(a+(k-0.5)*h);endz(i,1)=0.5*z(i-1,1)+0.5*h*f1;h=h/2;f1=0;for j=2:iz(i,j)=z(i,j-1)+(z(i,j-1)-z(i-1,j-1))/(4^(j-1)-1);enden
matlab新手求指点
function y=romberg(f,n,a,b)
z=zeros(n,n);
h=b-a;
z(1,1)=(h/2)*(f(a)+f(b));
f1=0;
for i=2:n
for k=1:2^(i-2)
f1=f1+f(a+(k-0.5)*h);
end
z(i,1)=0.5*z(i-1,1)+0.5*h*f1;
h=h/2;
f1=0;
for j=2:i
z(i,j)=z(i,j-1)+(z(i,j-1)-z(i-1,j-1))/(4^(j-1)-1);
end
end
z,n
这个是M函数,
输入这个:
f=inline('2.*exp(-x)./pi^(1/2)');
romberg(f,5,0,1)
,回车之后再输入plot(x,y),然后就出这个了:
Error using ==> plot
Conversion to double from sym is not possible.
哪里的错误?
matlab新手求指点function y=romberg(f,n,a,b) z=zeros(n,n);h=b-a;z(1,1)=(h/2)*(f(a)+f(b));f1=0;for i=2:nfor k=1:2^(i-2)f1=f1+f(a+(k-0.5)*h);endz(i,1)=0.5*z(i-1,1)+0.5*h*f1;h=h/2;f1=0;for j=2:iz(i,j)=z(i,j-1)+(z(i,j-1)-z(i-1,j-1))/(4^(j-1)-1);enden
根本就没有x和y,你画什么呀