MATLAB计算二重数值积分(dblquad)

2025-10-02 02:44:06

1、第一,使用MATLAB计算下图中的二重积分。

MATLAB计算二重数值积分(dblquad)

2、第二,启动MATLAB,新建脚本(Ctrl+N),输入如下代码:

close all; clear all; clc

figure('Position',[50,50,600,500],'Name','double integration')

f=@(x,y) x*sin(y)-cos(x)+y-3;

Q1=dblquad(f,0,2*pi,-pi,pi,1.0e-3)

x=linspace(0,2*pi);y=linspace(-pi,pi);

ff=x.*sin(y)-cos(x)+y-3;

plot3(x,y,ff,'r','LineWidth',3)

grid on; view(35,35)

xlabel('x','FontSize',15); ylabel('y','FontSize',15)

其中Q1=dblquad(f,0,2*pi,-pi,pi,1.0e-3)采用默认方法quad计算二重积分,绝对计算精度设为1.0e-3。

plot3(x,y,ff,'r','LineWidth',3)是绘制被积分函数ff=x.*sin(y)-cos(x)+y-3的图像。

MATLAB计算二重数值积分(dblquad)

3、第三,保存和运行上述脚本,在命令行窗口(Command Window)得到如下结果:

Q1 =

 -118.4351

也就是说,该二重数值积分的结果为-118.4351.

MATLAB计算二重数值积分(dblquad)

4、第四,同时得到被积分函数x.*sin(y)-cos(x)+y-3的图像。

MATLAB计算二重数值积分(dblquad)

5、第五,在Q1=dblquad(f,0,2*pi,-pi,pi,1.0e-3)后面再添加一行命令,Q2=dblquad(f,0,2*pi,-pi,pi,1.0e-3,'quadl')。也就是在绝对计算精度都是1.0e-3的情况下,使用quadl方法计算二重数值积分。

MATLAB计算二重数值积分(dblquad)

6、第六,保存和运行上述脚本,在命令行窗口(Command Window)得到采用quad方法(默认)和quadl方法计算的二重数值积分结果。

Q1 =

 -118.4351

Q2 =

 -118.4355

也就是说,采用采用quad方法(默认)计算的二重数值积分结果为-118.4351,而采用quadl方法计算的二重数值积分结果为-118.4355,两者在小数点第四位略有差别。

MATLAB计算二重数值积分(dblquad)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