MATLAB积分方法
一 相关函数
%符号积分
int(f,v)
int(f,v,a,b)
%数值积分
trapz(x,y)%梯形法沿列方向求函数Y关于自变量X的积分
cumtrapz(x,y)%梯形法沿列方向求函数Y关于自变量X的累计积分
quad(fun,a,b,tol)%采用递推自适应Simpson法计算积分
quad1(fun,a,b,tol)%采用递推自适应Lobatto法求数值积分
dbquad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)%二重(闭型)数值积分指令
triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)%三重(闭型)数值积分指令
二.示例:
例1:计算f(t)=exp(-t^2)在[0,1]上的定积分
本例演示:计算定积分常用方法
>>symsx
int(exp(-x^2),0,1)
ans=
1/2*erf(1)*pi^(1/2) %erf为误差函数
>>vpa(int(exp(-x^2),0,1))
ans=
.7468241328124270
>>d=0.001;x=0:d:1;d*trapz(exp(-x.^2))
ans=
0.7468
>>quad('exp(-x.^2)',0,1,1e-8)
ans=
0.7468
例2:计算f(t)=1/log(t)在[0,x],0<x<1上的积分
注意:被积函数于x=0无义,在x-->1^-处为负无穷
本例演示:用特殊函数表示的积分结果,如何用mfun指令
(1)
symstx
ft=1/log(t);
sx=int(ft,t,0,x)
sx=
-Ei(1,-log(x)) %完全椭圆函数
(2)
x=0.5:0.1:0.9
sx_n=-mfun('Ei',1,-log(x))
x=
0.5000 0.6000 0.7000 0.8000 0.9000
sx_n=
-0.3787 -0.5469 -0.7809 -1.1340 -1.7758
(3)%图示被函数和积分函数
clf
ezplot('1/log(t)',[0.1,0.9])
gridon
holdon
plot(x,sx_n,'LineWidth',3)
Char1='1/ln(t)';
Char2='{int_0^x}1/ln(t)dt';
title([Char1,' and ',Char2])
legend(Char1,Char2,'Location','SouthWest')
例3:计算f(t)=exp(-sin(t))在[0,4]上的定积分
注意:本题被函数之原函数无"封闭解析表达式",符号计算无法解题!
本例演示:符号计算有限性
(1)符号计算解法
symstx
ft=exp(-sin(t))
sx=int(ft,t,0,4)
ft=exp(-sin(t))
Warning:Explicitintegralcouldnotbefound.
>Insym.intat58
sx=
int(exp(-sin(t)),t=0..4)
(2)数值计算解法
dt=0.05; %采样间隔
t=0:dt:4; %数值计算适合于有限区间上,取有限个采样点
Ft=exp(-sin(t));
Sx=dt*cumtrapz(Ft); %计算区间内曲线下图形面积,为小矩形面积累加得
Sx(end) %所求定积分值
%图示
plot(t,Ft,'*r','MarkerSize',4)
holdon
plot(t,Sx,'.k','MarkerSize',15)
holdoff
xlabel('x')
legend('Ft','Sx')
>>ans=
3.0632
例4:绘制积分图形,y=2/3*exp(-t/2)*cos(sqrt(3)/2*t);积分s(x)=int(y,t,0,x)于[0,4*pi]上
symsttao
y=2/3*exp(-t/2)*cos(sqrt(3)/2*t);
s=subs(int(y,t,0,tao),tao,t); %获得积分函数
subplot(2,1,1)
%
ezplot(y,[0,4*pi]),ylim([-0.2,0.7]) %单变量符号函数可视化,多变量用ezsurf
gridon
subplot(2,1,2)
ezplot(s,[0,4*pi])
gridon
title('s=inty(t)dt')
MATLAB积分方法相关推荐
- matlab 符号 积分法,MATLAB积分方法
一 相关函数 %符号积分 int(f,v) int(f,v,a,b) %数值积分 trapz(x,y)%梯形法沿列方向求函数Y关于自变量X的积分 cumtrapz(x,y)%梯形法沿列方向求函数Y关于 ...
- 通俗易懂的MonteCarlo积分方法(七)
通俗易懂的MonteCarlo积分方法(七) 一.设计的基本GUIGUIGUI格式menteCarlo.figmenteCarlo.figmenteCarlo.fig 二.设计MatlabMatlab ...
- 【Matlab学习手记】Matlab积分问题
一个程序彻底搞懂Matlab的数值积分.符号积分问题. 数值积分问题,给定被积分函数和积分上下限,使用 integral 函数得到积分值: 符号积分问题,通常结果是解析解,即需要知道被积分函数的原函数 ...
- MATLAB 数据分析方法(第2版)1.2 MATLAB基础概述
1.2 MATLAB基础概述 1.2.1 MATLAB的影响 MATLAB源于Matrix Laboratory,即矩阵实验室,是由美国Mathworks公司发布的主要面对科学计算.数据可视化.系统仿 ...
- matlab中dblquad,MATLAB积分.ppt
MATLAB积分 (2) 用int命令求解: 先将重积分化成累次积分: MATLAB代码为 clear; syms x y z; int(int(int('y*sin(x)+z*cos(x)',z,- ...
- MATLAB作图方法与技巧(二)
作为MATLAB作图方法与技巧(一)的补充 1.绘制二维散点图 ① scatter函数 scatter(x,y,s,c)函数绘制向量x和y的散点图,其中s代表点的大小,c代表点的形状,s和c缺省时为默 ...
- PCA原理分析和Matlab实现方法(三)
PCA主成分分析原理分析和Matlab实现方法(三) [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/68487833 ...
- 通俗易懂的MonteCarlo积分方法(五)
通俗易懂的MonteCarlo积分方法(五) 这次主要目的是想办法提高MonteCarloMonteCarloMonteCarlo的计算精度. 如果我们要求解一个定积分: J=∫abf(x)d ...
- 通俗易懂的Monte Carlo的积分方法(三)
通俗易懂的Monte Carlo的积分方法(三) 考虑曾经在参加MCM时的一个多重积分的计算难题 ∫∫D(H−z(x,y))21+zx2+zy2dσ\int\int_{D}(H-z(x,y))^2\s ...
最新文章
- R语言-常用对象及元素类型
- foreach对集合的输出作用
- VTK:可视化之Blow
- FineUI 页面跳转
- c语言limits.h_ (limits.h)C ++中(整数类型的大小)的宏常量
- (计算机组成原理)第七章输入和输出系统-第三节:I/O接口
- python装饰品 后端_python装饰器
- 华南师范大学计算机学院报录比,2020华南师范大学考研报录比.docx
- URAL 1081 Binary Lexicographic Sequence
- Nginx使用GeoIP模块来限制地区访问
- HTML结构:自我简介网页
- linux系统修改Mac地址
- 【考研数学】微分中值定理计算极限专题
- 咖啡加盟10年经验分享:咖啡店12种危机处理方式,提升回头客
- DNS劫持原理,DNS劫持如何解决?
- JavaScript逻辑训练题(一)
- rust货轮什么时候出现_面食究竟是什么时候出现的?浅谈古代面食发展和变迁史...
- Vue element-ui之神坑
- Graylog 中文手册 常用功能和问题整理
- mysql-快速入门