Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1330530
  • 博文数量: 124
  • 博客积分: 5772
  • 博客等级: 大校
  • 技术积分: 1647
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-27 10:39
文章分类

全部博文(124)

文章存档

2020年(1)

2019年(1)

2018年(5)

2017年(2)

2016年(17)

2015年(3)

2014年(7)

2013年(11)

2012年(13)

2011年(30)

2010年(34)

分类: WINDOWS

2012-05-31 10:18:12

       积分区域为常数的矩形区域,使用dblquad函数计算二重积分,当积分区域不为常数时,通过对dblquad函数进行改造,可以计算任意积分区域的二重积分。详细内容请参考“王若鹏, 夏赞勋, 谢鹏燕, 张鹏, "基于MATLAB的二重积分计算方法," 高等数学研究, 61-63 (2012).”

比如计算如下二重积分

1.mydblquad.m文件

  1. function y=mydblquad(a,b)
  2. y=dblquad(@f_tran,a,b,0,1);
不论计算什么样的二重积分,该文件内容不需要做任何修改。

2.f_tran.m文件

  1. function z=f_tran(x,u)
  2. d=sqrt(x);
  3. c=x;
  4. z=(d-c).*f_init(x,(d-c).*u+c);
计算积分时,只需要把c和d改成内积分的上下限即可。

3.f_init.m文件

  1. function w=f_init(x,y)
  2. w=sin(y)./y;
计算积分时,只需要把内积分的积分函数表示出来即可,注意,需要使用点乘、点除等运算。

4.调用mydblquad(0,1),即可计算出上述二重积分。
   mydblquad.rar   
 f_init.rar    f_tran.rar   
阅读(16884) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~