实际应用中在MATLAB里面都有开发好的命令可以使用,如  quad(), quadl(),quad2d(),triplequad() 。需要掌握这些命令的用法。

1. 定积分 trapz(),quad(),quadl()

trapz() 函数采用复化梯形公式求积分,其使用格式为

I = trapz(x,y)

参数x为自变量,y为节点处的值,返回值为积分的近似值。

quad() 函数采用自适应步长是Simpson 求积法,其格式为

I = quad(fun,a,b,tol)

参数 fun 为被积函数 $f(x)$;a,b 分别为变量~$x$ 的积分下限和上限; tol 为积分精度要求,默认为1e-6($10^{-6}$)

计算定积分 $\displaystyle{\int_0^1\dfrac{d x}{1+x^2}}.$

>> I = quad(@(x)1./(1+x.^2),0,1)

I =

0.7854

精确解为 $\dfrac{\,\pi\,}{4}$.

计算二重积分

$$\iint\limits_D\sqrt{|y-x^2|}dxdy,D =\{(x,y)|-1\leqslant x \leqslant 1, 0\leqslant y\leqslant 2\}.$$

>> fun = @(x,y)(sqrt(abs(y-x.^2)))

>> I = dblquad(fun,-1,1,0,2)

I =

3.2375

精确解为 $\dfrac{\,5\,}{3}+\dfrac{\,\pi\,}{2}$.

对于非矩形积分区域,也可以用矩形区域积分来处理,但是需要令超出边界的部分函数值为0.

计算二重积分

$\iint\limits_D\sqrt{1-x^2-y^2}dxdy,D =\{(x,y)|x^2+y^2\leqslant 1\}.$

$$\iint\limits_D\sqrt{1-x^2-y^2}dxdy,D =\{(x,y)|x^2+y^2\leqslant 1\}.$$

>> fun = @(x,y)(sqrt(1-x.^2-y.^2).*(x.^2+y.^2<=1));% 或 fun = @(x,y)(sqrt(max(1-x.^2-y.^2,0)));

>>  I = dblquad(fun,-1,1,-1,1)

I =

2.0944

精确解为 $\dfrac{\,2\,}{3}\pi$.

3. 三重积分 triplequad

triplequad() 是在立方体区域上求三重积分的函数,其格式为

I = triplequad(fun,a,b,c,d,e,f,tol,method)

参数 fun 为三元被积函数 $f(x,y,z)$;a,b 分别为变量 $x$ 的积分下限和上限; c,d 分别为变量 $y$ 的积分下限和上限;e,f 分别为变量~$z$ 的积分下限和上限;tol 为积分精度要求,默认为1e-6($10^{-6}$);method 为求积分的方法,有两种,一种是@quad,另一种是@quadl,默认是@quadl。

计算三重积分$$\iiint\limits_\Omega \bigg[y\sin  x + z\cos x\bigg] d v,\Omega=\{(x,y,z)|0\leqslant x \leqslant\pi, 0\leqslant y\leqslant 1,-1\leqslant z\leqslant 1\}.$$

>> fun = @(x,y,z)(y.*sin(x)+z.*cos(x));

>> I = triplequad(fun,0,pi,0,1,-1,1)

I =

2.0000

对于非立方体的积分区域,可以采用令边界外的函数值为 0 的方法。

计算三重积分$$\iiint\limits_\Omega \bigg|\sqrt{x^2+y^2+z^2-1} \bigg|d v,\quad \Omega=\{(x,y,z)|\sqrt{x^2+y^2}\leqslant z\leqslant 1\}.$$

>> fun = @(x,y,z)(abs(sqrt(x.^2+y.^2+z.^2)-1).*((z<=1)&(z>=sqrt(x.^2+y.^2))));

>> I = triplequad(fun,-1,1,-1,1,0,1)

I =

0.2169

精确解是 $\dfrac{\pi(\sqrt{2}-1)}{6}$,计算误差为 $4.5220\times 10^{-6}$.

转载本文请联系原作者获取授权,同时请注明本文来自王福昌科学网博客。

链接地址:http://blog.sciencenet.cn/blog-292361-1012198.html

上一篇:《高等工程数学》第三版 “第八章 数值积分和数值微分公式”

下一篇:《高等工程数学》第三版 “第九章 方程求根” 的幻灯片

