用matlab画积分图像

用matlab画积分图像图像和源代码,谢谢谢谢

matlab 积分图像可以来实现。其方法利用for循环语句求解每一个(d,y)的对应值,然后用plot绘出其积分图像。

d0=0:0.1:3.1;

n=length(d0);

for i=1:n

d=d0(i);

R=0.3*d+1;

syms x

eq=2*x/R^2.*exp(-x.^2/R^2).*acos((x.^2+0.1)./(2*x)); %eq=@(x)2*x/R^2.*exp(-x.^2/R^2).*acos((x.^2+0.1)./(2*x));

y(i)=int(eq,0.1,R); %y(i)=integral(eq,0.1,R,'RelTol',1e-8,'AbsTol',1e-13);

end

plot(d0,y)

xlabel('d'),ylabel('y');grid on

运行结果

注:当d0>3.1时,y为复数值。请题主检查一下积分方程是否有错。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-14

用matlab画积分图像其代码为

>> syms x

>> y=int(1-280*x/(80+x)^2,0,x);  %这里应该为定积分,不能用不定积分来表示

>> x=-10:10;

>> y=eval(y);

>> plot(x,y)

>> xlabel('x');ylabel('y');

本回答被网友采纳