matlab中如何用复合辛普森公式求二重积分

作者&投稿:柘凤 (若有异议请与网页底部的电邮联系)
MATLAB如何求二重积分~

在MATLAB软件中输入二重积分的代码即可求二重积分,具体操作请参照以下步骤,演示软件版本为MATLAB 2014版。
1、将要使用MATLAB计算下图中的二重积分,首先在电脑上打开MATLAB软件。

2、新建脚本(Ctrl+N),输入图中框住的代码内容。其中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的图像。

3、保存和运行上述脚本,在命令行窗口(Command Window)得到如下结果:Q1 =-118.4351。也就是说,该二重数值积分的结果为-118.4351。

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

5、也可采用quadl法计算二重积分,在Q1命令后面再添加一行命令Q2=dblquad(f,0,2*pi,-pi,pi,1.0e-3,'quadl')即可。

>> syms x y
>> int(int(x*y,y,2*x,x^2+1),x,0,1)
ans =
1/12

代码如下:
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
q=((B-b)*(A-a)/36/m/n)*q;
叫我雷锋!


matlab的mat文件怎么打开?
MAT文件(或者称为MATLAB文件)是一种由MATLAB软件生成的文件格式。MAT文件是二进制格式的,通常用于存储MATLAB变量、数据或程序。MAT文件可以包含矩阵、向量、结构体、图像、函数和MATLAB工作空间等。MAT文件的扩展名通常是.mat。要打开MAT文件,你可以使用MATLAB软件或其他支持MAT文件格式的软件,下面是一些常见的方法:1、使...

如何用MATLAB打开以及处理图片
1、先打开软件后,找到左上角按钮,点击即可用m编辑器,写入代码,可以每写完一部分,执行一下,查看效果。2、接着需要将该文件保存。3、然后将一个图片,复制到同一个文件夹里,方便程序调用。4、然后即可进行程序创建,这里如图使用imread进行读取,其中引号内容有文件名,包括扩展名,这是相对路径。

MATLAB中voltage measurement如何使用?
6、在页面内点击current measurement,可以看到current measurement的简介和使用说明。介绍和voltage measurement模块类似,这是一个电流测量模块。7、如果看简介还不能明白怎么使用,可以在简介界面点击help,可以打开MATLAB中该模块的使用教程和使用示例。使用方法和电压表,电流表的方法类似,测量模块的信号不能...

