GAMIT10.5数据处理图文流程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GAMIT10.5数据处理图文流程
冉启顺
2016.1.20
目录
一、前言 (2)
二、数据准备 (3)
1.前期准备 (3)
2.工程目录设置 (3)
3.数据下载 (3)
4.更新tables表, (4)
5.创立链接 (7)
6.控制文件配置 (13)
6.1准备测站列表sites.defaults (13)
6.2准备测站近似坐标文件lfile. (13)
6.3 文件的更新 (16)
7 修改配置process.defaults、sittbl.与sestbl.文件 (19)
7.1配置process.defaults (19)
7.2配置sittbl.坐标约束文件 (19)
7.3配置sestbl.改正模型文件 (20)
三、分布处理 (22)
1 .Makexp (22)
2.精密星历处理 (22)
3.文件检查 (24)
4.广播星历处理 (24)
5.文件检查 (25)
6.生成中间文件 (25)
7.生成bat文件 (26)
8.基线解算 (27)
9.基线解算精度评定标准 (30)
四、cosagps平差 (31)
五、建议与说明 (34)
六、相关资料链接 (35)
一、前言
二、数据准备
1.前期准备
首先想好要处理什么时段、什么地方的数据
本文档以处理bjfs,shao,lhaz,urum四个站点2013年2月1日的数据为例
本文档使用软件版本GAMIT10.5
处理环境:win10上的虚拟机ubuntu15.10
2.工程目录设置
在任意位置建立工程文件夹(全文以test为例),并在其目录下建立如下的文件夹:
3.数据下载
在终端中打开test,查询2013年2月1日的年积日,和GPS周等信息
代码:doy 2013 02 01
[1]在test的目录下再建一个文件夹以032命名的文件夹,此时,test目录下有:
[2]根据步骤3的信息,到相关网站下载对应的广播星历,精密星历,观测值文件分别放在
文件夹brdc,igs,rinex里面。

当然还涉及到下载的数据解压,.d文件到.o文件的转换等操作,其中广播星历可以不改名字(即可以不用改成brdc0320.13n)
4.更新tables表,
更新准则,下面的表格为准:
还有个dcb.dat需要每次处理都要更新
i.常见文件说明
ii.更新的准则是:“更新频次”中的红字部分每次处理都更新一下,同时结合本次处理与上次处理的年份是否相同来进行年表的选择。

原本有些文件是每周更新一次,但是作为新手为了避免出错还是每次更新吧
有些时候,有些文件找不到,或者ftp:///pub/gamit/tables/
里面没有,则可以忽略。

如svs_,gdetic.dat常常找不到
我在更新时,这四个文件在服务器上没找到
下图是我更新的文件。

原本还应该有2013年的各种年表,但是我之前处理过一次2013年的数据,并且我的gamit安装路径/opt/gamit/GAMIT10.5/tables已经有了2013年的这些年表。

iii.将上述更新的数据复制到gamit安装目录下的tables文件夹内,并替换原有文件。

我的gamit安装路径是/opt/gamit,即我安装路径下的tables 的路径是:/opt/gamit/GAMIT10.5/tables
iv.然后将更新后的tables文件夹,即/opt/gamit/GAMIT10.5/tables拷贝(或者设置连接,我习惯拷贝)到test目录下。

因为我之前在/opt/gamit/GAMIT10.5/tables里面放了很多数据,所以它显得特别大
1.8G,往往在包含otl.grid的情况下tables也就7~800M吧。

此后,test的结构应是:
test
rinex
032 doy1 doy2 ... brdc igs tables
5.创立链接
这一步相当重要,而且常常容易出错。

1)将.o文件,.sp3文件,*.*n文件(观测文件、精密星历、广播星历)链接到032的目录下
执行代码:
2)链接处理数据需要的各种年表等文件
此时032中有如下的文件:
检查并重新设置断掉的链接,如下图所示:
如:luntab.链接已断(常说的死链接),在032目录下,
执行代码:ln -s ../tables/luntab.2013.J2000 ./luntab.
(最后的点号一定要加上)
系统报错,即“无法创建符号链接,luntab.早已存在”,这句话的意思是,032中早已经有了一个luntab.文件(但是我们却看到它是个死链接),删除该链接,重新执行上面的代码。

新链接生成,并打开查看该链接所指向的文件是不是2013年的luntab表
重点检查6-ii的11个文件链接,以及soltab.,nutabl.,用类似的方法建立链接
以下是我手动加入的部分链接:
以下是网上的资料图:
其中还要注意设置:map.grid,otl.grid,atl.grid的链接,我在处理数据时使用的如下链接:
在查看原始GAMIT10.5的解压文件中的tables文件夹的链接atl.grid,如下图所示:
但是我在查看ftp:////pub/GRIDS/发现它原本有一个atl.grid,上传是2010年8月28,大小也是3.1M,故我断定,服务器上的atl.grid就是tables里面的ANU100826_grid.atl。

于是我在服务器上下载了一个3.1M的atl.grid拷贝到test/tables中,然后在032里面制作了一个atl.grid的链接。

(当然也可以不用下载atl.grid,直接制作指向ANU100826_grid.atl的链接)
综上所述:
⏹更新tables常更新以下11个文件(各种年表除外):
但常常guess_rcvant.dat 用不到,可以不更新
⏹制作链接特别注意以下几个链接:
⏹在更新tables,建立完连接后执行ls –al 检查链接情况,红色的是死链接:
发现atml.grid 的链接已断,于是重新设置即可。

至于剩下的红色死链接,我全是忽略了,因为我也不会设置。

(好像那个 是在正式处理过程中产生的,可以忽略)
总的来说设置链接是及其容易出错,要小心又小心。

6.控制文件配置
6.1准备测站列表sites.defaults
在test/tables下把需要处理的测站加入该表,包括IGS测站和本地测站,并确定工程名。

然后将site.defaults在032下设置一个链接
6.2准备测站近似坐标文件lfile.
制作完lfile.文件后不要忘了将lfile.拷贝到test/tables中,同时在032中设置对应链接
lfile.文件是测站近似点坐标(越精确越好,10.4以前的版本里面存放的经纬度信息,而10.4及其之后的版本直接存放x,y,z信息)
GAMIT10.5 的lfile 和apr 文件是同样的
格式,所以我们可以认为apr 文件就是lfile。

该文件中保存的是各
个站的初始坐标,至于该文件中的测站坐标要达到什么样的精度,可
参考如下两条:
●如果是该站作为基线解算起算点,则该测站的坐标做保持在
5cm 以内,最好不要超过10cm。

●如果该测站在基线解算中不作为起算点,则伪距单点定位的
精度即可。

对于IGS站,获取其在特定框架下的精确坐标方法:
首先要确保test/rinex下有itrf08.apr
方法1:
我用的方法(可用于非IGS站):在我的电脑上试了几次,老是最后一步出错,不推荐,但也有教程上是这个方法:
●在rinex文件夹下先生成lfile.rnx文件,然后生成lfile.rnx.apr,最后生成lfile.
依次执行代码:
grep POSITION *.13o > lfile.rnx
rx2apr lfile.rnx 2013 032
gapr_to_l lfile.rnx.apr lfile. ** 2013 032
方法2:
方法3:
●伪距单点定位计算非IGS站的初始坐标实例(假设shao是非IGS站):
执行完之后会生成两个不同格式的测站坐标文件lfile.shao 和
shao.apr,然后执行
●双差定位计算测站的初始坐标实例:
在此例中假设shao站是未知坐标的测站,而bjfs是已知坐标的测站(或起算站)
综上所述:
在生成life.文件时,IGS站的坐标可以直接从框架获得,或者利用双差定位求得。

而非IGS站则可以根据要求精度的高低选择:
✓直接提取头信息
✓伪距单点定位
✓双差定位法
✓方法1
常常在伪距单点定位和双差定位法中选择,然后将所须的坐标信息拷贝到lfile.中即可,并将lfile.拷贝到test/tables中,同时在032中设置对应链接
现在,我假设bjfs,lhaz两站点是精度较高的IGS站,坐标直接从框架中获得,而shao,urum 站是非IGS站,近似坐标通过伪距单点定位获得。

最后按照特定的格式均复制到lfile.文件中
然后将lfile.拷贝到test/tables中,同时在032中设置对应链接
好像不需要在032中设置链接,但是怕出错,我还是设置了,希望没有弄巧成拙6.3 文件的更新
最后要在032中检查链接是否指向了更新后的文件
在gamit全英文的官方教程(版本10.6,24页)里面有这样一句话:
可见的链接可以指向下图中选中的文件,也就是说倘若你的test/tables中没有文件,可以自己新建并指向他们。

并且这个MIT,SOPAC的文件好像可以在ftp://上更新,只是登不上去。

练手的话凑合着能用。

在test/tables目录下:
先建立一个sitelist的文件,并录入测站名字(每行首字母空格),不分先后顺序
然后终端打开tables并执行代码:
显示 files have 3 sites,这是错误的,一般来说总共有多少测站参与计算就会
有多少个sites,于是回去检查sitelist, ,发现拉萨站写错了,应该是lhaz(所以在操作过程中一定要小心又小心,切记不能将单词写错,同时也要不害怕出现错误,只要根据其提示,顺藤摸瓜,基本上能修改错误的地方,实在不行重来)
还发现,Recevier name ** not found in rcvant.dat,网上百度了一下说要修改,说得又很模糊,所以不会。

又去问了一下师兄,他说可以忽略,所以我也就忽略了(谁知道的话告诉我一声)。

