matlab 积分函数曲线,matlab数值积分函数

本文介绍了MATLAB中用于数值积分的函数,包括符号积分int和数值积分如trapz、cumtrapz、quad等。通过示例展示了如何计算不同函数在特定区间上的定积分,并解释了这些函数在处理有无解析解的积分问题时的区别和应用场景。
摘要由CSDN通过智能技术生成

一.相关函数:

%符号积分

int(f,v)

int(f,v,a,b)

%数值积分

trapz(x,y)%梯形法沿列方向求函数Y关于自变量X的积分

cumtrapz(x,y)%梯形法沿列方向求函数Y关于自变量X的累计积分

quad(fun,a,b,tol)%采用递推自适应Simpson法计算积分

quad1(fun,a,b,tol)%采用递推自适应Lobatto法求数值积分

dbquad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)%二重(闭型)数值积分指令

triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)%三重(闭型)数值积分指令

二.示例:

例1:计算f(t)=exp(-t^2)在[0,1]上的定积分

本例演示:计算定积分常用方法

>>symsx

int(exp(-x^2),0,1)

ans=

1/2*erf(1)*pi^(1/2) %erf为误差函数

>>vpa(int(exp(-x^2),0,1))

ans=

.7468241328124270

>>d=0.001;x=0:d:1;d*trapz(exp(-x.^2))

ans=

0.7468

>>quad('exp(-x.^2)',0,1,1e-8)

ans=

0.7468

例2:计算f(t)=1/log(t)在[0,x],0

注意:被积函数于x=0无义,在x-->1^-处为负无穷

本例演示:用特殊函数表示的积分结果,如何用mfun指令

(1)

symstx

ft=1/log(t);

sx=int(ft,t,0,x)

sx=

-Ei(1,-log(x)) %完全椭圆函数

(2)

x=0.5:0.1:0.9

sx_n=-mfun('Ei',1,-log(x))

x=

0.5000  0.6000  0.7000  0.8000  0.9000

sx_n=

-0.3787 -0.5469 -0.7809 -1.1340 -1.7758

(3)%图示被函数和积分函数

clf

ezplot('1/log(t)',[0.1,0.9])

gridon

holdon

plot(x,sx_n,'LineWidth',3)

Char1='1/ln(t)';

Char2='{int_0^x}1/ln(t)dt';

title([Char1,' and  ',Char2])

legend(Char1,Char2,'Location','SouthWest')

例3:计算f(t)=exp(-sin(t))在[0,4]上的定积分

注意:本题被函数之原函数无"封闭解析表达式",符号计算无法解题!

本例演示:符号计算有限性

(1)符号计算解法

symstx

ft=exp(-sin(t))

sx=int(ft,t,0,4)

ft=exp(-sin(t))

Warning:Explicitintegralcouldnotbefound.

>Insym.intat58

sx=

int(exp(-sin(t)),t=0..4)

(2)数值计算解法

dt=0.05;          %采样间隔

t=0:dt:4;           %数值计算适合于有限区间上,取有限个采样点

Ft=exp(-sin(t));

Sx=dt*cumtrapz(Ft);      %计算区间内曲线下图形面积,为小矩形面积累加得

Sx(end)        %所求定积分值

%图示

plot(t,Ft,'*r','MarkerSize',4)

holdon

plot(t,Sx,'.k','MarkerSize',15)

holdoff

xlabel('x')

legend('Ft','Sx')

>>ans=

3.0632

例4:绘制积分图形,y=2/3*exp(-t/2)*cos(sqrt(3)/2*t);积分s(x)=int(y,t,0,x)于[0,4*pi]上

symsttao

y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值