函数的导数仍是一个函数。高等数学关心的是导函数的形式和性质,而数值分析关心的是怎样计算导函数在一串离散点的近似值即误差。
一、数值微分
当步长充分小时,函数在点x处的微分接近函数在该点处的差分,在点x处的导数接近函数在该点处的差商。
(1)DX=diff(X):计算向量X的向前差分 DX(i)=X(i+1)-X(i)
(2)DX=diff(X,n):计算X的n阶向前差分。diff(X,2)=diff(diff(X))
(3)DX=diff(A,n,dim):计算矩阵A的n阶差分。dim=1,按列计算;dim=2,按行计算
二、数值积分
一般选择被积函数的插值多项式替代进行积分,选择的插值多项式的次数不同,就形成不同的数值积分公式。选择一次多项式时为梯形公式,选择二次多项式为辛普森公式。
如果把积分区间划分多个等长子区间,在每个子区间上用插值多项式代替f(x),逼近效果一般比在整个区间使用一个统一的插值多项式好,因此形成数值积分复合公式。
对一般工程问题,复合辛普森积分公式具有足够精度
(1)变步长辛普森法
[I,n]=quadl(filename,a,b,tol,trace) filename是被积函数名,a,b是积分下限和上限且积分限不能无穷大,tol控制积分精度,默认10^(-6),trace控制是否展示积分过程,0则不展现。返回参数I是定积分值,n为被积函数的调用次数。
f=@(x) exp(-x.^2);
[I,n]=quadl(f,0,1)
(2)自适应积分法
I=integral(filname,a,b),filename必须是函数句柄,积分限可以无穷大(-Inf,+Inf)
function f=fe(x)
f=exp(-x.^2);
I=integral(@fe,1,exp(1))
(3)高斯-克朗罗德法
求解振荡函数的定积分。[I,err]=quadgk(filname,a,b)
(4)梯形积分法
在工程应用中函数表达式往往未知,只有实验测得的一组样本点和样本值。对由表格形式定义的函数关系求定积分可用I=trapz(X,Y),积分区间是[x1,xn]
三、多重定积分的数值求解
二重积分
I=integral2(filename,a,b,c,d)
I=quad2d(finename,a,b,c,d)
I=dblquad(filename,a,b,c,d,tol)
三重积分
I=integral3(filename,a,b,c,d,e,f)
I=triplequad(finename,a,b,c,d,e,f,tol)