matlab中lhsdesign函数怎么用啊,
lhsdesign 函数是 MATLAB 中用于生成 Latin hypercube sample 的函数,语法如下:matlab Copy code X = lhsdesign(n,p)X = lhsdesign(n,p,'smooth')X = lhsdesign(n,p,'criterion',criterion)X = lhsdesign(n,p,'iterations',iterations)X = lhsdesign(n,p,'criterion',criterion,'iterations',...

matlab中num2str函数如何使用?
在matlab命令窗口中键入doc num2str或help num2str即可获得该函数的帮助信息,从中可以看出num2str的使用方法有三种,以下示例摘自MATLAB中num2str参考页,MATLAB自带有函数的使用说明,函数用法可以直接函数介绍和示例。1、str = num2str(A)把数组A中的数转换成字符串表示形式。例子:str = num2str(pi)str =...

Matlab中的万用表怎么用?
万用表怎么用哦那些字母代表什么谢谢 数字万用表使用方法: 首先要了解一些基础,比如: power 电源开关 HOLD锁屏按键, B\/L一般是为背光灯, 其次要了解 转换开关 V-或DCV 是直流电压挡的意思 V~或ACV交流电压挡的意思 A-或DCA直流电流挡的意思 A~或ACA是交流电流挡的意思, Ω是电阻挡的意思,画一个二极管的符...

如何使用matlab中的工具箱
1、首先给出对应的拟合数据:>> x=1:100;>> y=2*x;一条直线。2、然后这里先画出这条直线,直观感受下。3、接着在命令窗口输入:cftool。4、这时会看到此时,系统会显示cftool工具箱。5、然后选择拟合的数据,当然这里拟合的是二维数据。只需要输入2个数据源。6、然后选择拟合的函数类型,可以选择...

如何在MATLAB中使用power函数求平方?
1、第一步打开matlab,在命令行窗口输入a=3^2,如下图所示:2、第二步按回车键之后,可以看到结果为9,表示3的平方,如下图所示:3、第三步命令行窗口输入 b=power(4,2),表示4的平方,如下图所示:4、第四步按回车键,可以看到结果为16,power函数可以表示是数字的几次方,后面是2就是平方...

matlab中scope是什么意思?如何使用
scope是matlab里用来显示波形的重要控件,相当于multisim的示波器,每个信号分别命名的方法为:1、新建一个matlab模型文件,加入一个正弦波和scope控件。2、点击运行按钮,再双击scope,可以看到该正弦波形的图像。双击图中的第二个工具按钮(Parameters),可以进入参数设置。3、将“Number of axes”设置为需要...

matlab中input函数如何使用?
1、首先在电脑上打开matlab,在命令行窗口中输入“help input”,可以看到关于input函数的使用方法。2、接着在命令行窗口中输入“ input('请输入内容:')”,按回车键。3、按回车键之后,输入123456,可以看到得到值为123456。4、输入 t=input('请输入内容:','s'),按回车键,如下图所示。5、...

信州区18856929356: 数值方法中要求用Matlab复合Simpson公式做此题(要求完整过程,急用,求高手!!!~~~) -
邱穆安达: clc format long clear a=0;b=1;p=0; n=4;m=0; h=(b-a)/n; for i=1:n-1x=0;x=a+h*i;m=m+sin(x)/x; end h=(b-a)/(2*n); for k=1:2:2*np=p+sin(a+k*h)/(a+k*h); end Sn=h/3*[1+4*p+2*m+sin(b)/b] %辛普森公式结果 result=sinint(1) %计算精确值 format short结果: Sn =0.94608331088847 result =0.94608307036718 >>

信州区18856929356: 怎样用在matlab中用 newton - cotes数值积分法 -
邱穆安达: 一、数值积分基本公式数值求积基本通用公式如下Eqn1.gif (1.63 KB)2009-11-20 23:23xk:求积节点 Ak:求积系数,与f(x)无关数值积分要做的就是确定上式中的节点xk和系数Ak.可以证明当求积系数Ak全为正时,上述数值积分计算过程...

信州区18856929356: matlab中离散数据插值后怎么用辛普森公式求面积 -
邱穆安达: function I=S_quad(x,y) n=length(x);m=length(y); if n~=m error('The lengths of X and Y must be equal'); return; end if rem(n-1,2)~=0 I=T_quad(x,y); return; end N=(n-1)/2; h=(x(n)-x(1))/N;a=zeros(1,n); for k=1:N a(2*k-1)=a(2*k-1)+1; a(2*k)=a(2*k)+4; a(2*k-1)=a(2*k+1)+1; end I=h/2*sum(a.*y);

信州区18856929356: 用matlab 在分点数同样多的条件下,用梯形和辛普森公式求sinx在0到π/2的定积分. -
邱穆安达: 说明,用下面程序时,必须要先确定m的值. 这两个程序都有误差估计.设n=2m+1(这是因为,辛普森公式要求的) 梯形公式:h=π/2/2m=π/4m;a=0;b=pi/2;x=a:h:b;y=sin(x); z1=(y(1)+y(n))*h/2; z2=sum(y(2:n-1))*h; z=z1+z2,syms t f=sin(t); intf=int(f,t,a,b)...

信州区18856929356: Matlab问题!用辛普森公式求数值积分.. -
邱穆安达: Matrix dimensions must agree. 很明显,维数不匹配……你用矩阵算的,你的保证参与运算的矩阵其行列数可以保证矩阵运算的进行吧~~

信州区18856929356: 分别用复合梯形公式和复合simpson求积公式计算 要求对分6次,注意对分次数和等 -
邱穆安达: 于无法求得exp(x^2)的原函数,我们只能用数值算法来求解,可以用复化梯形公式、Romberg公式、Gauss公式等,有好多种.我用Matlab编了一个用Gauss公式求解积分的函数.functionS=GaussIntegrate()%运用Gauss求积公式计算数值积分%f为被积函数

信州区18856929356: 跪求,急!用matlab 在分点数同样多的条件下,用梯形和辛普森公式求sinx在0到π/2的定积分.请写出详细过程,再次对能写出的能人表示感谢.不要随便回答. -
邱穆安达:[答案] 说明,用下面程序时,必须要先确定m的值. 这两个程序都有误差估计.设n=2m+1(这是因为,辛普森公式要求的)梯形公式:h=π/2/2m=π/4m;a=0;b=pi/2;x=a:h:b;y=sin(x);z1=(y(1)+y(n))*h/2; z2=sum(y(2:n-1))*h; z=z1+z2,syms...

信州区18856929356: 如何在matlab中使用metropolis - hasting算法 -
邱穆安达: 看情况是你没安装GA工具箱,就是要将GA工具箱(一系列m文件)复制到到matlab目录下的toolbox文件夹里面,之后打开matlab,点击工具栏 file-set path-add folder,把GA工具箱所在的文件夹添加进去.

信州区18856929356: simpson公式的matlab程序 -
邱穆安达: 你说的是simpson求积公式吗?quad这个函数就是这个方法求定积分

信州区18856929356: 用Simpson公式计算积分要有完整的计算过程 -
邱穆安达:[答案] Nweton—Cotes公式的求积余项表明,求积节点n越大,对应的求积公式精度越高,但由于Nweton—Cotes公式在n>8时数值不稳定,因此不能用增加求积节点数的方法来提高计算精度.实用中常将求积区间[a,b]分成若干个小区间,然后在每个小区间...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网