资源描述
GAMIT10.5数据处理图文步骤
冉启顺
.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 station.info文件的更新 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四个站点2月1日数据为例
本文档使用软件版本GAMIT10.5
处理环境:win10上虚拟机ubuntu15.10
2.工程目录设置
在任意位置建立工程文件夹(全文以test为例),并在其目录下建立以下文件夹:
3.数据下载
在终端中打开test,查询2月1日年积日,和GPS周等信息
代码:doy 02 01
[1] 在test目录下再建一个文件夹以032命名文件夹,此时,test目录下有:
[2] 依据步骤3信息,到相关网站下载对应广播星历,精密星历,观察值文件分别放在文件夹brdc,igs,rinex里面。
当然还包含到下载数据解压,.d文件到.o文件转换等操作,其中广播星历能够不更名字(即能够不用改成brdc0320.13n)
4.更新tables表,
更新准则,下面表格为准:
还有个dcb.dat需要每次处理全部要更新
表文件名
表含义
更新频次
内容更新地址
pole.或pole.usno
极移表
每次更新
ftp://garner.ucsd.edu/
pub/gamit/tables/
ut1.或ut1.usno
地球自转参数表
每次更新
luntab..J
月亮表
使用当年表
soltab..J
太阳表
使用当年表
nutabl.
章动表
使用当年表
leap.sec
跳秒表
每次更新
gdetic.dat,
大地坐标参数文件
不常更新
antmod.dat,
天线相位中心更正正表
有新天线时更新
svnav.dat,
卫星列表
有新卫星时更新
rcvant.dat,
接收机天线对照表
有新天线时更新
svs_exclude.info
坏卫星信息文件
每次更新
vmf1
映射函数模型
使用当年表
ftp://everest.mit.edu//pub/GRIDS/
otl.grd
海潮格网数据
使用当年表
i. 常见文件说明
ii. 更新准则是:“更新频次”中红字部分每次处理全部更新一下,同时结合此次处理和上次处理年份是否相同来进行年表选择。原本有些文件是每七天更新一次,不过作为新手为了避免犯错还是每次更新吧
有些时候,有些文件找不到,或ftp://garner.ucsd.edu/pub/gamit/tables/
里面没有,则能够忽略。如svs_exclude.info,gdetic.dat常常找不到
我在更新时,这四个文件在服务器上没找到
下图是我更新文件。原本还应该有多种年表,不过我之前处理过一次数据,而且我gamit安装路径/opt/gamit/GAMIT10.5/tables已经有了这些年表。
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结构应是:
5.创建链接
这一步相当关键,而且常常轻易犯错。
1) 将.o文件,.sp3文件,*.*n文件(观察文件、精密星历、广播星历)链接到032目录下
实施代码:
2) 链接处理数据需要多种年表等文件
此时032中有以下文件:
检验并重新设置断掉链接,以下图所表示:
如:luntab.链接已断(常说死链接),在032目录下,
实施代码:ln -s ../tables/luntab..J ./luntab.
(最终点号一定要加上)
系统报错,即“无法创建符号链接,luntab.早已存在”,这句话意思是,032中早已经有了一个luntab.文件(不过我们却看到它是个死链接),删除该链接,重新实施上面代码。
新链接生成,并打开查看该链接所指向文件是不是luntab表
关键检验6-ii11个文件链接,和soltab.,nutabl.,用类似方法建立链接
以下是我手动加入部分链接:
以下是网上资料图:
其中还要注意设置:map.grid,otl.grid,atl.grid链接,我在处理数据时使用以下链接:
在查看原始GAMIT10.5解压文件中tables文件夹链接atl.grid,以下图所表示:
不过我在查看ftp://everest.mit.edu//pub/GRIDS/发觉它原本有一个atl.grid,上传是8月28,大小也是3.1M,故我断定,服务器上atl.grid就是tables里面ANU100826_grid.atl。
于是我在服务器上下载了一个3.1Matl.grid拷贝到test/tables中,然后在032里面制作了一个atl.grid链接。(当然也能够不用下载atl.grid,直接制作指向ANU100826_grid.atl链接)
总而言之:
n 更新tables常更新以下11个文件(多种年表除外):
但常常 guess_rcvant.dat 用不到,能够不更新
n 制作链接尤其注意以下多个链接:
n 在更新tables,建立完连接后实施ls –al 检验链接情况,红色是死链接:
发觉atml.grid链接已断,于是重新设置即可。至于剩下红色死链接,我全是忽略了,因为我也不会设置。(仿佛那个session.info是在正式处理过程中产生,能够忽略)
总来说设置链接是及其轻易犯错,要小心又小心。
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。该文件中保留是各
个站初始坐标,至于该文件中测站坐标要达成什么样精度,可
参考以下两条:
l 假如是该站作为基线解算起算点,则该测站坐标做保持在
5cm 以内,最好不要超出10cm。
l 假如该测站在基线解算中不作为起算点,则伪距单点定位
精度即可。
对于IGS站,获取其在特定框架下正确坐标方法:
首先要确保test/rinex下有itrf08.apr
方法1:
我用方法(可用于非IGS站):在我电脑上试了几次,老是最终一步犯错,不推荐,但也有教程上是这个方法:
l 在rinex文件夹下先生成lfile.rnx文件,然后生成lfile.rnx.apr,最终生成lfile.
依次实施代码:
grep POSITION *.13o > lfile.rnx
rx2apr lfile.rnx 032
gapr_to_l lfile.rnx.apr lfile. ** 032
方法2:
方法3:
l 伪距单点定位计算非IGS站初始坐标实例(假设shao是非IGS站):
实施完以后会生成两个不一样格式测站坐标文件lfile.shao 和
shao.apr,然后实施
l 双差定位计算测站初始坐标实例:
在此例中假设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 station.info文件更新
最终要在032中检验station.info链接是否指向了更新后station.info文件
在gamit全英文官方教程(版本10.6,24页)里面有这么一句话:
可见station.Info链接能够指向下图中选中文件,也就是说倘若你test/tables中没有station.info文件,能够自己新建并指向她们。而且这个MIT,SOPAC文件仿佛能够在ftp://chandler.mit.edu上更新,只是登不上去。练手话凑合着能用。
在test/tables目录下:
先建立一个sitelist文件,并录入测站名字(每行首字母空格),不分前后次序
然后终端打开tables并实施代码:
显示station.info files have 3 sites,这是错误,通常来说总共有多少测站参与计算就会有多少个sites,于是回去检验sitelist, ,发觉拉萨站写错了,应该是lhaz(所以在操作过程中一定要小心又小心,切记不能将单词写错,同时也要不害怕出现错误,只要依据其提醒,顺藤摸瓜,基础上能修改错误地方,实在不行重来)
还发觉,Recevier name ** not found in rcvant.dat,网上baidu了一下说要修改,说得又很模糊,所以不会。又去问了一下师兄,她说能够忽略,所以我也就忽略了(谁知道话告诉我一声)。
实施上述代码结束后最终一行显示:生成了一个station.info.new,此时需要将其更名为station.info,同时删除原有station.info链接。
再实施一次更新代码:
在生成station.info文件中会有下图中红框字符串,表示更新成功:
最终在032中检验station.info链接指向,假如没有话,自己手动用代码建立一个。
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.基线解算
最终一步还是犯错了,不过我baidu了一下“RC not executed STOP FATAL Error: Stop from report_stat”在这篇文章最终一页找四处理方法,也不知道对不对,反正最终是成功解算了。
在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里面采取:
取得,对比后发觉相差不是太大,不过还是不太理想(不管怎么样将软件走通了)
五、提议和说明
六、相关资料链接
天线查询
TEQC
广播星历下载
ftp://garner.ucsd.edu/pub/rinex/YYYY/DOY/ (以auto开头文件,下载后改为brdc开头)
ftp://cddisa.gsfc.nasa.gov/pub/gps/data/daily/YYYY/brdc/ (以brdc开头)
ftp://igs.ensg.ign.fr/pub/igs/data/YYYY/DOY/ (以brdc开头)
精密星历下载
ftp://cddisa.gsfc.nasa.gov/pub/gps/products
ftp://igs.ensg.ign.fr/pub/igs/data/
用户名:anonymous,密码:email地址
IGS连续站O文件下载
ftp://garner.ucsd.edu/pub/rinex/YYYY/DOY/(d文件,下载后用crx2rnx 解压)
ftp://cddisa.gsfc.nasa.gov/pub/gps/data/daily/YYYY/DOY/YYo/
ftp://igs.ensg.ign.fr/pub/igs/data/YYYY/DOY/(d文件,下载后用crx2rnx 解压)
crx2rnx软件(压缩D文件转为O文件)下载
ftp://terras.gsi.go.jp/software/RNXCMP/
(WINDOWS版)
(LINUX版)
GAMITtables文件下载
ftp://garner.ucsd.edu/pub/gamit/tables/
ftp://everest.mit.edu//pub/GRIDS/
O、N文件下载
ftp://igs.ensg.ign.fr/pub/igs/data/
ftp://garner.ucsd.edu/pub/rinex/
ftp://cddisa.gsfc.nasa.gov/pub/gps/data/daily/
MATLB TOOLS
~tah/GGMatlab/
展开阅读全文