预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

三次样条插值的MATLAB实现 三次样条插值的MATLAB实现 三次样条插值的MATLAB实现 程序设计期中考查 在许多问题中,通常根据实验、观测或经验得到的函数表或离散点上的信息,去研究分析函数的有关特性。其中插值法是一种最基本的方法,以下给出最基本的插值问题--三次样条插值的基本提法: 对插值区间进行划分:,函数在节点上的值,并且如果函数在每个小区间上是三次多项式,于上有二阶连续导数,则称是上的三次样条函数,如果在节点上还满足条件 则称为三次样条插值函数. 三次样条插值问题提法:对上给定的数表如下。 …………求一个分段三次多项式函数满足插值条件式,并在插值区间上有二阶连续导数.这就需要推导三次样条插值公式: 记在节点处的值为()(这不是给定插值问题数表中的已知值)。在每个小区间利用三次插值公式,得三次插值公式: ,。为了得到这个公式需要个条件: (1)。非端点处的界点有个;(2).一阶导数连续有个条件;(3).二阶导数连续有个条件,其中边界条件:eq\o\ac(○,1) eq\o\ac(○,2) eq\o\ac(○,3) eq\o\ac(○,4) 其中:且()。 ,为对应变量的一阶导数。其推导过程如下: 为了确定的值,把展开为: + 这里,对连续求两次导,得: 。于是考虑在节点处的右极限值,得: 。 同理,在相邻小区间上可得的表达式为: 及在节点处的左极限值为: 。利用二阶导数于节点处的连续性条件,这里,有下式成立: ,用除等式两边,并注意,上式可简记为: 且 最后求得的线性方程组为: (**) 通过以上复杂的求解和迭代,就可以求解出插值函数的近似表达式。得出来的表达式就可以用软件来求解。具体求解过程如下: 已知对数据点,假设函数关系为,但解析式不确定,数据插值就是构造函数关系式,使,满足关系。 例题:求满足下面函数表所给出的插值条件的三次自然样条函数。 12451342 分析:表中所列出的是函数对点,首先要把对应的插值函数求出来,再用软件来求区间上间隔为0.5的各点的值。 求解过程如下: 因自然样条插值函数的边界条件为 这里,故确定的方程组形式形如上面的(**)式,其中系数和可按如下步骤进行: 将上述参数带入(**)式,得到以下方程组: 解得: 由公式 + 可知, 由所求出的表达式可知区间可分为,对两个区间分别用命令即可: 针对第一个区间: ;其图像如下 命令如下: x=1:4;y=(-1/8)*x.^3+(2/8)*x。^2+(7/4)*x-1;xi=1:0。5:4; y1=interp1(x,y,xi,'spline') 其运行结果如下: y1= Columns1through6 0。87501.76562。50002。98443。12502.8281 Column7 2.0000 针对第二个区间: