数值分析—三次样条函数插值(四)

      在之前,我们都是用一个函数来拟合数据点的分布,但有时候使用单一函数很难达到比较好的拟合效果,所以就有了分段函数来拟合数据点,但分段函数如果不设置约束条件的话,会显得整个拟合比较“僵硬”,最直观的表现就是线条不平缓。为了解决这个问题,就引出今天要研究的算法,样条函数插值法。

      样条函数实际上就是分段函数,但是其每段的函数需要用m次多项式来拟合相邻的两个数据点,并且保证这个m次多项式具有m-1阶连续导数。这边文章只研究三次样条函数,那么分段函数就为三次多项式,为了使整个分段函数看起来平滑,需要具备以下几个条件:

      (1)分段函数过每个插值点

      (2)相邻两分段函数在插值点处连续

      (3)相邻两分段函数在插值点处一阶导连续

      (4)相邻两分段函数在插值点处二阶导连续

      (5)边界插值点的约束条件

  我们假设有n+1个插值点 ^{}(\large ^{x_{0}},\large ^{y_{0}})、(\large ^{x_{1}},\large ^{y_{1}})、..............(\large ^{x_{n}},\large ^{y_{n}}),那么区间就会有n个,就会有n个分段函数,每个分段函数都为三次多项式,那么:

                              \large S_{n}(x)\left\{\begin{matrix} a_{0}+b_{0}(x-x_{0})+c_{0}(x-x_{0})^{2}+d_{0}(x-x_{0})^{3} \\ a_{1}+b_{1}(x-x_{1})+c_{1}(x-x_{1})^{2}+d_{1}(x-x_{1})^{3} \\ .................................................................\\ a_{n}+b_{n}(x-x_{n})+c_{n}(x-x_{n})^{2}+d_{n}(x-x_{n})^{3} \end{matrix}\right.

 从上面的分段函数我们可以看出来,每一个分段函数都有4个未知数,共有n个分段函数,所以有4n个未知数。

根据条件(1):\large S_{n}(x_{n})=\large y_{n}      可以构建n个方程

根据条件(2):\large S_{n-1}(x_{n})=\large S_{n}(x_{n})=\large y_{n}  可以构建n个方程  

根据条件(3):\large S_{n-1}^{'}(x_{n})=\large S_{n}^{'}(x_{n})        可以构建n-1个方程

根据条件(4)\large S_{n-1}^{''}(x_{n})=\large S_{n}^{''}(x_{n})              可以构建n-1个方程

根据条件(5),一般对于边界点使用的都是自由边界,需要满足的条件为\large S_{0}^{''}(x_{0})=0 且\large S_{n}^{''}(x_{n})=0  这样就可以构建2个方程

综合以上所有条件,一共就有4n个方程,就可以解出这4n个未知数啦

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值