计算方法实验报告实验名称:实验1从函数表出发进行插值
专业:电气工程及其自动化
姓名:
李X
1引言
某个实际问题中,函数fx在区间ab上存在且连续,但难以找到其表达式,只能通过实验和观测得到有限点上的函数表。有些情况虽然可以写出表达式,但结构复杂,使用不方便。所以希望构造简单函数Px作为fx的近似值。插值法是解决此类问题的一种方法。
设函数y在插值区间ab上连续,且在
1个不同的插值节点a≤x0x1…x
≤b上分别取值y0y1…y
。目的是要在一个性质优良、便于计算的插值函数类Φ中,求一简单函数Px,满足插值条件Pxiyii01…
,而在其他点x≠xi上,作为fx近似值。求插值函数Px的方法称为插值法1。
2实验目的和要求
运用Matlab编写m文件,定义三种插值函数,要求一次性输入整张函数表,并利用计算机选择在插值计算中所需的节点。分别通过分段线性插值、分段二次插值和全区间上拉格朗日插值计算f,f,f的近似值。
3算法原理与流程图
(1)原理1线性插值
当给定了
1个点x0x1…x
上的函数值y0y1…y
后,若要计算x≠xi处函数值fx的近似值,可先选取两个节点xi1与xi使x∈xi1xi,然后在小区间xi1xi上作线性插值,即得
f
x
P1x
yi1
xxixi1xi
yi
xxi1xixi1
这种分段低次插值叫分段线性插值。2分段二次插值
当给定了
1个点x0x1…x
上的函数值y0y1…y
后,若要计算x≠xi处函数值fx
的近似值,可先选取距离x最近的三个节点xi1,xi与xi1,然后进行二次插值,即得
f
f
x
P2x
i1
yk
ki1
i1
ji1
jk
xxjxkxj
这种分段低次插值叫分段二次插值。
3全区间上拉格朗日插
对节点xii01…
中任一点xk0≤k≤
,作一
次多项式lkx,使它在该点上的取值为1,在其余点xii01…k1k1…
上取值为零。对应于每一节点xkk01…
,都能写出一个满足此条件的多项式,这样写出
1个多项式l0xl1x…l
x。
P
xy0l0xy1l1xy
l
x拉格朗日
次插值多项式(对于全区间上的插值,
取函数表的长度)
(2)流程图
L
x
k0
yk
xx0xxkx0xk
xk1xxk1xxk1xkxk1xk
x
x
4程序代码及注释
1分段线性插值法
分段线性插值fu
ctio
yfdxxx0y0x定义函数ple
gthy0
le
gthx0mle
gthx计算函数表和x的长度ifp
error数据输入有误,请重新输入若函数表的x与y长度不一致则输入有误else
fpri
tf分段线性插值
fort1m利用循环计算每个x的插值结果
zxtifzx01zx0
fpri
tfxd超出范围
tbrr