请问怎么用“matlab”软件算定积分?

请问怎么用“matlab”软件算定积分?,第1张

以f(x)=e^2x+sin(x+π/3) ,积分下限:a=0,积分上限:b=π/4 为例。

1.首先,建立被积函数M文件。

点击New,选择Function.

2.在编辑器中输入指令

functionf=f(x)

f=exp(2*x).*sin(x+pi/3)

(注意,用 .*)

3.保存函数文件到自己的工作路径,比如G:\matlab\work。

输入指令:

cdG:\matlab\work

是该路径成为当前路径。

4.调用积分函数squad进行计算。输入指令:

F=quad('f(x)',0,pi/4)

如图,回车后可得到计算结果1.8612。

其他函数,只要修改函数文件中的表达式即可。

假设以矩形或梯形面积来拟合吧;

function yanshi(fname,a,b,n)

%定积分演示程序

xi(1)=a

xi(n+1)=b

for i=1:n-1

xi(i+1)=a+(i+rand(1))*(b-a)/n

end

I=0

for i=1:length(xi)-1

sxi=xi(i)+rand(1)*(xi(i+1)-xi(i))

syi=feval(fname,sxi)

I=I+syi*(xi(i+1)-xi(i))

xx=[xi(i) xi(i) xi(i+1) xi(i+1) xi(i)]

yy=[0 syi syi 0 0]

fill(xx,yy,'c')

hold on

end

x=a:(b-a)/100:b

y=feval(fname,x)

plot(x,y,'r','markersize',20)

fprintf('n=%6d I=%12.5f\n',n,I)

hold off

function y=lirui(x)

y=1+x.^2

t = (1/16:1/8:1)'*2*pi

x = sin(t)

y = cos(t)

fill(x,y,'r')

axis square


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7777592.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存