打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
样条插值
  问题的背景高次插值函数的计算量大, 有剧烈振荡,数值稳定性差;而分段线性插值在分段点上仅连续而不光滑(导数不连续)。样条函数可以同时解决这两个问题,使插值函数既是低阶分段函数,又是光滑的函数。

1. 样条函数
   [a,b]上取n+1个插值结点a=x0<x1<…<xn =b,已知函数f(x)在这n+1个点的函数值为yk=f(xk ), 则在[a,b]上函数y=f(x)m次样条插值函数S(x)满足:
    (1)S(x)(a,b)上直到m-1阶导数连续;
    (2)S(xk)=yk,(k=0,1,…,n) ;
    (3)在区间[xk ,xk+1](k=0,1,…,n-1)上,S(x)m次多项式。

2. 三次样条函数
   [a,b]上函数y=f(x)的三次样条插值函数S(x)满足:
    (1)在(a,b)0、1、2阶导数连续; 即: 

        s'(xk-0)=s'(xk+0),s(xk-0)=s(xk+0),(k=0,1,…,n-1) 

    (2) S(xk)=yk,(k=0,1,…,n) ;

    (3)在区间[xk ,xk+1](k=0,1,…,n-1)上,S(x)是三次多项式。

3. 三次样条函数的计算 
   由二阶导数连续,设
是未知待定的数。因S(x)是分段三次多项式, 则在每个区间[xk ,xk+1 ]内,S(x)是分段一次多项式, 记hk=xk+1 -xk ,则:
         

将上式在区间[xk ,xk+1]上积分两次,并且由S(xk)=yk ,S(xk+1 )=yk+1来确定两个积分常数。当x∈[xk,xk+1 ]时, 
         

利用S(x)一阶导数连续的性质,对上式求导,得:
         

在上式中,令x=xk ,得:
         

将上式中的k换成k-1,得: s'(x)[xk-1 ,xk]上的表达式,将x=xk 代入,
         

s'(xk+0)=s'(xk-0), 联立上述两式,得到关于m 的方程:
    


两边乘以 
, 得:
    

上式中,等式左边含未知量mk-1,mk ,mk+1 ,等式右边yk-1 ,yk ,yk+1是已知的,令
         

则得:
         λkmk-1 +2mkk mk+1 = Ck,(k=1,2,…,n-1). 

这是含有n+1个未知量m0 ,m1 ,…,mn,共有n-1个方程组成的线性方程组。欲确定方程的解,尚缺2个方程,因此求三次样条函数还要2个附加条件。

常用的问题有下面两种提法: 

   第一类问题:附加条件为s″(x0)=m0,s″(xn)=mn

则方程组为:
     

其系数矩阵为: 
      

   
这是一个三对角矩阵,由于λkk =1<2,因而它是严格对角占优的。原方程组是个三对角方程组,可以用追赶法求解。 

   第二类问题:给出边界端点的一阶导数值:
       

利用前面已推导的公式:当x∈[xk,xk+1 ]时,
       

k=0,x=x0,得: 
       

k=n-1,x=xn,得: 
       

移项,得:
       

于是, 我们可以建立如下方程组:
       

其系数矩阵是严格对角占优的三对角矩阵: 
       

从而可以解出m0 ,m1,…,mn , 解出后可以得到三次样条函数的分段表达式,即当x∈[xk ,xk+1]时,
       

 例 已知y=f(x)的函数值为:
       
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
数值分析第五版答案(全)
__02 (修改中...)数学软件2 MATLAB数学运算基础(97-03doc)
话题5:为什么不能将数学建模简单地看作数据拟合?
MATLAB回归、插值、逼近、拟合总结
梁昊 | How To Solve Schrödinger's Equation 2.2 B样条插值&2.3插值多项式与数值积分
曲线曲面基本理论
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服