二重积分的数值方法

2025-07-03

《数值分析课程设计》

报 告

专业: 学号: 学生姓名: 指导教师:

一、题目

数值积分中二重积分探究。

二、理论

数值积分就是用数值方法近似计算定积分?f(x)dx。其原理很简单,就是

ab将积分核f(x)用插值多项式Pn(x)替代,用多项式?Pn(x)dx的结果近似定积分

ab?baf(x)dx的值。

一般常用的方法是,将积分区间?a,b?等分为n个子区间,即取步长

h?(b?a)/n,

子区间端点为xk?a?kh(k=0,1,…,n),在每个子区间上套用插值积分公式,再将个区间的结果累加起来。

比较常用的有梯形公式,是在每个子区间上用1阶多项式(即直线段)近似

f(x)并积分的结果:

n?1hn?1h?? Tn???f(xk)?f(xk?1)???f(a)?2?f(xk)?f(b)?

2k?02?k?0?另外一种在实际应用中很受欢迎的方法是,在每个子区间上用2阶多项式(即抛物线)近似f(x)并积分,得到著名的辛普森(Simpson)公式:

hn?1Sn??[f(xk)?f4xk(?16k?0/n?1h2?)fxk?(1?)]fa[?(?)fx4k?6k?01/2(??f)xk?0n?1k2?fb()()]

其中xk?1/2?a?(k?1/2)h。

三、方法、算法与程序设计 Ⅰ.辛普森公式求二重积分

考虑二重积分?f(x,y)dA,它是曲面z?f(x,y)与平面区域R围成的体积,

