使用Matlab求解定积分/不定积分
2018-01-28 14:31
3719 查看
一、符号积分
求符号积分函数:int格式:int(f,x,a,b)
功能:计算定积分
格式:int(f,x)
功能:计算不定积分
使用int函数之前,先用syms声明x是符号变量
例:
代码:
syms x y1=1/(1+x^4); y2=(x*exp(x))/(1+x)^2; y3=1/(x^2+2*x+3); fy1=int(y1) fy2=int(y2,0,1) fy3=int(y3,-inf,+inf)
二、数值积分
在科学研究和工程技术中,经常遇到积分的计算,虽然有些函数的不定积分可以求出其初等函数表示式,但有更多的函数,它们的不定积分不是初等函数,这样就无法利用牛顿莱布尼兹公式求出其定积分,甚至经常遇到只知道函数在一些离散点的值,但函数表达式未知的情况,在上述情况下就必须以数值方法求定积分的近似值。用数值方法求定积分的近似值,通常称为数值积分。(1) 用梯形法计算积分;
适用于被积函数为离散数据时,求函数的定积分。该函数调用格式:I=trapz(x,y)例:
clc,clear format long ac=@(x)sin(x)./x x1=pi/4:pi/50:pi/2; y1=ac(x1); s1=trapz(x1,y1) x2=pi/4:pi/100:pi/2; y2=ac(x2); s2=trapz(x2,y2)
(2) 基于变步长辛普森法计算积分
该函数调用格式:[I,n]=quad(‘fname’,a,b,Tol,trace)其中:‘fname是被积函数名
a,b是积分上下限
Tol是精度控制值,省却时取0.001
Trace:控制是否显示展现积分过程,取0不展现
I:积分值
n:被积函数调用次数
例:
ac=@(x)sin(x)./x s=quad(ac,pi/4,pi/2)
(3) 高精度Lobatto积分法,
格式:z = quadl(Fun,a,b)(4) 自适应Gauss-Kronrod数值积分
z = quadgk(Fun,a,b)(5) 积分法矢量化自适应simpson数值积分
格式:z = quadv(Fun,a,b)一次可以计算多个积分
例
F=@(x,n)1./((1:n)+x.^2); quadv(@(x)F(x,6),0,1)
三、数值二重积分
I=dblquad(f,a,b,c,d,tol,trace),求f(x,y)在[a,b]×[c,d]区域上的二重积分。例:
计算二重积分:
其中
f=@(x,y)exp(-x.^2/2).*sin(x.^2+y) I=dblquad(f,-2,2,-1,1)
相关文章推荐
- 使用matlab求解二维浅水方程的数值解(一)—浅水波
- 使用MATLAB进行一次和二次规划问题求解
- Matlab求解高斯分布的概率以及概率反解-使用erf相关函数
- 关于matlab中求定积分int和quad命令的使用
- 使用DLT算法求解相机参数及相机与物体的位置关系(附加C/C++和Matlab代码)
- 使用 Matlab 的 bvp4c 求解边值问题
- 使用MATLABD数值法计算定积分或反常积分
- 使用 Matlab 的 bvp4c 求解边值问题
- 使用matlab用优化后的梯度下降法求解达最小值时参数
- 使用matlab求解二维浅水方程的数值解(二)—波浪的折射
- 矩阵快速幂算法的原理与实践——“使用MATLAB求解大型斐波那契数"
- 使用matlab求解镜头畸变参数以及使用opencv进行畸变矫正
- 使用matlab进行非线性方程组求解
- 使用MATLAB和Python迭代求解黄金分割
- 使用MATLAB自带函数求解二次特征值问题
- 【数模学习】Matlab 符号微积分 计算微分、雅可比矩阵、不定积分与定积分、求解微分方程
- 算法之使用递归求解全排列
- (使用数的便利求解层次性问题8.1.2)POJ 2003 Hire and Fire(元素的插入与删除)
- 使用matlab生成简单的模式类
- 【图像处理】Matlab使用技巧