复合中点公式Matlab出现错误Error in ==> M at 5 t=t+h*4/(1+x^2);
我用复合中点公式计算一个积分式的误差随步长h的变化函数程序如下%复合中点公式function[t]=M(n)h=1/n;fori=0:1:n-1x=(i+1/2)*h;t...
我用复合中点公式计算一个积分式的误差随步长h的变化函数
程序如下
%复合中点公式
function [t]=M(n)
h=1/n;
for i=0:1:n-1
x=(i+1/2)*h;
t=t+h*4/(1+x^2);
end
end
%取点画图实现
n=[10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000,1000000,2000000,10000000,20000000,50000000,100000000,500000000,1000000000];
N=21;
J(N)=0;
for i=1:N
J(i)=abs(pi-M(n(i)));
end
plot(J,'r*');
却执行的时候总是跳出
Error in ==> M at 5
t=t+h*4/(1+x^2);
这是错误界面
积分式是4/(1+x^2)从0积到1 展开
程序如下
%复合中点公式
function [t]=M(n)
h=1/n;
for i=0:1:n-1
x=(i+1/2)*h;
t=t+h*4/(1+x^2);
end
end
%取点画图实现
n=[10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000,1000000,2000000,10000000,20000000,50000000,100000000,500000000,1000000000];
N=21;
J(N)=0;
for i=1:N
J(i)=abs(pi-M(n(i)));
end
plot(J,'r*');
却执行的时候总是跳出
Error in ==> M at 5
t=t+h*4/(1+x^2);
这是错误界面
积分式是4/(1+x^2)从0积到1 展开
1个回答
展开全部
%复合中点公式
function [t]=M(n)
h=1/n;
t=0;
for i=0:1:n-1
x=(i+1/2)*h;
t=t+h*4/(1+x^2);
end
end
%{
%取点画图实现
n=[10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,...
100000,200000,500000,1000000,2000000,10000000,20000000,...
50000000,100000000,500000000,1000000000];
N=21;
J(N)=0;
for i=1:N
J(i)=abs(pi-M(n(i)));
end
plot(J,'r*');
%}
用%{ %}中间的语句试验
function [t]=M(n)
h=1/n;
t=0;
for i=0:1:n-1
x=(i+1/2)*h;
t=t+h*4/(1+x^2);
end
end
%{
%取点画图实现
n=[10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,...
100000,200000,500000,1000000,2000000,10000000,20000000,...
50000000,100000000,500000000,1000000000];
N=21;
J(N)=0;
for i=1:N
J(i)=abs(pi-M(n(i)));
end
plot(J,'r*');
%}
用%{ %}中间的语句试验
追问
真是感谢您,可是我原来的哪里不对呀?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询