ch2-3分段线性插值
- 格式:ppt
- 大小:609.00 KB
- 文档页数:30


目 录
任务描述及要求....................................................................................................................... 3
1 算法设计方案....................................................................................................................... 4
1.1 总算法概述 ................................................................................................................ 4
1.2 插值区间规整化 ........................................................................................................ 4
1.3 多项式牛顿插值 ........................................................................................................ 5
1.4 三次样条插值 ............................................................................................................ 5
2 全部源程序........................................................................................................................... 7
1 实验报告
实验项目 插值法 实验日期 2016/9/30
理论内容 分段线性插值与三次样条插值 授课日期 2016/9/0
实验室名称 文理管203 微机编号 E1
实验目的及要求:
1、学会常用的插值方法,求函数的近似表达式,以解决其它实际问题;
2、明确插值多项式和分段插值多项式各自的优缺点;
3、熟悉插值方法的程序编制;如果绘出插值函数的曲线,观察其光滑性。
实验内容:
编写分段线性插值法及三次样条插值法通用子程序,依据数据表
ix 2.0 2.1 2.2 2.3 2.4
ix 1.414214 1.449138 1.483340 1.516575 1.549193
构造相应的插值多项式,并计算函数xxf)(在15.2x的近似值。
2 实验步骤及程序:
1、分段线性插值法流程图
是 否 是 输入xi,yi, i=1,⋯,n 及x
ia⟵1,ib⟵n
ib−ia>1?
im⟵ia+ib2的整数部分
xm<𝑥?
ia⟵im ib⟵im 执行求拉格朗日插值的程序,计算以ia,ib为节点的线性插值函数在插值点的函数值P1 x
输出p1(𝑥) 否
3 2、分段线性插值法源程序:
function [f] = fenduan(~,~,~,~)
x=[2.0 2.1 2.2 2.3 2.4];
y=[1.414214 1.449138 1.483340 1.516575 1.549193];
y_1=0.5*y.^(-0.5);
x0=2.15;
f = 0.0;
if(length(x) == length(y))
if(length(y) == length(y_1))
n = length(x);
else
disp('y和y的导数的维数不相等!');
return;
end
else
disp('x和y的维数不相等!');
数值分析实验报告
专业:计算机科学与技术
班级:14汉(2)
学号:***********
姓名:***
指导教师:马季骕老师
实验项目 分段线性插值
算法介绍
随着插值节点的增加,插值多项式的次数也增加,而对于高次的插值容易带来剧烈的震荡,带来数值的不稳定(Runge现象)。为了既要增加插值的节点,减小插值的区间,以便更好的逼近插值函数,又要不增加插值多项式的次数以减少误差,可采用分段线性插值。
求一个函数(x)用来近似函数f(x),用分段线性插值的方法来求解近似函数(x)并画出近似函数图像及原函数图像。
设在区间[a,b]上,给定n+1个插值节点bxxxxan...210和相应的函数值nyyy,...,,10,求一个插值函数)(x,满足以下条件:
(1)),...,2,1,0()(njyxjj;
(2))(x在每一个小区间[1,jjxx]上是线性函数。
对于给定函数11-,2511)(2xxxf。在区间11-,上画出f(x)和分段线性插值函数)(x的函数图像。
分段线性插值的算法思想 分段线性插值需要在每个插值节点上构造分段线性插值基函数,然后再作它们的线性组合。分段线性插值基函数的特点是在对应的插值节点上函数值取 1,其它节点上函数值取0。插值基函数如下:
其它 ,0,)(101010xxxxxxxxl其它 ,0,,)(111111jjjjjjjjjjjxxxxxxxxxxxxxxxl
其它 ,0,)(111nnnnnnxxxxxxxxl
设在节点a≤x0
(1)L(x)∈C[a,b]
(2)L(x[i]=y[i])
(3)L(x)在每个小区间(x[i],x[i+1])上是线性
山东师范大学数学科学学院实验报告
实验课程: 数值分析引论 实验项目: 埃尔米特插值、龙格现象
姓名: XXX 学号: 2015080401XX 班级: XXX
班 专业:
数学与应用数学
指导教师: XX 完成日期: 2017/10/27
实验目的
1、Hermite插值法的matlab实现;用Hermite插值程序进行插值计算。
2、验证高次插值的Runge现象,比较Language插值、分段线性插值、分段三
次Hermie插值。
实验内容:
一、Hermite插值法
问题分析和算法设计
Hermite插值
已知
)(xfy
函数
))(f,(
iixx,导函数
))(f,(
iixx,
),,1,0(ni
,对给定
),(baz
计算
)(zf近似值,即
)(zP
n,结果存放在
P内。
1.输入:
),,0)((),(),(,,niiyiyixxn
2.对于
nj
,,2,1
(1)对于
ni
,,2,1
1) 若i=j
① Continue
2) 若i≠j
①
))()(/())((L(j)L(j)ixjxixx
② Continue
(2)Continue
3.对于
nj
,,2,1
(1)
2
)())((beta(j)jLjxx
(2)Continue
4.对于
nj
,,2,1
(1)对于
ni
,,2,1
1) 若i=j
① Continue
2) 若i≠j
①
))()(/(1A(j)A(j)ixjx
② Continue
(2)Continue
5.对于
nj
,,2,1
(1)
2
)(A(j))y(j))-x(2-1(alpha(j)jL
(2)Continue
6. 对于
nj
,,2,1
(1)
)()()()((PjyjbetajyjalphaP
(2)Continue
7.输出
P
主要程序代码
function [H] = Hermite(X,x)