文档库 最新最全的文档下载
当前位置:文档库 › 插值法应用实例

插值法应用实例

插值法应用实例
插值法应用实例

用插值法解决实际问题

1. 题目背景及数据和要求:

例:测得平板表面3*5网格点处的温度分别为:

82 81 80 82 84

79 63 61 65 81

84 84 82 85 86

试作出平板表面的温度分布曲面z=f(x,y)的图形。

2.源程序和运行结果

(1)先在三维坐标画出原始数据,画出粗糙的温度分布曲图.

在matlab中输入以下命令:

x=1:5;

y=1:3;

temps=[82 81 80 82 84;79 63 61 65 81;84 84 82 85 86];

mesh(x,y,temps)

得到图像如下:

(2).以平滑数据,在x、y方向上每隔0.2个单位的地方进行插值.

再输入以下命令:

xi=1:0.2:5;

yi=1:0.2:3;

zi=interp2(x,y,temps,xi',yi,'cubic');

m esh(xi,yi,zi)

画出插值后的温度分布曲面图.

插值法在现实生活中应用极广,因此,熟练掌握插值法和matlab极为重要。

样条插值函数与应用

样条插值函数及应用

摘要 样条函数具有广泛的应用,是现代函数论的一个十分活跃的分支,是计算方法的主要基础和工具之一,由于生产和科学技术向前发展的推动以及电子计算机广泛应用的需要,人们便更多地应用这个工具,也更深刻的认识了它的本质。 在实际问题中所遇到许多函数往往很复杂,有些甚至是很难找到解析表达式的。根据函数已有的数据来计算函数在一些新的点处的函数值,就是插值法所需要解决的问题。 插值法是数值逼近的重要方法之一,它是根据给定的自变量值和函数值,求取未知函数的近似值。早在一千多年前,我国科学家就在研究历法时就用到了线性插值和二次插值。而在实际问题中,有许多插值函数的曲线要求具有较高的光滑性,在整个曲线中,曲线不但不能有拐点,而且曲率也不能有突变。因此,对于插值函数必须二次连续可微且不变号 ,这就需要用到三次样条插值。 关键词三次样条函数;插值法

目录 引言 0 第一章三次样条插值 (1) 1.1 样条插值函数简介 (1) 1.2 三次样条函数应用 (2) 第二章AMCM91A 估计水塔水流量 (4) 2.1 理论分析及计算 (5) 2.2运用MATLAB软件计算 (8) 参考文献 (13)

引言 样条函数具有广泛的应用,是现代函数论的一个十分活跃的分支,是计算方法的主要基础和工具之一,由于生产和科学技术向前发展的推动以及电子计算机广泛应用的需要,人们便更多地应用这个工具,也更深刻的认识了它的本质。上世纪四十年代,在研究数据处理的问题中引出了样条函数,例如,在1946年Schoenberg将样条引入数学,即所谓的样条函数,直到五十年代,还多应用于统计数据的处理方面,从六十年代起,在航空、造船、汽车等行业中,开始大量采用样条函数。 在我国,从六十年代末开始,从船体数学放样到飞机外形设计,逐渐出现了一个使用样,逐渐出现了一个使用样条函数的热潮,并推广到数据处理的许多问题中。 在实际生活中有许多计算问题对插值函数的光滑性有较高的要求,例如飞机机翼外形、发动机进、排气口都要求有连续的二阶导数,用三次样条绘制的曲线不仅有很好的光滑度,而且当节点逐渐加密时其函数值整体上能很好地逼近被插函数,相应的导数值也收敛于被插函数的导数值,不会发生“龙格现象”。 现在国内外学者对这方面的研究也越来越重视,根据我们的需要来解决不同的问题,而且函数的形式也在不断地改进,长期以来很多学者致力于样条插值的研究,对三次样条的研究已相当成熟。

常见的插值方法及其原理

常见的插值方法及其原理 这一节无可避免要接触一些数学知识,为了让本文通俗易懂,我们尽量绕开讨厌的公式等。为了进一步的简化难度,我们把讨论从二维图像降到一维上。 首先来看看最简单的‘最临近像素插值’。 A,B是原图上已经有的点,现在我们要知道其中间X位置处的像素值。我们找出X位置和A,B位置之间的距离d1,d2,如图,d2要小于d1,所以我们就认为X处像素值的大小就等于B处像素值的大小。 显然,这种方法是非常苯的,同时会带来明显的失真。在A,B中点处的像素值会突然出现一个跳跃,这就是为什么会出现马赛克和锯齿等明显走样的原因。最临近插值法唯一的优点就是速度快。 图10,最临近法插值原理 接下来是稍微复杂点的‘线性插值’(Linear) 线性插值也很好理解,AB两点的像素值之间,我们认为是直线变化的,要求X点处的值,只需要找到对应位置直线上的一点即可。换句话说,A,B间任意一点的值只跟A,B有关。由于插值的结果是连续的,所以视觉上会比最小临近法要好一些。线性插值速度稍微要慢一点,但是效果要好不少。如果讲究速度,这是个不错的折衷。 图11,线性插值原理

其他插值方法 立方插值,样条插值等等,他们的目的是试图让插值的曲线显得更平滑,为了达到这个目的,他们不得不利用到周围若干范围内的点,这里的数学原理就不再详述了。 图12,高级的插值原理 如图,要求B,C之间X的值,需要利用B,C周围A,B,C,D四个点的像素值,通过某种计算,得到光滑的曲线,从而算出X的值来。计算量显然要比前两种大许多。 好了,以上就是基本知识。所谓两次线性和两次立方实际上就是把刚才的分析拓展到二维空间上,在宽和高方向上作两次插值的意思。在以上的基础上,有的软件还发展了更复杂的改进的插值方式譬如S-SPline, Turbo Photo等。他们的目的是使边缘的表现更完美。

对样条函数及其插值问题的一点认识

对样条函数及其插值问题的一点认识 样条函数是计算数学以及计算机辅助设计几何设计的重要工具。1946年,I. J. Schoenberg 著名的关于一元样条函数的奠定性论文“Contribution to the problem of application of equidistant data by analytic functions ”发表,建立了一元样条函数的理论基础。自此以后,关于样条函数的研究工作逐渐深入。随着电子计算机技术的不断进步,样条函数的理论以及应用研究得到迅速的发展和广泛的应用。经过数学工作者的努力,已经形成了较为系统的理论体系。 所谓(多项式)样条函数,乃指具有一定光滑性的分段(分片)多项式。一元n 次且n -1阶连续可微的样条函数具有如下的表示式: 1()()()()N n n j j j s x p x c x x x +==+--∞<<+∞∑[] 011,00,01,,...,,(1),...,(),,...,,n n n n N n N N u un u u u u x x x x x S x x x x ++++ +≥??=??

几种常用的插值方法

几种常用的插值方法 数学系 信息与计算科学1班 李平 指导老师:唐振先 摘要:插值在诸如机械加工等工程技术和数据处理等科学研究中有许多直接的应用,在很多领域都要用插值的办法找出表格和中间值,插值还是数值积分微分方程数值解等数值计算的基础。本文归纳了几种常用的插值方法,并简单分析了其各自的优缺点。 关键词:任意阶多项式插值,分段多项式插值。 引言:所谓插值,通俗地说就是在若干以知的函数值之间插入一些未知函数值,而插值函数的类型最简单的选取是代数多项式。用多项式建立插值函数的方法主要用两种:一种是任意阶的插值多项式,它主要有三种基本的插值公式:单项式,拉格朗日和牛顿插值;另一种是分段多项式插值,它有Hermite 和spine 插值和分段线性插值。 一.任意阶多项式插值: 1.用单项式基本插值公式进行多项式插值: 多项式插值是求通过几个已知数据点的那个n-1阶多项式,即P n-1(X)=A 1+A 2X+…A n X n-1,它是一个单项式基本函数X 0,X 1…X n-1的集合来定义多项式,由已知n 个点(X,Y )构成的集合,可以使多项式通过没数据点,并为n 个未知系数Ai 写出n 个方程,这n 个方程组成的方程组的系数矩阵为Vandermonde 矩阵。 虽然这个过程直观易懂,但它都不是建立插值多项式最好的办法,因为Vandermonde 方程组有可能是病态的,这样会导致单项式系数不确定。另外,单项式中的各项可能在大小上有很大的差异,这就导致了多项式计算中的舍入误差。 2.拉格朗日基本插值公式进行插值: 先构造一组插值函数L i (x ) =011011()()()() ()()()() i i n i i i i i i n x x x x x x x x x x x x x x x x -+-+--------L L L L ,其中i=0,… n.容易看出n 次多项式L i (x )满足L i (x )=1,(i=j );L i (x )=0,(i ≠j ),其中

Matlab中插值函数汇总和使用说明.

告: Matlab中插值函数汇总和使用说明收藏 命令1 interp1 功能一维数据插值(表格查找。该命令对数据点之间计算内插值。它找出一元函数f(x在中间点的数值。其中函数f(x由所给数据决定。x:原始数据点 Y:原始数据点 xi:插值点 Yi:插值点 格式 (1yi = interp1(x,Y,xi 返回插值向量yi,每一元素对应于参量xi,同时由向量x 与Y 的内插值决定。参量x 指定数据Y 的点。 若Y 为一矩阵,则按Y 的每列计算。yi 是阶数为length(xi*size(Y,2的输出矩阵。 (2yi = interp1(Y,xi 假定x=1:N,其中N 为向量Y 的长度,或者为矩阵Y 的行数。 (3yi = interp1(x,Y,xi,method 用指定的算法计算插值: ’nearest’:最近邻点插值,直接完成计算; ’linear’:线性插值(缺省方式,直接完成计算;

’spline’:三次样条函数插值。对于该方法,命令interp1 调用函数spline、ppval、mkpp、umkpp。这些命令生成一系列用于分段多项式操作的函 数。命令spline 用它们执行三次样条函数插值; ’pchip’:分段三次Hermite 插值。对于该方法,命令interp1 调用函数p chip,用于对向量x 与y 执行分段三次内插值。该方法保留单调性与数据的外形; ’cubic’:与’pchip’操作相同; ’v5cubic’:在MATLAB 5.0 中的三次插值。 对于超出x 范围的xi 的分量,使用方法’nearest’、’linear’、’v5cubic’的插值算法,相应地将返回NaN。对其他的方法,interp1 将对超出的分量执行外插值算法。 (4yi = interp1(x,Y,xi,method,'extrap' 对于超出x 范围的xi 中的分量将执行特殊的外插值法extrap。 (5yi = interp1(x,Y,xi,method,extrapval 确定超出x 范围的xi 中的分量的外插值extrapval,其值通常取NaN 或0。 例1 1.>>x = 0:10; y = x.*sin(x; 2.>>xx = 0:.25:10; yy = interp1(x,y,xx; 3.>>plot(x,y,'kd',xx,yy 复制代码 例2 1.>> year = 1900:10:2010;

插值法在管理决策中的应用及其Matlab实现

插值法在管理决策中的应用及其Matlab实现 张英俊,孙大宁*,张亚娟 (北方工业大学理学院,北京100144) 摘 要:利用插值曲线,即三次样条插值和立方插值法来比较分析随机网络评审法中两个随机变量之间的相关 性.经分析表明,立方插值不仅是分析相关性的实用曲线工具,而且利用Matlab所构造的函数有足够的光滑性、平顺性,且图像在考察变量的相关性时具有直观性的优点,因此对它的应用研究非常有价值. 关键词:插值 Matlab程序相关性 中图分类号:O29;TB115文献标识码:A文章编号:1674-0874(2008)03-0040-03 收稿日期:2008-01-15 作者简介:张英俊(1982-),女,山西平遥人,在读硕士,研究方向:风险决策;*孙大宁,男,教授,通讯作者. 随机网络评审法是基于随机网络和计算机仿真的一种随机型的定量评估方法,它是以风险评审技术(简称VERT)为基础的,VERT是一种计算机仿真技术,它把网络理论,仿真原理和概率论综合起来,其特点之一就是在各种信息不完全,不充分和不肯定的情况下,对各种工程系统和工程项目的发展计划有关的时间T(周期或工作量),费用C(耗费、成本或投入),功能P(性能、效益或输出等)三种指标来描述,从而描述决策分析对象应达到的目标.一般情况下,在进行风险决策分析时为了有利于模型的建立和使分析计算工作更快更有效,我们需要对网络中各个节点上相应随机参数的频数直方图以及3个参数中任意两者之间的相关性进行分析.在处理我国飞机预研计划这一课题发展起来的 SNSS系统是采用Fortran77语言编写的[1],以卡片形式进行输入输出的,在输出直方图以及进行时间、 费用、效益三者中任两者之间相互关系的计算上不是很直观、很简洁.其实两个随机参数之间的这种函数关系,在数值分析中有许多的方法可以求得,但是哪种方法能更直观、更合乎实际地给出反映这种相关性的平滑曲线呢?本文所选的插值方法能够较好地满足这一要求. 1插值方法的选择及其数学原理 插值是已知某函数在若干离散点上的函数值或者导数信息,通过求解该函数中待定形式的插值函数以及待定系数,使得该函数在给定离散点上满足约束.也即要求通过平面上已知n个点(xi,yi),i= 1,2,…,n作一条光滑的曲线,完成这项工作的方 法有多种,如拉格朗日插值、埃尔米特插值和分段 插值等.实际表明,拉格朗日插值和埃尔米特插值函数对于数据较多且具有随机性的变量相关性分析,做一个高次插值多项式是不理想的,因为它带有近似性,且计算也相当复杂.而分段插值是克服高次插值的Runge现象而提出的,只能保证曲线的连续性,却不能保证曲线的光滑性.但是在生产和科学实验中,对所做的插值曲线既要简单,又要在曲线的连接处比较光滑,即所作的分段插值函数在分段上要求多项式次数低,而在节点上不仅连续,还存在连续的低阶导数,我们把满足这样条件的插值函数,称为样条插值函数,它所对应的曲线称为样条曲线,其节点称为样点,这种插值方法称为样条插值[2]. 2 应用举例 2.1 资料说明 某企业的领导和管理者,得知与其竞争的另一 企业正在研制一种新产品,一旦这种新产品研制成功,将给另一企业带来销售市场上的绝对优势,如 第24卷第3期山西大同大学学报(自然科学版) Vol.24.No.32008年6月 JournalofShanxiDatongUniversity(NaturalScience) Jun.2008

三次样条插值方法的应用

CENTRAL SOUTH UNIVERSITY 数值分析实验报告

三次样条插值方法的应用 一、问题背景 分段低次插值函数往往具有很好的收敛性,计算过程简单,稳定性好,并且易于在在电子计算机上实现,但其光滑性较差,对于像高速飞机的机翼形线船体放样等型值线往往要求具有二阶光滑度,即有二阶连续导数,早期工程师制图时,把富有弹性的细长木条(即所谓的样条)用压铁固定在样点上,在其他地方让他自由弯曲,然后沿木条画下曲线,称为样条曲线。样条曲线实际上是由分段三次曲线并接而成,在连接点即样点上要求二阶导数连续,从数学上加以概括就得到数学样条这一概念。下面我们讨论最常用的三次样条函数及其应用。 二、数学模型 样条函数可以给出光滑的插值曲线(面),因此在数值逼近、常微分方程和偏微分方程的数值解及科学和工程的计算中起着重要的作用。 设区间[]b ,a 上给定有关划分b x x n =<<<= 10x a ,S 为[]b ,a 上满足下面条件的函数。 ● )(b a C S ,2∈; ● S 在每个子区间[]1,+i i x x 上是三次多项式。 则称S 为关于划分的三次样条函数。常用的三次样条函数的边界条件有三种类型: ● Ⅰ型 ()()n n n f x S f x S ''0'',==。 ● Ⅱ型 ()()n n n f x S f x S ''''0'''',==,其特殊情况为()()0''''==n n x S x S 。 ● Ⅲ型 ()() 3,2,1,0,0==j x S x S n j j ,此条件称为周期样条函数。 鉴于Ⅱ型三次样条插值函数在实际应用中的重要地位,在此主要对它进行详细介绍。 三、算法及流程 按照传统的编程方法,可将公式直接转换为MATLAB 可是别的语言即可;另一种是运用矩阵运算,发挥MATLAB 在矩阵运算上的优势。两种方法都可以方便地得到结果。方法二更直观,但计算系数时要特别注意。这里计算的是方法一的程序,采用的是Ⅱ型边界条件,取名为spline2.m 。 Matlab 代码如下: function s=spline2(x0,y0,y21,y2n,x) %s=spline2(x0,y0,y21,y2n,x) %x0,y0 are existed points,x are insert points,y21,y2n are the second

五种插值法的对比研究开题报告

五种插值法的对比研究 1. 选题依据 1.1 选题背景 插值法是一种古老的数学方法,插值法历史悠久。据考证,在公元六世纪时, 我国焯(zhuo) 已经把等距二次插值法应用于天文计算。十七世纪时,Newton 和 Gregory(格雷格里) 建立了等距节点上的一般插值公式,十八世纪时,Lagrange(拉格朗日) 给出了更一般的非等距节点插值公式。 而它的基本理论是在微积分产生以后逐渐完善的,它的实际应用也日益增多,特别是在计算机工程中。许多库函数的计算实际上归结于对逼近函数的计算。 1.2 研究的目的和意义 插值法是数值分析中最基本的方法之一。 在实际问题中碰到的函数是各种各样的,有的甚至给不出表达式,只提供了一些离散数据,例如,在查对数表时, 要查的数据在表中找不到,就先找出它相邻的数,再从旁边找出它的修正值, 按一定关系把相邻的数加以修正,从而找出要找的数,这种修正关系实际上就是一种插值。 在实际应用中选用不同类型的插值函数,逼近的效果也不同。在数值计算方法中,我们学习过五种基本的插值方法,即Lagrange 插值、Newton 插值、分段线性插值、分段三次Hermite 插值、样条插值函数。所以通过从这五种插值法的基本思想、特征、性质和具体实例入手,探讨五种插值法的优缺点和适用围,让学习者能够迅速而准确的解决实际问题,掌握插值法的应用。 2. 研究的方法 从具体实例入手并结合Matlab 在科学计算中的优势,通过实验对它们的精度和效率进行比较分析。 3. 论文结构 3.1 论文的总体结构 第一部分 导言 主要介绍选题的背景、目的及意义、研究现状、文献综述等。 第二部分 五种插值法的基本思想、性质及特点 在数值计算方法中,插值法是计算方法的基础,数值微分、数值积分和微分方程数值解都建立在此基础上。 插值问题的提法是:已知f(x)(可能未知或非常复杂函数)在彼此不同的n+1 个实点0x ,1x ,…n x 处的函数值是f(0x ),f(1x ),…,f(n x ),这时我们简单的说f(x)有n+1 个 离散数据对0n i i )}y ,{(x i .要估算f(x)在其它点x 处的函数值,最常见的一种办法就是插 值,即寻找一个相对简单的函数y(x),使其满足下列插值条件:y(i x )=f(i x ),i=0,1,…,n.,并以y(x)作为f(x)的近似值.其中y(x)称为插值函数,f(x)称为被插函数。

三次样条插值作业题

例1 设)(x f 为定义在[0,3]上的函数,有下列函数值表: 且2.0)('0=x f ,1)('3-=x f ,试求区间[0,3]上满足上述条件的三次样条插值函数)(x s 本算法求解出的三次样条插值函数将写成三弯矩方程的形式: ) ()6()() 6()(6)(6)(211123 13 1j j j j j j j j j j j j j j j j x x h h M y x x h h M y x x h M x x h M x s -- + -- + -+ -= +++++其中,方程中的系数 j j h M 6, j j h M 61+,j j j j h h M y )6(2- , j j j j h h M y ) 6(211++- 将由Matlab 代码中的变量Coefs_1、Coefs_2、Coefs_3以及Coefs_4的值求出。 以下为Matlab 代码: %============================= % 本段代码解决作业题的例1 %============================= clear all clc % 自变量x 与因变量y ,两个边界条件的取值 IndVar = [0, 1, 2, 3]; DepVar = [0, 0.5, 2, 1.5]; LeftBoun = 0.2; RightBoun = -1; % 区间长度向量,其各元素为自变量各段的长度 h = zeros(1, length(IndVar) - 1); for i = 1 : length(IndVar) - 1 h(i) = IndVar(i + 1) - IndVar(i); end % 为向量μ赋值

关于三次样条插值函数的学习报告(研究生)资料

学习报告—— 三次样条函数插值问题的讨论 班级:数学二班 学号:152111033 姓名:刘楠楠

样条函数: 由一些按照某种光滑条件分段拼接起来的多项式组成的函数;最常用的样条函数为三次样条函数,即由三次多项式组成,满足处处有二阶连续导数。 一、三次样条函数的定义: 对插值区间[,]a b 进行划分,设节点011n n a x x x x b -=<< <<=,若 函数2()[,]s x c a b ∈在每个小区间1[,]i i x x +上是三次多项式,则称其为三次样条函数。如果同时满足()()i i s x f x = (0,1,2)i n =,则称()s x 为()f x 在 [,]a b 上的三次样条函数。 二、三次样条函数的确定: 由定义可设:101212 1(),[,] (),[,]()(),[,] n n n s x x x x s x x x x s x s x x x x -∈??∈?=???∈?其中()k s x 为1[,]k k x x -上的三次 多项式,且满足11(),()k k k k k k s x y s x y --== (1,2,,k n = 由2()[,]s x C a b ∈可得:''''''()(),()(),k k k k s x s x s x s x -+-+== 有''1()(),k k k k s x s x -++= ''''1()(),(1 ,2,,1)k k k k s x s x k n -+ +==-, 已知每个()k s x 均为三次多项式,有四个待定系数,所以共有4n 个待定系数,需要4n 个方程才能求解。前面已经得到22(1)42n n n +-=-个方程,因此要唯一确定三次插值函数,还要附加2个条件,一般上,实际问题通常对样条函数在端点处的状态有要求,即所谓的边界条件。 1、第一类边界条件:给定函数在端点处的一阶导数,即 ''''00(),()n n s x f s x f == 2、第二类边界条件:给定函数在端点处的二阶导数,即

常见插值方法及其介绍

常见插值方法及其介绍 Inverse Distance to a Power(反距离加权 插值法)”、 “Kriging(克里金插值法)”、 “Minimum Curvature(最小曲率)”、 “Modified Shepard's Method(改进谢别德法)”、 “Natural Neighbor(自然邻点插值法)”、 “Nearest Neighbor(最近邻点插值法)”、 “Polynomial Regression(多元回归法)”、 “Radial Basis Function(径向基函数法)”、 “Triangulation with Linear Interpolation(线性插值三角网法)”、 “Moving Average(移动平均法)”、 “Local Polynomial(局部多项式法)” 1、距离倒数乘方法 距离倒数乘方格网化方法是一个加权平均插值法,可以进行确切的或者圆滑的方式插值。方次参数 控制着权系数如何随着离开一个格网结点距离的增加而下降。对于一个较大的方次,较近的数据点被 给定一个较高的权重份额,对于一个较小的方次,权重比较均匀地分配给各数据点。 计算一个格网结点时给予一个特定数据点的权值与指定方次的从结点到观测点的该结点被赋予距 离倒数成比例。当计算一个格网结点时,配给的权重是一个分数,所有权重的总和等于1.0。当一个 观测点与一个格网结点重合时,该观测点被给予一个实际为 1.0 的权重,所有其它观测点

被给予一 个几乎为0.0 的权重。换言之,该结点被赋给与观测点一致的值。这就是一个准确插值。 距离倒数法的特征之一是要在格网区域内产生围绕观测点位置的"牛眼"。用距离倒数格网化时可 以指定一个圆滑参数。大于零的圆滑参数保证,对于一个特定的结点,没有哪个观测点被赋予全部的 权值,即使观测点与该结点重合也是如此。圆滑参数通过修匀已被插值的格网来降低"牛眼"影响。 2、克里金法 克里金法是一种在许多领域都很有用的地质统计格网化方法。克里金法试图那样表示隐含在你的数 据中的趋势,例如,高点会是沿一个脊连接,而不是被牛眼形等值线所孤立。 克里金法中包含了几个因子:变化图模型,漂移类型和矿块效应。 3、最小曲率法 最小曲率法广泛用于地球科学。用最小曲率法生成的插值面类似于一个通过各个数据值的,具有最 小弯曲量的长条形薄弹性片。最小曲率法,试图在尽可能严格地尊重数据的同时,生成尽可能圆滑的 曲面。 使用最小曲率法时要涉及到两个参数:最大残差参数和最大循环次数参数来控制最小曲率的收敛 标准。 4、多元回归法 多元回归被用来确定你的数据的大规模的趋势和图案。你可以用几个选项来确定你需要的趋势面类 型。多元回归实际上不是插值器,因为它并不试图预测未知的Z 值。它实际上是一个趋势面分析作

几种常用的插值方法

数学系 信息与计算科学1班 李平 指导老师:唐振先 摘要:插值在诸如机械加工等工程技术和数据处理等科学研究中有许多直接的应用,在很多领域都要用插值的办法找出表格和中间值,插值还是数值积分微分方程数值解等数值计算的基础。本文归纳了几种常用的插值方法,并简单分析了其各自的优缺点。 关键词:任意阶多项式插值,分段多项式插值。 引言:所谓插值,通俗地说就是在若干以知的函数值之间插入一些未知函数值,而插值函数的类型最简单的选取是代数多项式。用多项式建立插值函数的方法主要用两种:一种是任意阶的插值多项式,它主要有三种基本的插值公式:单项式,拉格朗日和牛顿插值;另一种是分段多项式插值,它有Hermite 和spine 插值和分段线性插值。 一.任意阶多项式插值: 1.用单项式基本插值公式进行多项式插值: 多项式插值是求通过几个已知数据点的那个n-1阶多项式,即P n-1(X)=A 1+A 2X+…A n X n-1,它是一个单项式基本函数X 0,X 1…X n-1的集合来定义多项式,由已知n 个点(X,Y )构成的集合,可以使多项式通过没数据点,并为n 个未知系数Ai 写出n 个方程,这n 个方程组成的方程组的系数矩阵为Vandermonde 矩阵。 虽然这个过程直观易懂,但它都不是建立插值多项式最好的办法,因为Vandermonde 方程组有可能是病态的,这样会导致单项式系数不确定。另外,单项式中的各项可能在大小上有很大的差异,这就导致了多项式计算中的舍入误差。 2.拉格朗日基本插值公式进行插值: 先构造一组插值函数L i (x ) =011011()()()() ()()()() i i n i i i i i i n x x x x x x x x x x x x x x x x -+-+--------,其中i=0,… n.容易看出n 次多项式L i (x )满足L i (x )=1,(i=j );L i (x )=0,(i ≠j ),其中i=0,1…n ,令L i (x )=0()n i i i y l x =∑这就是拉格朗日插值多项式。与单项式基本 函数插值多项式相比,拉格朗日插值有2个重要优点:首先,建立插值多项式不需要求解方程组;其次,它的估计值受舍入误差要小得多。拉格朗日插值公式结构

数值分析作业-三次样条插值

数值计算方法作业 实验4.3 三次样条差值函数 实验目的: 掌握三次样条插值函数的三弯矩方法。 实验函数: dt e x f x t ? ∞ -- = 2 221)(π 实验内容: (1) 编程实现求三次样条插值函数的算法,分别考虑不同的边界条件; (2) 计算各插值节点的弯矩值; (3) 在同一坐标系中绘制函数f(x),插值多项式,三次样条插值多项式的曲线 比较插值结果。 实验4.5 三次样条差值函数的收敛性 实验目的: 多项式插值不一定是收敛的,即插值的节点多,效果不一定好。对三次样条插值函数如何呢?理论上证明三次样条插值函数的收敛性是比较困难的,通过本实验可以证明这一理论结果。 实验内容: 按照一定的规则分别选择等距或非等距的插值节点,并不断增加插值节点的个数。 实验要求: (1) 随着节点个数的增加,比较被逼近函数和三样条插值函数的误差变化情 况,分析所得结果并与拉格朗日插值多项式比较; (2) 三次样条插值函数的思想最早产生于工业部门。作为工业应用的例子,考

虑如下例子:某汽车制造商根据三次样条插值函数设计车门曲线,其中一 算法描述: 拉格朗日插值: 错误!未找到引用源。 其中错误!未找到引用源。是拉格朗日基函数,其表达式为:() ∏ ≠=--=n i j j j i j i x x x x x l 0) ()( 牛顿插值: ) )...()(](,...,,[.... ))(0](,,[)0](,[)()(1102101210100----++--+-+=n n n x x x x x x x x x x f x x x x x x x f x x x x f x f x N 其中????? ?? ?? ?????? --=--= --= -)/(]),...,[],...,[(]...,[..],[],[],,[)()(],[01102110x x x x x f x x x f x x x f x x x x f x x f x x x f x x x f x f x x f n n n n i k j i k j k j i j i j i j i 三样条插值: 所谓三次样条插值多项式Sn(x)是一种分段函数,它在节点Xi(a

插值法的分类与应用

插值法的方法与应用 武汉科技大学城市建设学院 琚婷婷 结构工程 201108710014 【摘要】文章讨论插值法在数值分析中的中心地位和重要作用,比较插值法间的优缺点,应用以及各种方法之间的相互联系。 【关键词】插值法;应用。 1.插值问题的提出 在许多实际问题及科学研究中,因素之间往往存在着函数关系,但是这些关系的显示表达式不一定都知道,通常只是由观察或测试得到一些离散数值,所以只能从这些数据构造函数的近似表达式,有时虽然给出了解析表达式,但由于解析表达式过于复杂,使用或计算起来十分麻烦。这就需要建立函数的某种近似表达,而插值法就是构造函数的近似表达式的方法。 2.插值法的数学表达 由于代数多项式是最简单而又便于计算的函数,所以经常采用多项式作为插值函数,称为多项式插值。多项式插值法有拉格朗日插值法,牛顿插值法、埃尔米特插值法,分段插值法和样条插值法等。其基本思想都是用高次代数多项式或分段的低次多项式作为被插值函数f (x)的近似解析表达式。 3.常用多项式插值公式构造 (I)拉格朗日插值 n 次拉格朗日插值多项式p n (x)对可表示为 p n (x)= y i l i (x)n i=0= y i ( x ?x j x i ?x j n j ≠0i ≠j n i=0) 其中l i x ,i =0,1,2???,n 称为插值基函数,插值余项为: R n (x)= f (x)- p n (x)=f n +1 (ξ) n+1 ! (x ?x i )n i=0 拉格朗日插值多项式在理论分析中非常方便,因为它的结构紧凑,利用基函

数很容易推导和形象的描述算法,但是也有一些缺点,当插值节点增加、减少或其位置变化时,整个插值多项式的结构都会改变,这就不利于实际计算,增加了算法复杂度,此时我们通常采用牛顿插值多项式算法。 (2)牛顿插值多项式 牛顿插值多项式为 N(x)=f(x0)+f x0,x1(x?x0)++???+f[x0,x1,???,x n](x?x0)(x?x1)???(x?x n?1)用它插值时,首先要计算各阶差商,而各高阶差商可归结为一阶差商的逐次计算。一般情况讨论的插值多项式的节点都是任意分布的,但是在实际应用中,出现了很多等距节点的情形,这时的插值公式可以进一步简化,在牛顿均差插值多项式中各阶均差用相应的差分代替,就得到了各种形式的等距节点插值公式,常用的是牛顿前插与后插公式。 (3)分段插值 在整个插值区间上,随着插值节点的增多,插值多项式的次数必然增高,而高次插值会产生Runge现象,不能有效的逼近被插函数,人们提出用分段的低次多项式分段近似被插函数,这就是分段插值法。构造分段插值多项式的方法仍然是基函数法,即先在每个插值节点上构造分段线性插值基函数,再对基函数作线性组合。它的优点在于只要节点间距充分小,总能获得所要求的精度,即收敛性总能得到保证,另一优点是它的局部性质,即如果修改某个数据,那么插值曲线仅仅在某个局部范围内受到影响。 (4)Hermite插值 分段线性插值的算法简单,计算量小,然而从整体上看,逼近函数不够光滑,在节点处,逼近函数的左右导数不相等,若要求逼近函数与被逼近函数不仅在插值节点上取相同的函数值,而且还要求逼近函数与被逼近函数在插值节点上取相同的若干阶导数值,这类问题称为Hermite插值。 (5)样条插值 通常我们用到的分段三次埃尔米特插值构造的是一个整体上具有一阶光滑性的插值多项式,但在实际中,对光滑性的要求更高。如飞机外形的理论模型,舶体放样等型值线等常要求有二阶的光滑度。工程上常用的是3次样条函数s(x)。其基本思想是将插值区间n等分后,在每一个小区间上,采用分段3次Hermite

三次样条插值的MATLAB实现

MATLAB 程序设计期中考查 在许多问题中,通常根据实验、观测或经验得到的函数表或离散点上的信息,去研究分析函数的有关特性。其中插值法是一种最基本的方法,以下给出最基本的插值问题——三次样条插值的基本提法: 对插值区间[]b a ,进行划分:b x x x a n ≤

插值法及其应用【文献综述】

文献综述 信息与计算科学 插值法及其应用 插值问题是数值计算中基础而又核心的问题. 在许多实际问题及科学研究中, 因素之间往往存在着函数关系, 然而, 这种关系经常很难有明显的解析表达, 通常只是有观察与测试得到一些离散数值.有时即使给出了解析表达式, 却由于表达过于复杂, 不仅使用不便, 而且不易与进行计算与理论分析. 例如在工程实际问题中, 我们也经常会碰到诸如此类的函数计算问题, 被计算的函数有时不容易直接计算, 如表达式过于复杂或者只希望能用一个“简单函数”逼近被计算函数, 然后用该简单函数的函数值近似代替被计算函数的函数值. 这种方法就叫插值逼近或者插值法. 插值法要求给出函数的一个函数表, 然后选定一种简单)(x f 的函数形式, 比如多项式、分段线性函数及三角多项式等, 通过已知的函数表来确定一个简单的函数作为的近似, 概括地说, 就是用简单函数为离散数组建立连续模型. )(x )(x f 插值方法是一类古老的数学方法, 它来自生产实践. 早在数千多年前, 由于经典的牛顿力学尚未诞生, 因而人们无法用解析式描述日月五星的运行规律. 我们的祖先凭借插值方法, 利用对日月五星运行规律的有限个观测值获得了比较完整的日月五星的运行规律. 在一千多年前的隋唐时期, 中华先贤在制定历法的过程中就已经广泛地运用了插值技术. 公元6世纪, 隋朝刘焊已将等距结点的二次插值应用于天文计算. 但插值的基本理论和结果是在微积分产生以后才逐步完善的, 随后其应用也日益增多, 特别是在电子计算机广泛使用以后, 由于航空、造船、精密机械加工等实际问题的需要, 使插值法在实践上或理论上显得更为重要, 并得到进一步发展. 经典的插值方法以Taylor 插值和Lagrange 插值为代表. Taylor 插值利用函数在定义域内某点处的阶至n 阶导数信息给出复杂函数或未知函数的近似多项式表达式, Lagrange 插0值利用多个离散点的函数信息给出函数的近似多项式的表达式, 进一步根据插值结果对复杂函数或未知函数相关的理论和应用问题做出讨论.因此Taylor 插值和Lagrange 插值有着紧密的联系, Taylor 插值可以看作Lagrange 插值的极限形式;Lagrange 插值则是Taylor 插值的离散化形式.Lagrange 插值的优点是插值多项式特别容易建立, 缺点是增加节点时原有

Matlab中插值函数汇总和使用说明

告: Matlab中插值函数汇总和使用说明收藏 命令1 interp1 功能一维数据插值(表格查找)。该命令对数据点之间计算内插值。它找出一元函数f(x)在中间点的数值。其中函数f(x)由所给数据决定。x:原始数据点 Y:原始数据点 xi:插值点 Yi:插值点 格式 (1)yi = interp1(x,Y,xi) 返回插值向量yi,每一元素对应于参量xi,同时由向量x 与Y 的内插值决定。参量x 指定数据Y 的点。 若Y 为一矩阵,则按Y 的每列计算。yi 是阶数为length(xi)*size(Y,2)的输出矩阵。 (2)yi = interp1(Y,xi) 假定x=1:N,其中N 为向量Y 的长度,或者为矩阵Y 的行数。 (3)yi = interp1(x,Y,xi,method) 用指定的算法计算插值: ’nearest’:最近邻点插值,直接完成计算; ’linear’:线性插值(缺省方式),直接完成计算; ’spline’:三次样条函数插值。对于该方法,命令interp1 调用函数spline、ppval、mkpp、umkpp。这些命令生成一系列用于分段多项式操作的函

数。命令spline 用它们执行三次样条函数插值; ’pchip’:分段三次Hermite 插值。对于该方法,命令interp1 调用函数p chip,用于对向量x 与y 执行分段三次内插值。该方法保留单调性与数据的外形; ’cubic’:与’pchip’操作相同; ’v5cubic’:在MATLAB 5.0 中的三次插值。 对于超出x 范围的xi 的分量,使用方法’nearest’、’linear’、’v5cubic’的插值算法,相应地将返回NaN。对其他的方法,interp1 将对超出的分量执行外插值算法。 (4)yi = interp1(x,Y,xi,method,'extrap') 对于超出x 范围的xi 中的分量将执行特殊的外插值法extrap。 (5)yi = interp1(x,Y,xi,method,extrapval) 确定超出x 范围的xi 中的分量的外插值extrapval,其值通常取NaN 或0。 例1 1.>>x = 0:10; y = x.*sin(x); 2.>>xx = 0:.25:10; yy = interp1(x,y,xx); 3.>>plot(x,y,'kd',xx,yy) 复制代码 例2 1.>> year = 1900:10:2010; 2.>> product = [75.995 91.972 105.711 12 3.203 131.669 150.697 179.323 203.212 226.505

常见插值法

常见插值法 【摘 要】插值方法在数值分析中起着非常重要的作用。在此介绍一些常见的插值方法及 其应用范例。 【关键字】数值分析;插值方法;应用; 1. 插值法定义 插值法又称“内插法”,是利用函数f (x)在某区间中 插入若干点的函数值,作出适当的特定函数,在这些 表(1) 插值点 点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值,这种方法称为插值法。如果这特定函数是多项式,就称它为插值多项式。 2.常见的插值法及其构造 Lagrange 插值法 (a).公式推导: 表(1)的Lagrange 插值的插值多项式 ∑==n i i i x l x f x 0 n )()()(L ,(j=0,1,2....n)。 其中插值基函数是 ∏ ≠=--=n j i i j i j x x x x x l 0 n ) ()()(,(i,j=0,1 2...n) 。 其插值余项为 其中),b a (∈ ξ,∏≠=+--=n j i i j i j x x x x x 0 1n )() ()(ω (b).matlab 实现方法: Matlab 没有直接求解的相关函数,现编译如下: function yi = Lagarange_chazhi(x,y,xi) % 求拉格朗日插值,并返回一个输入为xi 时的函数值 % x 为插值点向量,至少有三项 % y 为插值点值的向量,项数与x 相同 m = length(x); %求插值个数 m1 = length(y); if m<=2 error('项数不足!'); end if m~=m1 error('!!!y 的项数应与x 相同!!!'); end %对参数的判断 lag_hanshu = 0; syms X ; for (l = 1:m) %构造插值基函数 la = y(l); for a = (1:l-1) la = la*(X-x(a))/(x(l)-x(a)); end for a = (l+1:m) la = la*(X-x(a))/(x(l)-x(a)); end format long lag_hanshu = lag_hanshu+la; %求解出插值函数 end yi = subs( lag_hanshu,'X',xi); %返回插值函数输入为xi 时的值 End (c).方法缺陷:当插值点个数7n ≥时,将产生 龙格现象: 经典例子,对) 251(1 )(2x x f += 进行拉格朗日插 0x 1x 2x ....... 1-n x n x 0y 1y 2y ....... 1-n y n y ), (!)1() ()()()(1)1(x n f x L x f x R n n n n +++=-=ωξ

相关文档