蒋玉祥
(西宁市测绘院,青海 西宁 810001)
精密单点定位(PPP)是全球卫星导航系统(GNSS)发展史上又一重大技术革命[1],由于其对于卫星精密星历轨道误差和钟差有极高的要求,所以精密星历中的轨道误差和钟差就成为了PPP一个主要的误差来源[2].根据国际GNSS服务(IGS)提供的15 min或者5 min间隔的精密卫星轨道和钟差加密得到用户所需要的精度成为一个很现实的问题.与此同时我国北斗卫星导航系统(BDS)也在迅速发展.根据IGS发布的精密星历,利用已有的方法对BDS钟差进行插值以及预报成为一个热点问题.
随着BDS的快速发展,针对精密星历的插值方法也在迅速发展,目前主要的内插方法包括了拉格朗日(Lagrange)插值、牛顿插值、三次样条插值、三角函数拟合、勒让德拟合、广义延拓逼近法等[3-8].而卫星钟差预报模型目前主要的方法有灰色理论模型[9-11]、时间序列模型[12]、卡尔曼滤波模型[13]、BP神经网络模型[14-15]、小波变换模型[15-16]、以及各种组合模型[17-22].这些预报模型针对使用情形的不同进行一定程度的改进和组合对钟差预报具有很好的实际应用价值.
为实现BDS高精度精密定位,根据BDS原子钟的特点:频率高、非常敏感、极易受到外界及其本身因素的影响,从而很难掌握其复杂细致的变换规律,而这些特点符合将系统行为特征的信息累加或者累减建立微分方程,并将累计数据还原的灰色模型.而针对普遍使用的传统GM(1,1)模型对原始数列的光滑度要求高且预测结果误差较大的问题,对BDS钟差数据用幂函数进行处理,进而提高了预测精度.本文结合BDS钟差数据利用MATLAB编程对GM(1,1)模型和幂函数变换的GM(1,1)模型进行验证,以改进传统模型的缺点和不足.
目前,IGS只提供采样间隔为15 min或者5 min的精密卫星钟差,根据其变化的规律一般使用低阶的Lagrange插值方法即可获得满足精度要求的观测历元的卫星钟差.
首先构造n次插值多项式:
(1)
式中:lk(x)(k=0,1,…,n)都是n次多项式,称为Lagrange插值基函数.将插值基函数简化为
P(x0)=y0,P(x1)=y1,…,P(xn)=yn.
(2)
(3)
lk(x)需满足:
(4)
由此,根据n个节点xi(i≠k)都是n次多项式lk(x)的零点,故有:
(5)
式中,Ak为待定系数,再由式(4)得到
从而得到最终结果:
(6)
式(6)就是Lagrange多项式插值的基本原理,利用BDS钟差进行插值时,自变量x为观测时刻, 因变量y为精密星历给出的该时刻的钟差.故想要获得任意时刻卫星钟差的n阶拉格朗日插值,必须至少有n+1个时刻的卫星钟差.当插值点位于插值区间的中央时,可以保证最佳的内插效果.
BDS钟差进行高精度预报时,首先用Lagrange插值根据需要进行插值,其次利用预报模型进行预报,即可得出需要的历元时刻对应的卫星钟差.
针对传统GM(1,1)模型的缺陷,利用幂函数变换法对模型进行改进,以提高原始数据数列的光滑度,进而降低预报结果的预测误差.
幂函数变换的GM(1,1)模型的建模过程如下:
首先,设原始数据列为
y(0)(t)={y(0)(1),y(0)(2),…,y(0)(n)}.
(7)
对原始数据做基于幂函数的变换:
x(0)(t)={x(0)(1),x(0)(2),…,x(0)(n)},
(8)