分段线性插值 2

1.4分段插值 一. 分段线性插值

在每个区间 i i + 1 上,用1阶多项式 (直线) 逼近 f (x):

for x ∈[x i , x i +1]

即用折线代替曲线。设f (x )连续 一f (x ) P 1h (x ) →记 h = max | x i + 1 - x i | 易证:当 h →0 致 优点:计算简单,适用于光滑性要求不高的插值问题。

缺点:分段插值函数只能保证连续性,失去了原函数的光滑性。 二. 分段三次(Hermite )插值

不少实际插值问题不仅要求函数值相等,而且还要求导数值也相等。这就导致下面的Hermite 插值。

', ... , y n ', x 0, ... , x n ; y 0, ... , y n ; y 0

给定

[x i , x i +1]

在 上利用两端点的 y 及 y' 构造3次Hermite 函数。 [x , x ]

S 3(x 并满足: ) =y i αi (x ) +y i +1αi +1(x ) +y i βi (x ) +y i +1βi +1(x ) S 3(x i ) =y i , S 3(x i +1) =y i +1, 从而 ' ' '

S 3(x i ) =y ' i , S 3(x i +1) =y i +1.

αi (x i ) =1, αi +1(x i ) =0, βi (x i ) =0, βi +1(x i ) =0, αi (x i +1) =0, αi +1(x i +1) =1, βi (x i +1) =0, βi +1(x i +1) =0,

' ' ' α' i (x i ) =0, αi +1(x i ) =0, βi (x i ) =1, βi +1(x i ) =0,

' ' '

α' i (x i +1) =0, αi +1(x i +1) =0, βi (x i +1) =0, βi +1(x i +1) =1.

2由此条件可得: x -x i ⎫2⎛x -x i +1⎫⎛

αi (x ) = ⎪ 1+2⎪, i +1⎭i +1i ⎭⎝i ⎝

2 ⎛x -x i +1⎫

βi (x ) = ⎪(x -x i ). i +1⎭⎝i

'

'

类似可得的表达式。

下面是matlab 函数pieceline (x ,y ,u )实现分段线性插值多项式的计算。

function v=pline(x,y,u) delta=diff(y)./diff(x); n=length(x); k=ones(size(u)); for j=2:n-1

