Gamit课程结课报告

更新时间:2023-10-06 04:32:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

研究生课程学习报告

《GNSS数据处理软件应用》

——GAMIT软件实践

2016年12月17日

Gamit基线解算

一、Gamit介绍

Gamit是美国麻省理工学院(MIT)和斯克里普斯海洋研究所(SIO)联合开发的高精度GPS数据处理软件,它主要用于分析研究地壳形变、精密单点定位等领域。

GAMIT可以解算卫星轨道、测站坐标、大气延迟、整周模糊度等,其最主要的特点是其解算精度高,且免费开放源代码,用户可以根据需要对源程序做相应的修改,以便于科研工作。GAMIT软件所需的数据是Rinex格式的,可以处理各种不同型号的GPS接收机采集的数据。利用高精度的GAMIT软件可以确定地面站的三维坐标,在利用精密星历和高精度起算点的情况下,基线解的相对精度能够达到10-9左右,解算短基线的精度能优于1 mm,是世界上最优秀的GPS软件之一。目前,GAMIT软件支持在Unix和Linux操作系统上运行。

二、Gamit安装

首先安装Linux系统,这里用的是Ubuntu16.04,然后安装Gmait所需要的一些编译器:GUN gfortran 4.2、libx11-dev。

然后将gamit10.5拷贝到/opt/下,在终端中用sudo chmod命令给予+x权限。进入/opt/gamit10.5/libraries中,用vim编辑Makefile.Config文件,修改其x11libpath和x11incpath路径和操作系统版本号(在终端中输入uname –a可以查询系统版本号)。

最后输入./install_software,开始安装,耐心等待安装完成。最后gamit会在终端提示:

Don’t forget to set your: path to include /opt/gamit10.5/gamit/bin and /opt/gamit10.5/kf/bin

以及一个帮助文档的环境变量:

HELP_DIR environment variable in you shell profile (in .cshrc/.tcshrc add: setenv HELP_DIR /opt/gamit105./help)

这里我用的是bshell,所以在~/.basrhc中将这些环境变量添加进去,然后输入source ./bashrc使环境变量立即生效

最后输入doy命令,测试是否安装成功。

三、数据处理

3.1 table文件更新

想要进行高精度的数据处理,table文件是不可或缺的。主要有:地球定向EOF文件、卫星钟文件、潮汐文件、太阳、月亮表、固体地球潮汐表、跳秒文件。可以在ftp://garner.ucsd.edu/pub/gamit/tables中更新。 3.2数据准备

我们小组用北京房山、昆明、拉萨、乌鲁木齐、韶山五个站的数据进行处理。然后在ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/中下载这五个站的o文件和n文件,在ftp://ftp.igs.org/中下载igs精密星历,我用的是2016年123天,第1895周,周一的数据。 3.3链接文件

首先需要建立一个工程,以4个字母为宜,这里为wang,然后在wang/下建立四个文件夹,分别是brdc、igs、123、rinex然后将tables拷贝到wang/下,分别把下载的o文件、n文件和sp3文件拷贝到rinex、brdc、igs中,然后在终端中用cd命令进入到wang/123/下,用ln –s命令将o文件、n文件和sp3文件链接到123文件夹下,然后在使用links.day2016 123 wang命令,将tables所需的文件链接过来,然后输入ls –l检查链接是否断掉,主要检查下表这几个文件:

源文件 otl_FES2004.grid vmflgrid.2016 luntab.2016.J2000 soltab.2016.J2000 nutabl.2016 pmu.usno ANU100826_grid.atl atmdisp_cm.2016 确认无误后,进行下一步 3.4 准备控制文件

