GAMIT 分步进行基线解算
近期选修课进行gamit学习,在此将自己的学习过程分享给大家,希望对大家有所帮助。
所用系统:Ubuntu20.04 + GAMIT10.71
此次实习所用数据为 2018 年 4 月 5 日4个 IGS 测站(bjfs,lhaz,urum,ccj2)的观测数据,年积日为 095。
注意:本篇中文件命名格式以本工程实际数据命名,实际解算时根据实际情况进行修改。
一、数据准备
数据都为武汉大学IGS数据中心下载,地址如下:
http://www.igs.gnsswhu.cn/index.php/home/data_product/igs.html
创建工程文件夹:
本文为work(也可以以年份起名,如:2018):
文件组织架构如下
· work/
—— 095/
—— brdc/
—— igs/
—— rinex/
—— tables/
tables文件夹为链接文件夹
链接命令如下(命令在工程文件夹work下执行):
sh_setup -yr 2018 -doy 095
把下载好的数据放入相关文件夹中,brdc 文件夹存放广播星历文件(后缀:.18n),igs 文件夹存放精密星历文件(后缀:.sp3),rinex 文件夹存放观测数据文件(后缀:.18o)。
二、参数配置
表文件更新
表文件更新较为复杂也极容易出错,所以建议查找更详细的tables更新教程进行此步操作。
下面主要说一下我遇到的断链情况,通过运行如下命令进行链接情况查看:
ls -al
若出现除去上面红链以外的红链,则需要对其进行查找重新链接。
具体方法: 通过查看后面链接的文件地址,查看其文件属性进行进一步追踪,最终找到最终的文件,若指向的最终文件不存在,需要进行文件下载。
对于本文中的 2018 年 4月 5 日的观测数据,特别要仔细检查以下文件:
soltab.2018.J2000、luntab.2018.J2000、vmf1grd.2018(与map.grid相关)、otl_FES2004.grid(与otl.grid相关)、atmdisp_cm.2018(与atml.grid相关) 和 nutabl.2018。
表文件可以在以下网址下载
http://sopac.ucsd.edu/GAMIT.shtml
ftp://garner.ucsd.edu/archive/garner/gamit/tables
也可以通过如下命令进行表更新:
gftp <网址>
参数配置
tbles文件夹中有sestbl.和sittbl.两个文件
sittbl.文件设置:sittbl.可以对站点进行约束,对高精度的已知坐标强约束,可以设置为5cm;对待求点坐标进行松约束,本文设置为100m。
如下所示:
sestbl. 文件中相应位置可以按照如下修改:
Use otl.list = Y ; Ocean tidal loading list file from OSO
Use otl.grid = N ; Ocean tidal loading grid file, GAMIT-format converted from OSO
此为基线解算中所需的海潮改正文件的配置。还有更多细节参数设置,请仔细查阅相关文档。
因为此处处理的是 IGS 站的观测数据,按照上面修改,直接使用otl.list即可。
初始文件生成
生成 station.info
进入tables文件夹,使用以下命令
sh_upd_stnfo -files ../rinex/*o
生成新的station.info文件,内容如下:
生成 lfile.
lfile.文件中包含测站的概略坐标,生成方法如下:
在工作目录的rinex目录执行:
grep POSITION *.18o > lfile.rnx
rx2apr lfile.rnx 2018 095
gapr_to_l lfile.rnx.apr lfile. '''' 2018 095
lfile.文件内容如下:
然后将lfile.文件复制到tables文件中。
三、开始解算
首先创建年积日文件夹(本文名称为095),并与igs、brdc、rinex、tables文件夹进行链接
进入095文件夹分别执行如下命令:
ln -s ../igs/*sp3 ./
ln -s ../brdc/*n ./
ln -s ../rinex/*o ./
ln -s ../tables/* ./
下面开始进行分布解算:
注意:所有命令均在095文件夹内执行
1、执行 sh_makexp
命令如下:
sh_makexp -expt test -orbt igsf -yr 2018 -doy 095 -sess 99 -nav brdc0950.18n -sp3file igs19954.sp3 -jclock sp3 -apr lfile. -sinfo 30 0 0 2880
正常结束如下:
2、生成G-文件(轨道文件):
命令如下:
sh_sp3fit -f igs19954.sp3 -o igsf -d 2018 095
成功后,进行文件检查:
$ sh_check_sess -sess 095 -type gfile -file gigsf8.095
此时可能有报错,称找不到gigsf文件,查看095文件夹,发现生成的G-文件的名字为gigsg8.095,将他改为gigsf8.095,再次进行检查,检查通过。
3、生成J-文件:
命令如下:
makej brdc0500.16n jigsf8.095
成功后进行文件检查:
sh_check_sess -sess 095 -type jfile -file jigsf8.095
4、生成X-文件:
生成双差观测文件命令为:
makex work.makex.batch
成功截图如下:
5、生成脚本:
运行 fixdrv 命令
fixdrv dwork8.095
注意: 此时可能会出现如下错误
解决办法: 将095文件夹内的GAMIT.fatal文件删除
命令成功截图如下:
6、最后,进行数据解算
csh bwork8.bat
等待数据解算完成。
解算成功截图如下:
相关成果
解算成功后,在095文件夹中会有 O-文件,Q-文件和 H-文件,以及解算更新的站坐标lfilg.文件。
解算过程中的错误,可以在 GAMIT.fatal 文件中查看。
至此,流程顺利跑通,但其中处理命令的参数和相关文件参数的设置和如此设置的意义,还需要进一步阅读相关文献进行学习。