执行上述代码结束后最后一行显示:生成了一个.new,此时需要将其改名为,同时删除原有的的链接。

再执行一次更新代码:
在生成的文件中会有下图中红框的字符串,表示更新成功:
最后在032中检查链接的指向,如果没有的话,自己手动用代码建立一个。

7 修改配置process.defaults、sittbl.与sestbl.文件
7.1配置process.defaults
它里面包含目录信息,改动较小。

需要在032中设置链接
7.2配置sittbl.坐标约束文件
对高精度的已知坐标强约束,待求点坐标松约束
非起算点约束量可以更大,如100m。

并且如果IGS站列表中没有你所处理数据中的IGS站,需要自己添加,格式一致。

7.3配置sestbl.改正模型文件
配置准则如下面的截图:
下面是我的部分设置:
我没有met.list,met.grid,也没有map.list和map.grid,所以我设置的是N(不使用)
我的atml.list和atl.list是死链接,我又不知道如何制作他们(好像在麻省理工的FTP上可以下载,但是这个FTP好久都登不上去了),于是全选N,而我有atl.grid和atml.grid ,于是选Y
修改完了,别忘了保存,同时为了保险起见到032里面再检查一次几个配置文件是否修改、链接好了
至此,数据准备阶段完成。

下面我们开始计算。

三、分布处理
1 .Makexp
在032目录下执行代码:makexp
2.精密星历处理
如下图执行代码:
3.文件检查
执行下图的代码:
对于代码中的gigsf3.032,其中g表示文件类型,中间igsf表示轨道,第一步输入的:
,3表示年的最后一位,032是年积日。

4.广播星历处理
其中auto0320.13n没有改名字作为输入文件,jauto3.032是输出文件
当然也可以在将auto0320.13n改名字后,执行makej brdc0320.13n jbrdc3.032
5.文件检查
6.生成中间文件
7.生成bat文件
8.基线解算
最后一步还是出错了,但是我百度了一下“RC not executed STOP FATAL Error: Stop from report_stat”在这篇文章的最后一页找到解决方法,也不知道对不对,反正最后是成功解算了。

/p-691155905562.html
在032中找到上图的两个文件并删除,然后重新执行基线解算。

中间有很多省略
结算结果精度还算过得去
但是我往往以otesta.032为准
qexpta.doy:解算记录
oexpta.doy为qexpta.doy的简略版hexpta.yrdoy:协方差矩阵、参数平差值
9.基线解算精度评定标准
(网上各类教程上的标准大同小异)
标准1:
一般NRMS越小越好,一般小于0.25视为解算效果较好,
本次解算的NRMS为0.26,符合要求
基线的X、Y方向误差范围应控制在1cm以内,Z方向的误差控制在1.5cm以内,本次解算所有基线均满足要求
本次解算x,y,z方向的误差均有超过1cm,结果不是很理想,还过得去
最后还有一个基线重复性检验:
但是我的检验失败了,是不是要进行两天以上的数据处理才能进行重复性试验?
至此可以理解为解算完毕,然后进行基线平差,也可以使用GLBOK平差,但是我选择了用COSAGPS进行的平差。

如果想直接用GLBOK进行平差,参考安向东的处理流程。

四、cosagps平差
1.在032目录下打开otesta.032,并在第二次出现基线信息的地方加入下面红框中的一行
字符串:“cosagps for gamit o-file”最后保存并复制到windows桌面下。

2.Cosa平差
打开cosagps,新建工程,设置如下,其它参数基本默认
3.导入基线数据
导入从ubuntu里面复制出来的otesta.032
基线的误差有点大(但为了走完流程,有精度强迫症的就凑合着看吧^_^)
4.导入三维已知坐标
这里就是你解算时坐标起算数据,但是要注意框架和坐标系的统一。

先在点名方框内随便输入数据,然后确定,如下图
在工程目录下找到刚新建的关于起算点坐标的文件,用记事本打开,并将已知起算数据复制粘贴到know文件中,如下图:
5.三维平差
最后将解算出的shao,urum站的坐标与原本查询到的坐标进行对比即可。

以下图片里面的坐标就是我在ubuntu里面采用:
获得的,对比后发现相差不是太大,但是还是不太理想(不管怎么样将软件走通了)
五、建议与说明
六、相关资料链接
天线查询
/ANTCAL/
TEQC
/software/teqc/
广播星历下载
ftp:///pub/rinex/YYYY/DOY/(以auto开头的文件,下载后改为brdc 开头)
ftp:///pub/gps/data/daily/YYYY/brdc/ (以brdc开头)
ftp://igs.ensg.ign.fr/pub/igs/data/YYYY/DOY/ (以brdc开头)
精密星历下载
/pub/
ftp:///pub/gps/products
ftp://igs.ensg.ign.fr/pub/igs/data/
用户名:anonymous,密码:email地址
GAMIT的tables文件下载。

相关文档
最新文档