链接文件 otl.grid map.grid luntab. soltab. nutabl. pmu. atl.grid atml.grid 首先将tables中的itrf08.apr拷贝到rinex中,用grep命令,将五个igs站的坐标拷贝到lfill.中,然后将lfile.链接到tables和123中。接下来更新测站列表,首先在sites.defaults中将五个站添加进去,然后新建一个文本文件,输入五个站的站名,用sh_upd_stnfo –l命令生成station.info,然后用sh_upd_stnfo –files../rinex/*.16o生成新的station.info。紧接着在sittbl.中将文件中没有的五个igs站添加进去,在sestbl.中设置如下:Choice of Experiment = BaseLine,Choice of Observable = LC_AUTCLN,Use otl.grid = Y, Use met.grid = N, Use map.grid = Y, Use otl.grid=Y, Use atl.grid=Y。 3.5分布处理

在123目录下执行makexp,按照要求输入项目名,轨道类型等参数,执行

完成后,处理精密星历:sh_sp3fit –f igs18951.sp3 –o igsf –t,执行完成后进行sh_check_sess –sess 123 –type gfile –file gigs6.123文件检查,然后处理广播星历:makej bjfs1230.16n jbjfs6.123,处理完成后用上述命令再检查一次j文件,最后用makex,然后输入1,生成batch文件,在用fixdrv dwang6.123生成bat批处理文件,最后用csh bwang6.bat进行基线解算,最后生成的q-、o-文件就是解算结果。

四、基线解算

4.1 解算结果

首先看o-文件中的Postfit nrms为0.217275,小于0.25,解算质量合格。然

后接着查看基线解算结果,如下表(单位:m):

基线 BJFS_CHAN BJFS_LHAZ BJFS_SHAO BJFS_URUM CHAN_LHAZ CHAN_SHAO CHAN_URUM LHAZ_SHAO LHAZ_URUM SHAO_URUM

x中误差 y中误差 z中误差 0.0052 0.0064 0.0064 0.0066 0.0072 0.0066 0.0074 0.0079 0.0061 0.0082 0.0066 0.0100 0.0079 0.0086 0.0108 0.0084 0.0095 0.0113 0.0101 0.0102 0.0058 0.0066 0.0059 0.0069 0.0077 0.0066 0.0079 0.0072 0.0066 0.0076 L 919176.9434 2499815.0074 1058437.3283 2374435.7824 3372235.3944 1454037.5091 2990705.8777 2864648.7877 1597151.7226 3225481.0984 L中误差 0.0041 0.0062 0.0037 0.0062 0.0071 0.0037 0.0069 0.0074 0.0038 0.0072 从表中可以看出x,y,z三个方向的基线解算误差基本都小于1cm,y方向

的误差在1cm左右,本次基线解算合格。

它们的协方差如下表(单位:m):

基线 BJFS_CHAN BJFS_LHAZ BJFS_SHAO BJFS_URUM x y z -0.40903 -0.60208 0.78241 -0.14529 -0.35727 0.81118 -0.48006 -0.55981 0.78616 -0.26825 -0.30795 0.86264 CHAN_LHAZ -0.16709 -0.46507 0.77643 CHAN_SHAO -0.45949 -0.58129 0.74635 CHAN_URUM -0.2703 -0.40753 0.85069 LHAZ_SHAO -0.26097 -0.40457 0.83994 LHAZ_URUM -0.03105 -0.06489 0.78802 SHAO_URUM -0.3564 -0.33307 0.83838 4.2 结果对比

与第118天的小组解算结果比较,结果如下表(单位:m): 基线 BJFS_CHAN BJFS_LHAZ BJFS_SHAO BJFS_URUM CHAN_LHAZ CHAN_SHAO CHAN_URUM LHAZ_SHAO LHAZ_URUM SHAO_URUM

?x ?y ?z ?L -0.0035 -0.0003 -0.0074 -0.0011 0.0032 -0.0040 0.0024 -0.0072 -0.0008 0.0064 0.0102 -0.0018 0.0194 -0.0036 -0.0120 0.0091 -0.0138 0.0210 -0.0018 -0.0230 0.0051 -0.0050 0.0123 -0.0061 -0.0101 0.0072 -0.0113 0.0173 -0.0012 -0.0184 -0.0035 0.0008 0.0004 -0.0023 -0.0002 0.0007 -0.0017 0.0011 0.0001 0.0001 从上表可以看出,同组之间的解算记过最大在1.5cm左右,基本都在毫米级,

因此解算结果合格。

五 总结

因为Gamit是在Linux下运行的,以前没有接触过Linux系统,因此刚开始学习Linux和安装Gamit时遇到了很多问题,后来经过向老师请教和百度,终于安装成功,但是一执行Gamit命令总会提示命令找不到,后来在课上老师讲到是因为环境变量没有配置对。然后在刚开始解算时没有头绪,不知道怎么做,就带这上课时的印象再去看Gamit下的例子,跟着跑一遍,然后去百度搜索别人学习Gamit的心得,一步一步将五个站的基线解算完成。

但是,对Gamit的文件还不是很清楚,以及还有分布处理以及Globk没有学

习,这也是接下来需要多学习的地方。这几次课,跟着老师学到了很多,前几次课总是觉得很无聊,发现在Gamit数据处理过程中,都需要用的到,然后又去看老师的PPT。在解算过程中,需要多和小组成员讨论,遇到问题要多交流,最好解算完成相互比较,分析自己的设置参数,共同进步。

五 总结

因为Gamit是在Linux下运行的,以前没有接触过Linux系统,因此刚开始学习Linux和安装Gamit时遇到了很多问题,后来经过向老师请教和百度,终于安装成功,但是一执行Gamit命令总会提示命令找不到,后来在课上老师讲到是因为环境变量没有配置对。然后在刚开始解算时没有头绪,不知道怎么做,就带这上课时的印象再去看Gamit下的例子,跟着跑一遍,然后去百度搜索别人学习Gamit的心得,一步一步将五个站的基线解算完成。

但是,对Gamit的文件还不是很清楚,以及还有分布处理以及Globk没有学

习,这也是接下来需要多学习的地方。这几次课,跟着老师学到了很多,前几次课总是觉得很无聊,发现在Gamit数据处理过程中,都需要用的到,然后又去看老师的PPT。在解算过程中,需要多和小组成员讨论,遇到问题要多交流,最好解算完成相互比较,分析自己的设置参数,共同进步。

本文来源:https://www.bwwdw.com/article/azgd.html

Top