Matlab数值积分与数值微分

  • 格式:docx
  • 大小:22.04 KB
  • 文档页数:11

下载文档原格式

  / 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M a t l a b数值积分与数值微分

Matlab数值积分

1.一重数值积分的实现方法

变步长辛普森法、高斯-克朗罗德法、梯形积分法

1.1变步长辛普森法

Matlab提供了quad函数和quadl函数用于实现变步长

辛普森法求数值积分.调用格式为:

[I,n]=Quad(@fname,a,b,tol,trace)

[I,n]=Quadl(@fname,a,b,tol,trace)

Fname是函数文件名,a,b分别为积分下限、积分上限;

tol为精度控制,默认为1.0×10-6,trace控制是否展

开积分过程,若为0则不展开,非0则展开,默认不展开.

返回值I为积分数值;n为调用函数的次数.

--------------------------------------------------------------------- 例如:求

∫e0.5x sin(x+π

)dx

的值.

先建立函数文件

fesin.m

function f=fesin(x)

f=exp(-0.5*x).*sin(x+(pi/6));再调用quad函数

[I,n]=quad(@fesin,0,3*pi,1e-10)

I=

0.9008

n=

365

--------------------------------------------------------------------- 例如:分别用quad函数和quadl函数求积分

∫e0.5x sin(x+π

6

)dx

的近似值,比较函数调用的次数.

先建立函数文件

fesin.m

function f=fesin(x)

f=exp(-0.5*x).*sin(x+(pi/6));

formatlong

[I,n]=quadl(@fesin,0,3*pi,1e-10)

I=

n=

198

[I,n]=quad(@fesin,0,3*pi,1e-10)

I=

n=

365

--------------------------------------------------------------------- 可以发现quadl函数调用原函数的次数比quad少,并

且比quad函数求得的数值解更精确.

1.2高斯-克朗罗德法

Matlab提供了自适应高斯-克朗罗德法的quadgk函数来求震荡函数的定积分,函数的调用格式为:

[I,err]=quadgk(@fname,a,b)

Err返回近似误差范围,其他参数的意义与quad函数相同,积分上下限可以是-Inf或Inf,也可以是复数,若为复数则在复平面上求积分.

--------------------------------------------------------------------- 例如:求积分

xsinx

1+cos2x

dx π

的数值.

先编写被积函数的m文件

fsx.m

function f=fsx(x)

f=x.*sin(x)./(1+cos(x).^2);

再调用quadgk函数

I=quadgk(@fsx,0,pi)

I=

2.4674

--------------------------------------------------------------------- 例如:求积分

xsinx

1+cos2x

dx +∞

−∞

的值.

先编写被积函数的m文件

fsx.m

function f=fsx(x)

f=x.*sin(x)./(1+cos(x).^2); 再调用quadgk函数

I=quadgk(@fsx,-Inf,Inf)

I=

-9.0671e+017

---------------------------------------------------------------------

1.3梯形积分法

对于一些不知道函数关系的函数问题,只有实验测得的一

组组样本点和样本值,由表格定义的函数关系求定积分问

题用梯形积分法,其函数是trapz函数,调用格式为:

I=Traps(X,Y)

X,Y为等长的两组向量,对应着函数关系Y=f(X) X=(x1,x2,…,x n)(x1

分区间是[x1,x n]

--------------------------------------------------------------------- 例如:已知某次物理实验测得如下表所示的两组样本点.

现已知变量x和变量y满足一定的函数关系,但此关系

未知,设y=f(x),求积分

13.39

∫f(x)dx

1.38

的数值.

X=[1.38,1.56,2.21,3.97,5.51,7.79,9.19,11

.12,13.39];

Y=[3.35,3.96,5.12,8.98,11.46,17.63,24.41