您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 多重积分的MATLAB实现
Mg分析实验二实验二多重积分目的和要求1.学习MATLAB软件中与二重积分和三重积分相关的命令与编程2.利用MATLAB软件计算二重积分和三重积分预备知识1.符号积分利用int命令进行二重积分、三重积分计算。格式:int(int(f,y,y1(x),y2(x)),x,a,b)int(int(int(f,z,z1(x,y),z2(x,y)),y,y1(x),y2(x)),x,a,b)2.数值积分二重数值积分的指令:dblquad(fun,xmin,xmax,ymin,ymax)三重(闭型)数值积分指令:triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax)或用三个quadl函数实验内容1.1.1.1.二重积分的计算例1计算二重积分,其中是由直线及∫∫−+Ddxdyxyx)(22Dxyy==,2xy2=所围成的闭区域.解该二重积分可以化为二次积分,输入命令∫∫−+yydxxyxdy22220)(int(int(x^2+y^2-x,x,y/2,y),y,0,2)得结果ans=13/6.例2计算积分.∫∫−=ππππydxxxdyIsin2解输入命令int(int(sin(x)/x,x,y-pi,pi),y,pi,2*pi)得结果ans=2.Mg分析实验二若不借助于计算机计算,需要交换积分次序.例3求.∫∫≤++π12222))(sin(yxdxdyyx解积分区域用不等式可以表示成,二重积分可2211,11xyxx−≤≤−−≤≤−化为二次积分,输入命令∫∫−−−−+π22112211)(sin(xxdyyxdxint(int(sin(pi*(x^2+y^2)),y,-sqrt(1-x^2),sqrt(1-x^2)),x,-1,1)由输出结果可以看出,结果中仍带有int,表明matlab求不出这一积分的值.采用极坐标可化为二次积分,输入命令∫∫ππ20102)sin(drrrdaint(int(r*sin(pi*r^2),r,0,1),a,0,2*pi)可得结果为ans=2.注:二重积分也可以先进行符号运算,再得到数值解。例4444,其中。∫∫Rydxdyx}21,10|),{(≤≤≤≤=yxyxRsymsxy;%定义两个符号变量a=int(int(x^y,x,0,1),y,1,2)%积分a=log(3)-log(2)b=simple(a)%化简b=log(3/2)c=vpa(b,4)%得到近似解c=0.4055例5555(P3651.(1))fun=inline('x.^3+3.*x.^2.*y+y.^3','x','y');dblquad(fun,0,1,0,1)ans=1.0000例6666(P3651.(2))fun=inline('sin(x+y)','x','y');dblquad(fun,0,pi/2,0,pi/2)ans=2.0000例7777(P3651.(3))fun=inline('(x+y).*exp(x+y)','x','y');dblquad(fun,0,1,2,4)ans=Mg分析实验二315.95762.2.2.2.三重积分的计算例8计算三重积分∫∫∫−−−+++=1010103)1(xyxzyxdzdydxI解输入命令int(int(int(1/(1+x+y+z)^3,z,0,1-x-y),y,0,1-x),x,0,1)得结果ans=-5/16+1/2*log(2).例9计算三重积分,为球面及三个坐标面所围成∫∫∫ΩxyzdxdydzΩ1222=++zyx的在第一卦限内的区域.解该三重积分可化为累次积分.输入命令∫∫∫−−−101010222xyxxyzdzdydxint(int(int(x*y*z,z,0,sqrt(1-x^2-y^2)),y,0,sqrt(1-x^2)),x,0,1)得结果ans=1/48.例10101010(P3831.(1)),其中由曲面与平面,,∫∫∫Vdxdydzzxy22Vxyz=xy=1=x所围成。0=zquadl(@(x)arrayfun(@(xx)quadl(@(y)arrayfun(@(yy)quadl(@(z)…xx.*yy.*z,xx*yy,2*xx*yy),y),xx,2*xx),x),1,2)ans=179.2969quadl(@(x)arrayfun(@(xx)quadl(@(y)arrayfun(@(yy)quadl(@(z)…xx.*yy.*z,xx*yy,2*xx*yy),y),xx,2*xx),x),1,2)ans=179.2969注:1课本上的三重积分都可以用这种方法计算:将三重积分化成三次积分然后用三次quadl即可,其用法为:quadl(@(x)arrayfun(@(xx)quadl(@(y)arrayfun(@(yy)quadl(被积函数f(xx,yy,z)关于z变量的函数句柄,z积分下限z1(xx,yy),z积分上限z2(xx,yy)),y),y积分下限y1(xx),y积分上限y2(xx)),x),x积分下限值,x积分上限值)2.练习.P3833.(2)4.(1)、(2).
本文标题:多重积分的MATLAB实现
链接地址:https://www.777doc.com/doc-4062872 .html