编程语言
首页 > 编程语言> > TEQC GNSS数据质量分析算法

TEQC GNSS数据质量分析算法

作者:互联网

文章目录

TEQC应用

TEQC是由UNAVCO Facility研制的为研究GPS 监测站数据服务的公开免费软件,软件在快速、多角度、全方位的分析观测数据方面具有强大的优势。TEQC应用的例子有很多:

TEQC算法

TEQC虽然没有公开其具体代码,但是多数指标通过简单统计即可获得。部分指标则涉及一些简单的算法,在其公开论文《Geodetic Data Services Plan for GNSS Modernization: Data Formats and Preprocessing Tools》也有描述。接下来,主要参考该论文,对其中一些指标的算法进行阐述。

1. 电离层误差变化率检测周跳

下面是TEQC报告中的一个示例:

IOD signifying a slip : >400.0 cm/minute
IOD slips < 10.0 deg* : 125
IOD slips > 10.0 deg : 439

具体计算方法如下:

频率i的载波相位L和伪距P建模如下,其中R是卫星和接收机天线之间的真实距离,c是光速,dtr是接收机钟差,dts是卫星钟差,Ii为频率i的电离层误差,N为对流层延迟,mi为频率i的相位多径误差,Mi为频率i的伪距多径误差,ni λ \lambda λi 为整周模糊度项:

在这里插入图片描述

电离层延迟误差与频率的平方成反比,L1和L2电离层延迟的关系如下:
在这里插入图片描述

根据(1)式中的模型,用L1 - L2,并且带入(4)式,可以得到下式:
在里插入图片描述
或者下式:
在这里插入图片描述
顺便说一句,在整周模糊度已经固定的情况下,由于相位多径通常非常小,忽略多径,通过(5)式和(6)式,其实可以计算得到电离层延迟,这也是如何用双频数据计算电离层延迟的方法。

TEQC利用(5)和(6),将两个时刻的电离层误差相减(忽略相位多径误差,通常为毫米级),并且除以时间间隔,便可以得到电离层误差的变化率:
在这里插入图片描述
TEQC利用电离层误差变化率监测L1,L2周跳。由于除了周跳,不同时刻电离层延迟的变化、卫星运动、接收机运动,均会影响由(7)式所计算的电离层误差变化率。所以TEQC默认设置了400cm/min的阈值,不过这个值是可以通过命令行选项进行修改的。

2. MP1(L1伪距多径值)、MP2(L2伪距多径值)

下面是TEQC报告中的一个示例。MP12和MP21是移动平均多径的RMS值。第三行是用多少个点来计算移动平均值。

Moving average MP12 : 0.370746 m
Moving average MP21 :0.234991 m
Points in MP moving avg : 50

为了得到多径方程,我们通过(1)式和(2)式中的模型计算线性组合MP1、MP2,并且将式中的电离层误差用(5)式和(6)式替代。这样我们就可以得到:
在这里插入图片描述
其中B1 和B2定义为:
在这里插入图片描述
式(8)中,由于相位多径m1和m2非常小,MP1的变化主要由M1和B1造成。由于B1由模糊度计算得到,因此在没有周跳的情况,B1不会发生变化。MP2和MP1类似。

如果将伪距多径M1、M2认为是零均值的白噪声,而B1、B2在没有周跳的时间段内是个常值,那么将线性组合值MP1、MP2在无周跳时间段内的均值减去,则就是多径值M1、M2,这也正是TEQC计算多径的方法。TEQC减去均值后,再计算RMS,便得到了报告中的MP12,MP21。

总结

TEQC开源工具虽然好用,但是我们还是应该“知其然,并知其所以然”。只有掌握了算法,才能写出我们可以任意修改的工具。我曾经尝试过写计算多径值的函数,基本上通过上述算法,可以得到和TEQC一致的结果。学会使用优秀的工具很重要,但是理解这些指标如何计算、为什么这么算更重要。

标签:误差,伪距,多径,TEQC,电离层,GNSS,算法,MP1
来源: https://blog.csdn.net/weixin_42918498/article/details/117911701