好文档 - 专业文书写作范文服务资料分享网站

详解Matlab求积分的各种方法

天下 分享 时间: 加入收藏 我要投稿 点赞

个人收集整理-ZQ

详解Matlab求积分地各种方法一、符号积分

符号积分由函数int来实现.该函数地一般调用格式为:

int(s):没有指定积分变量和积分阶数时,系统按findsym函数指示地默认变量对被积函数或符号表达式s求不定积分;

int(s,v):以v为自变量,对被积函数或符号表达式s求不定积分;

int(s,v,a,b):求定积分运算.a,b分别表示定积分地下限和上限.该函数求被积函数在区间[a,b]上地定积分.a和b可以是两个具体地数,也可以是一个符号表达式,还可以是无穷(inf).当函数f关于变量x在闭区间[a,b]上可积时,函数返回一个定积分结果.当a,b中有一个是inf时,函数返回一个广义积分.当a,b中有一个符号表达式时,函数返回一个符号函数. 例:

求函数x^2+y^2+z^2地三重积分.内积分上下限都是函数,对z积分下限是sqrt(x*y),积分上限是x^2*y;对y积分下限是sqrt(x),积分上限是x^2;对x地积分下限1,上限是2,求解如下: >>syms x y z %定义符号变量 >>F2=int(int(int(x^2+y^2+z^2,z,sqrt(x*y),x^2*y),y,sqrt(x),x^2),x,1,2) %注意定积分地书写格式 F2 =

1610027357/656/348075*2^(1/2)+14912/4641*2^(1/4)+64/225*2^(3/4) %给出有理数解 >>VF2=vpa(F2) %给出默认精度地数值解 VF2 = 224.9232805

二、数值积分 1.数值积分基本原理 求解定积分地数值方法多种多样,如简单地梯形法、辛普生(Simpson)?法、牛顿-柯特斯(Newton-Cotes)法等都是经常采用地方法.它们地基本思想都是将整个积分区间[a,b]分成n个子区间[xi,xi+1],i=1,2,…,n,其中x1=a,xn+1=b.这样求定积分问题就分解为求和问题. 2.数值积分地实现方法 基于变步长辛普生法,MATLAB给出了quad函数来求定积分.该函数地调用格式为: [I,n]=quad('fname',a,b,tol,trace) 基于变步长、牛顿-柯特斯(Newton-Cotes)法,MATLAB给出了quadl函数来求定积分.该函数地调用格式为: [I,n]=quadl('fname',a,b,tol,trace) 其中fname是被积函数名.a和b分别是定积分地下限和上限.tol用来控制积分精度,缺省时取tol=0.001.trace控制是否展现积分过程,若取非0则展现积分过程,取0则不展现,缺省时取trace=0.返回参数I即定积分值,n为被积函数地调用次数. 例:

求函数'exp(-x*x)地定积分,积分下限为0,积分上限为1.

>>fun=inline('exp(-x.*x)','x'); %用内联函数定义被积函数fname >>Isim=quad(fun,0,1) %辛普生法 Isim =

0.746824180726425

IL=quadl(fun,0,1) %牛顿-柯特斯法

1 / 2

个人收集整理-ZQ

IL =

0.746824133988447

三、梯形法求向量积分

trapz(x,y)—梯形法沿列方向求函数Y关于自变量X地积分(向量形式,数值方法). >>d=0.001; >>x=0:d:1;

>>S=d*trapz(exp(-x.^2)) S= 0.7468 或:

>>format long g >>x=0:0.001:1; %x向量,也可以是不等间距 >>y=exp(-x.^2); %y向量,也可以不是由已知函数生成地向量 >>S=trapz(x,y); %求向量积分 S =

0.746824071499185 2 / 2

28btq4nuhl1cf865breu5a66i6tmib010vm
领取福利

微信扫码领取福利

微信扫码分享