matlab trapz二重积分函数_科学网—MATLAB中的数值积分方法 - 王福昌的博文相关推荐

  1. matlab trapz二重积分函数_如何使用 MATLAB 求解定积分、不定积分和多重积分问题...

    介绍几种 MATLAB 中求解积分的方法,首先是采用符号积分的方法,求解积分的符号函数为 \(int\),使用方法如下: int(f,x,a,b) 例如计算如下积分函数: $$\int \frac{1 ...

  2. matlab中的mkdir函数_科学网—Matlab中计算函数运行时间的三种方法及判断新建文件夹 - 张伟的博文...

    (一)运行时间 1.tic和toc组合 计算daotic和toc之间那专段程序之间的属运行时间,它的经典格式为 : tic 函数 toc 复制函数代码,当代码遇到tic时Matlab自动开始计时,运行 ...

  3. matlab trapz二重积分函数_小小知识点(十二)利用MATLAB计算定积分

    一重定积分 1. Z = trapz(X,Y,dim) 梯形数值积分,通过已知参数x,y按dim维使用梯形公式进行积分 %举例说明1 clc clear all % int(sin(x),0,pi) ...

  4. matlab批量生成灰度图像_科学网—matlab彩色图像的批处理转换为灰度、二值和主成分图图像 - 金秀良的博文...

    这段代码主要用来进行图像的批处理转换为灰度.二值和主成分图图像,希望给大家借鉴.其中 RGB to bw可以直接实现,但是效果不好,所以先用RGB to gray,之后再gray to bw.RGB ...

  5. mh采样算法推导_科学网—MCMC中的Metropolis Hastings抽样法 - 张金龙的博文

    Metropolis Hastings抽样法示例 jinlongzhang01@gmail.com Metropolis Hasting(下面简称MH)是蒙特卡罗马尔科夫链中一种重要的抽样方法.本文简 ...

  6. 单纯性搜索算法 matlab函数,科学网—一种有效的最优化方法——Nelder-Mead单纯形直接搜索算法 - 王福昌的博文...

    虽然MATLAB本身自带了fminsearch()函数,可以求解目标函数无梯度的最优化问题,但是感觉下面的程序在很多时候更好用,特别是自变量有边界和非线性约束的时候. 这里是John D'Errico ...

  7. matlab对数收益直方图,科学网—MATLAB中绘制数据直方图的新函数histogram2 - 王福昌的博文...

    MATLAB中有命令hist3() 可以绘制直方图,竖坐标是频数,这与一些教科书中用纵轴表示频率的做法不一致,有些时候不便于使用.当然,使用者可以自己编写定制能够在纵轴绘出频率的直方图.在MATLAB ...

  8. python牛顿法解非线性方程组_科学网—求解多元非线性方程组F(x)=0的Newton-Raphson方法及其MATLAB实现 - 王福昌的博文...

    科学网对公式支持不太好,在博客园有相同博文 牛顿迭代法可以推广到多元非线性方程组 $boldsymbol{F}(boldsymbol{x})=boldsymbol{0}$的情况,称为牛顿-- 拉夫逊方 ...

  9. matlab回归分析结果输出,科学网—回归分析的MATLAB和R程序实现 - 王福昌的博文...

    前面博客中已经讲过MATLAB中常用的命令拟合polyfit() , lsqcurvefit() ,nlinfit()  和 cftool等,这里简单介绍简单的回归分析的MATLAB和R语言实现. 例 ...

最新文章

  1. K8S - Kubernetes简介
  2. div 下 的img水平居中
  3. NYOJ 460 项链
  4. outlook反应慢的原因_环氧漆不固化是什么原因?固化剂的使用有关系!
  5. (3)Python3笔记之变量与运算符
  6. 线程打印_面试题:用程序实现两个线程交替打印 0~100 的奇偶数
  7. 前端学习(2886):如何短时间内实现v-for 组件化设计方案
  8. LeetCode 1234. 替换子串得到平衡字符串(滑动窗口)
  9. 右键计算机菜单,右键菜单设置方法步骤【图文】
  10. Windows下搭建Scala开发环境
  11. JAVA编程规则【转自java编程思想】
  12. 分布式定时器的实现原理
  13. S7503E V7 snmpv3典型组网配置案例(与IMC联动)
  14. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 03课
  15. apache tomcat ajp协议安全限制绕过漏洞_【高危安全通告】Apache Tomcat 文件包含漏洞(CVE20201938)...
  16. attention与self attention的区别
  17. pytorch学习(一)数据加载之前的预处理(UCSD数据集)
  18. java 一笔一划 写汉字_基于Web的汉字一笔一划书写方法
  19. C++ Test 关于Read Symbols报错的解决方法(适用于Windows 10)
  20. 关于2020年全国大学生电子设计竞赛 ——信息科技前沿专题邀请赛(瑞萨杯)竞赛时间调整的通知

热门文章

  1. 【Halcon视觉】极坐标变换
  2. 一个男人在婚礼上的致辞——关于爱情,关于婚姻
  3. 大白话讲懂word2vec原理和如何使用
  4. html调取主机ipv6地址,IPv6地址格式及地址配置方式
  5. 5G、元宇宙和被重新定义的社交出海
  6. 2023年你最值得了解的信息技术-国内篇
  7. Android 录屏相关
  8. mysql增加primary key_MySQL主键(PRIMARY KEY)
  9. SeaWeedfs学习总结
  10. python3转义字符表