-代数插值法的论述
数值分析
--代数插值法的论述
姓名:蔺孝宝
学号:
班级:1203
学院:商洛学院
数计学院数学与计算科学系
日期2014.12.29代数插值法
摘要
插值法是函数逼近的重要方法之一,有着广泛的应用 。在生产和实验中,函数f(x)或者其表达式不便于计算复杂或者无表达式而只有函数在给定点的函数值(或其导数值) ,此时我们希望建立一个简单的而便于计算的函数j(x),使其近似的代替f(x),有很多种插值法,其中以拉格朗日(Lagrange)插值和牛顿(Newton)插值为代表的多项式插值最有特点,常用的插值还有Hermit插值,分段插值和样条插值.这里主要介绍拉格朗日(Lagrange)插值和牛顿(Newton)插值并在MATLAB中的应用操作。
【关键字】插值法 拉格朗日插值 牛顿插值 MATLAB
正文:
一、调用MATLAB内带函数插值
1、MATLAB内带插值函数列举如下:
interp1
interpft
interp2
interp3
interpn
spline
meshgrid
ndgrid
griddata一维数据内插(查表法)
使用FFT方法的一维数据内插
二维数据内插(查表法)
三维数据内插(查表法)
多维数据内插(查表法)
三次样条内插
为三维绘图产生X和Y阵
为多维函数和内插产生阵列
数据网格2、取其中的一维数据内插函数(interp1)为例,程序如下:
其调用格式为:
yi=interp1(x, y, xi)
yi=interp1(x, y, xi, method)
举例如下:
x=0:10:100
y=[40 44 46 52 65 76 80 82 88 92 110];
xi=0:1:100
yi=interp1(x,y,xi,'spline')
3、其他内带函数调用格式为:
Interpft函数:
y=interpft(x,n)
y=interpft(x,n,dim)
interp2函数:
ZI=interp2(X, Y, Z, XI, YI), ZI=imerp2(Z, ntimes)
ZI=interp2(Z, XI, YI) ,ZI=interp2(X, Y, Z, XI, YI, method) interp3函数:
VI=interp3(X,Y,Z,V,XI,YI,ZI) VI=interp3(V, ntimes)
VI=interp3(V,XI,YI,ZI) VI=interp3(…, method)
Interpn函数:
VI=interpn(X1, X2, X3, …, V, Y1, Y2, Y3, …)
VI=interpn(V, ntimes)
VI=interpn(V, Yl, Y2, Y3, …) VI=interpn(…, method)
Spline函数:
yi=spline(x,y,xi)
pp=spline(x,y)
meshgrid函数:
[X,Y]=meshgrid(x,y)
[X,Y]=meshgrid(x)
[X,Y,Z]=meshgrid(x,y,z)
Ndgrid函数:
[X1, X2, X3, …]=ndgrid(x1, x2, x3, …)
[X1, X2, X3, …]=ndgrid(x)
Griddata函数:
ZI=griddata(x, y, z, XI, YI)
[XI, YI, ZI]=griddata(x, y, z, xi, yi)
[…]=griddata(… method)
二、两种插值法分析与MATLAB应用
1.1拉格朗日插值
1.1.1基本原理
构造n次多项式Pn (x)= yk lk (x)=y0l0 (x)+y1l1 (x)+…+ynln (x),这是不超过n次的多项式,其中基函数lk(x)=
显然lk (x)满足lk (xi)=
此时 Pn(x)≈f(x),误差Rn(x)=f(x)-Pn(x)=
其中∈(a,b)且依赖于x,=(x-x0)(x-x1)…(x-xn)n=1、插值节点只有两个xk,xk+1时
P1(x)=yklk(x)+yk+1lk+1(x)
其中基函数lk(x)= lk+1(x)=
1.1.2优缺点
可对插值函数选择多种不同的函数类型,由于代数多项式具有简单和一些良好的特性,故常选用代数多项式作为插值函数。利用插值基函数很容易得到拉格朗日插值多项式,公式结构紧凑,在理论分析中甚为方便,但当插值节点增减时全部插值基函数(x)(k=0,1,…,n)均要随之变化,整个公式也将发生变化,这在实际计算中是很不方便的,为了克服这一缺点,提出了牛顿插值。M 文件:
f