R对于矩形区域R?{(x,y)|a?x?b,c?y?d},可将它写成累次积分

)???(??f(x,ydxRacbdfx(y,dy)dx。)

若用复合辛普森公式,可分别将[a,b],[c,d]分成N,M等份,步长

- 2 -

h?b?ad?c,k?, NMd1先对积分?f(x,y)dy,应用复合辛普森公式,令yi?c?ik,yi?1/2?c?(i?)k,

c2则

?从而得

dcM?1M?1kf(x,y)dy?[f(x,y0)?4?f(x,yi?1/2)?2?f(x,yi)?f(x,yM)],

6i?0i?1??abdcM?1bM?1bbk?b?f(x,y)dydx???f(x,y0)dx?4??f(x,yi?1/2)dx?2??f(x,yi)dx??f(x,yM)dx?aaa6?ai?0i?1?。对每个积分再分别用复合辛普森公式即可求得积分值。MATLAB程序见附录

1,MATLAB中自带自适应辛普森公式dblquad(),对于变量区域同样适用。 对于变量区域R?{(x,y)|a?x?b,c(x)?y?d(x)},写成累次积分的形式:

I???f(x,y)dxdy??{?Rabd(x)c(x)f(x,y)dy}dx

进行数值计算的表达式为:

I(a,b,c(x),d(?x?))m?1Mm?wnn?1Nvmf(xm n,y)上面的表达式中wm、vn表示权重,取决于一维积分方法。我们常用复合辛普森公式,先对内积分进行计算,在计算外积分,与矩形区域情况基本一致。 Ⅱ高斯求积公式求二重积分

在高斯求积公式中,若取权函数?(x)?1,区间为[?1,1],则得公式

?1?1f(x)dx??Akfx(k。)

k?0n勒让德多项式是区间[?1,1]上的正交多项式,因此,勒让德多多项式Pn?1(x)的零点就是求积公式的高斯点。

若取P1(x)?x的零点x0?0做节点构造求积公式

?1?1;f(x)d?x2f(0)

11若取P2(x)?(3x2?1)的零点?构造求积公式

23

?1?1f(x)dx?f(?11)?f(); 33 - 3 -

当n?4时,求积公式为

?1?1f(x)dx?0.2369269f(?0.9061798)?0.4786287f(?0.5384693)?0.5688889f(0)?0.4786287f(0.5384693)?0.2369269f(0.9061798) 同样先用高斯求积公式求内积分,再求外积分,可得二重积分值。

四、算例、应用实例

算例:

计算二重积分??e?xydxdy。

D(1)若区域D?{0?x?1,0?y?1},试分别用复合辛普森公式(取n=4)及高斯求积公式(取n=4)求积分。

(2)若区域D?{x2?y2?1:x?0,y?0}用复合辛普森公式(取n=4)求积分。 解: (1)

1357113?*y?*y?y*?y*?*y?*y?*yh1?0*y?1*y?0?0edxdy?6?0[e?4e8?4e8?4e8?4e8?2e4?2e2?2e4?e]dy11?xy??eD?xydxdy=

对各个积分应用复合辛普森公式。

也可应用MATLAB中的函数进行计算,程序见附录2。

先将区域D?{0?x?1,0?y?1}变换为区域D?{(u,v)|?1?u,v?1},其中 u?2x?1,v?2y?1,等价于x? I??111(u?1),y?(v?1),有 2211?(u?1v)?(4?1?110?10e?xydxdy???edudv。

1)对于u,v取n?2时的高斯求积公式节点及系数,即

u0?v0??0.9061798,u1?v1??0.5384693,u2?v2?0,u3?v3?0.5384693, u4?v4?0.9061798,A0?A4?0.2369269,A1?A3?0.4786287, A2?0.5688889

用n?4的高斯积分公式计算积分I,

I??(2)

1?1?1?1e1?(u?1)(v?1)4dudv???AiAeji?0j?0441?(u?1)(v?1)4

??edxdy??D?xy100?1?y2e?xydydx,

- 4 -

1131?y2?[0,1]等分为4等份,对应值为0,,,,1的yk(k?0,1,2,3,4)值,用

424yk,yk?1节点应用辛普森公式对内积分求积,再用复合辛普森公式对外积分求积,

也可用MATLAB中的函数实现,结果和程序如下(附录3)。 五、参考文献

【1】 数值分析 李庆扬,王朝能,易大义 清华大学出版社 【2】 数值分析课程设计 陈越,童若锋 浙江大学出版社 【3】 MATLAB教程 张志涌 北京航空航天大学出版社 六、附录 附录1:

function q=DblSimpson(f,a,A,b,B,m,n) if(m==1 && n==1) %辛普森公式

q=((B-b)*(A-a)/9)*(subs(sym(f),findsym(sym(f)),{a,b})+... subs(sym(f),findsym(sym(f)),{a,B})+... subs(sym(f),findsym(sym(f)),{A,b})+... subs(sym(f),findsym(sym(f)),{A,B})+...

4*subs(sym(f),findsym(sym(f)),{(A-a)/2,b})+... 4*subs(sym(f),findsym(sym(f)),{(A-a)/2,B})+... 4*subs(sym(f),findsym(sym(f)),{a,(B-b)/2})+... 4*subs(sym(f),findsym(sym(f)),{A,(B-b)/2})+...

16*subs(sym(f),findsym(sym(f)),{(A-a)/2,(B-b)/2})); else %复合辛普森公式 q=0;

for i=0:n-1 for j=0:m-1

x=a+2*i*(A-a)/2/n;

y=b+2*j*(B-b)/2/m; x1=a+(2*i+1)*(A-a)/2/n; y1=b+(2*j+1)*(B-b)/2/m; x2=a+2*(i+1)*(A-a)/2/n; y2=b+2*(j+1)*(B-b)/2/m;

q=q+subs(sym(f),findsym(sym(f)),{x,y})+... subs(sym(f),findsym(sym(f)),{x,y2})+... subs(sym(f),findsym(sym(f)),{x2,y})+... subs(sym(f),findsym(sym(f)),{x2,y2})+... 4*subs(sym(f),findsym(sym(f)),{x,y1})+... 4*subs(sym(f),findsym(sym(f)),{x2,y1})+... 4*subs(sym(f),findsym(sym(f)),{x1,y})+... 4*subs(sym(f),findsym(sym(f)),{x1,y2})+... 16*subs(sym(f),findsym(sym(f)),{x1,y1}); end end end

- 5 -

q=((B-b)*(A-a)/36/m/n)*q; 附录2:

fun=inline(‘exp(x*y)’); d=dblquad(fun,0,1,0,1); 附录3:

f = inline('exp(-x*y)’,'x','y'); xlower = inline(0,'y');

xupper = inline('sqrt(1-y.^2)','y');

Q=quad2dggen(fun,xlower,xupper,0,1,1e-4);

- 6 -


二重积分的数值方法.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2024-2025年中国磷肥(折五氧化二磷100%)行业发展深度研究与投资

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219