k(x(j)

s=u-x(k);

v=y(k)+s.*delta(k);

程序中,pline 是分段线性插值函数;

输入参数x ——给定的数据点的横坐标所组成的向量 Y ——给定的数据点的纵坐标所组成的向量 U ——需要计算的点所组成的向量

输出参数v ——u 所对应的分段线性插值多项式的值,即v (i )=s1(u (i )),其中s1是未来满足分段线性插值多项式

Detla 是计算差商的最后计算s 、v

1.4分段插值 一. 分段线性插值

在每个区间 i i + 1 上,用1阶多项式 (直线) 逼近 f (x):

for x ∈[x i , x i +1]

即用折线代替曲线。设f (x )连续 一f (x ) P 1h (x ) →记 h = max | x i + 1 - x i | 易证:当 h →0 致 优点:计算简单,适用于光滑性要求不高的插值问题。

缺点:分段插值函数只能保证连续性,失去了原函数的光滑性。 二. 分段三次(Hermite )插值

不少实际插值问题不仅要求函数值相等,而且还要求导数值也相等。这就导致下面的Hermite 插值。

', ... , y n ', x 0, ... , x n ; y 0, ... , y n ; y 0

给定

[x i , x i +1]

在 上利用两端点的 y 及 y' 构造3次Hermite 函数。 [x , x ]

S 3(x 并满足: ) =y i αi (x ) +y i +1αi +1(x ) +y i βi (x ) +y i +1βi +1(x ) S 3(x i ) =y i , S 3(x i +1) =y i +1, 从而 ' ' '

S 3(x i ) =y ' i , S 3(x i +1) =y i +1.

αi (x i ) =1, αi +1(x i ) =0, βi (x i ) =0, βi +1(x i ) =0, αi (x i +1) =0, αi +1(x i +1) =1, βi (x i +1) =0, βi +1(x i +1) =0,

' ' ' α' i (x i ) =0, αi +1(x i ) =0, βi (x i ) =1, βi +1(x i ) =0,

' ' '

α' i (x i +1) =0, αi +1(x i +1) =0, βi (x i +1) =0, βi +1(x i +1) =1.

2由此条件可得: x -x i ⎫2⎛x -x i +1⎫⎛

αi (x ) = ⎪ 1+2⎪, i +1⎭i +1i ⎭⎝i ⎝

2 ⎛x -x i +1⎫

βi (x ) = ⎪(x -x i ). i +1⎭⎝i

'

'

类似可得的表达式。

下面是matlab 函数pieceline (x ,y ,u )实现分段线性插值多项式的计算。

function v=pline(x,y,u) delta=diff(y)./diff(x); n=length(x); k=ones(size(u)); for j=2:n-1

k(x(j)

s=u-x(k);

v=y(k)+s.*delta(k);

程序中,pline 是分段线性插值函数;

输入参数x ——给定的数据点的横坐标所组成的向量 Y ——给定的数据点的纵坐标所组成的向量 U ——需要计算的点所组成的向量

输出参数v ——u 所对应的分段线性插值多项式的值,即v (i )=s1(u (i )),其中s1是未来满足分段线性插值多项式

Detla 是计算差商的最后计算s 、v


相关文章

  • matlab实现lagrange插值和分段线性插值
  • 数值分析作业 姓名:虞驰程 题目: 函数:f x =1+x2在[-5,5]上,取n=10,对其进行分段线性插值和拉格朗日插值,在Matlab 中实现且绘图. Matlab 实现: 首先定义函数f ,在Matlab 中用function.m ...查看


  • 分段线性插值
  • 摘要 用函数来表示变量间的数量关系广泛应用于各学科领域,但是在实际问题中,往往是通过实验.观测以及计算等方法,得到的是函数在一些点上的函数值.如何通过这些离散数据找到函数的一个满足精度要求且便于使用的近似表达式,是经常遇到的问题. 对于这类 ...查看


  • 分段线性插值 1
  • 计算实习报告 实习题目:专 业:信息与计算科学 班 级:计算 学 号: 姓 名: 2010年4月 分段线性插值 专业:信息与计算科学 一.实习目的及意义 通过计算实习掌握构造算法的基本思路和方法,及解决常见问题的基本算法,能通过计算机算法并 ...查看


  • 传感器非线性误差的修正
  • 传感器非线性误差的修正 摘 要: 传感器在采集数据时存在一定的非线性误差.要使系统的性能达到最佳,必须对传感器的非线性误差进行分析和处理.本文讨论了传感器非线性误差的几种处理方法,并对各种方法作了比较. 关键词: 非线性误差,硬件电路校正, ...查看


  • 插值算法与matlab代码
  • Matlab 中插值函数汇总和使用说明 MATLAB 中的插值函数为interp1,其调用格式为: yi= interp1(x,y,xi,'method') 其中x ,y 为插值点,yi 为在被插值点xi 处的插值结果:x,y 为向量, ' ...查看


  • 什么叫拟合?什么叫插值?二者的区别是什么?
  • 什么叫拟合?什么叫插值?二者的区别是什么? 插值和拟合都是函数逼近或者数值逼近的重要组成部分 他们的共同点都是通过已知一些离散点集M上的约束,求取一个定义 在连续集合S(M包含于S)的未知连续函数,从而达到获取整体规律的 目的,即通过&qu ...查看


  • 计算方法拉格朗日插值
  • 第二章 插值法 知识点:拉格朗日插值法,牛顿插值法,误差,龙格现象,分段插值. 1.背景 实践活动中,表现事务变化的信息往往只是一些离散点值,例如 每个6小时记录一次温度,以此反映一天的气温变化状况,如下表图 温度(.C) 34 32 30 ...查看


  • 牛顿插值法的应用
  • 牛顿插值法在处理磁化曲线和铁损曲线 中的应用 指导老师:李国霞 院系:物理工程学院 专业:物理电子学 姓名:夏委委 学号:[1**********]6 一.牛顿插值法简介 在科学研究与其他领域中所遇到的许多实际问题中,经常会出现函数不便于处 ...查看


  • 过冷奥氏体等温转变图
  • 过冷奥氏体等温转变曲线数据库的建立试验研究 (上海200030) 阮 冬 潘健生 胡明娟 [摘要] 本文用三次样条函数描述了钢的过冷奥氏体等温转变曲线,在微机上建立了TTT曲线数据库,实现了 直观,占用计算机存储空间小.并进一步用等温转变动 ...查看


热门内容