GAMIT10.4安装(基于Ubuntu 10.04)
1、安装虚拟机VMware、Ubuntu10.04;
2、进入终端输入:sudo passwd root 为root用户创建密码,并以root用户登录,或sudo su回车;
3、系统更新、汉化;
4、安装gcc:# apt-get install gcc ;
5、安装csh: # apt-get install csh 修改bash为csh,重启;
6、安装gfortran : # apt-get install gfortran ;
7、安装libx11-dev库支持 # apt-get install libx11-dev ;
8、修改shall为bash,重启,并设置路径:
回到用户根目录,打开.bashrc ,在最后加上如下代码即可
export PATH=$PATH:/opt/gamit/gamit/bin:/opt/gamit/com:/opt/gamit/kf/bin export setenv HELP_DIR=/opt/gamit/help/
9、将gamit安装包放在目录opt/gamit/下
进入目录 :# cd /opt/gamit
10、修改install_software文件内容 : # gedit install_software , 打开install_software文件,在文件的中下部修改“usr -name libX11.a”为”usr -name libX11.so” 。(动态共享库)
11、运行install_software : # ./install_software, 按提示输入两次Y后,修改makefile.config ,在/opt/gamit/libraries里,修改Makefile.config中的一组参数
(1)MAXSIT 55 、MAXSAT 32 、MAXATM 25 、MAXEPC 5760
(2)# Specific to FC5(F6,F7,F8 )
然后,在输入两次Y完成安装;
12、安装完后,打开终端输入:doy,查看程序是否已正确安装。
(注:在root用户下安装完后,回到自己用户不能使用,
原因:需要修改软件的权限(chmod 777 软件名)
、数据准备阶段
(个人理解:这一过程可以先在windows下准备好,到时候再拷到linux的工程文件夹)
1.观测文件标准化:
1)观测文件o文件的文件名要小写,观测文件里的点名一般要大写。
2)认真检查观测文件内接收机类型、天线类型并查看GAMIT的ant.dat/rcvant.dat中是否有相应的类型,否则需要更新tables中的文件。
3)天线高及天线测量方式。
2.需要从网上下载的数据文件
1)http://www.ngs.noaa.gov/CORS/Gpscal.html 查询观测 0-files 文件所在的GPS周天,年积日与 UTC 之间的关系。
2)导航电文文件brdcdoyn.11n、精密星历*.sp3文件以及用到的IGS跟踪站 O-files数据。(导航电文文件下载autodoyn.11n;注意:文件名都要改成小写)
3.一些常见表文件说明
dcb.dat:码相关型接收机伪距改正参数统计表;(缺少这个文件基线处理最后一部会出错)
antmod.dat:天线相位中心参数文件;
rcvant.dat:接收机及天线名称对照表;
guess_rcvant.dat: (如果rcvant.dat中没有rinex头文件中的接收机或天线型号,将从该文件中获取,用户可以自己修改)(该文件在处理过程中会自己产生,一般没用不需要准备) otl_FES2004.grid: GAMIT10.4中的潮汐改正文件,696M
注:地球固体潮改正和海洋负荷潮改正:(详见《卫星导航定位新技术及高精度数据处理方法》p7-p8)
地球固体潮改正:摄动天体(月亮、太阳)对弹性地球的引力使地球表面产生周期性的涨落,称为固体潮现象。在小于100KM的GPS相对定位中,两个测站的固体潮影响几乎是相同的,在差分过程中可抵消,因此可不考虑此项改正。
海洋负荷潮改正:由海洋潮汐的周期性涨落所引起的。与固体潮类似,但小一个数量级。 需要每周更新的:
ut1.: 地球自转参数; ln –s ***
pole.:极移参数; ln –s ***
需要每年更新的:
leap.sec:跳秒表;
soltab.:太阳星历; ln –s ***
luntab.:月亮星力; ln –s ***
nutabl.:章动参数表; ln –s ***
gdetic.dat:各种大地坐标系参数;
pmu.usno: ln –s ***
grid.otc: ln –s ***(这个好像有问题,GAMIT10.4中不是这个文件)? svs_exclude.dat:需要剔除卫星列表;(没有的话,处理过程中会提示waring,但也可以计算)(注:应该是每次计算都需要更新的,个人理解)
vg_in:测站坐标速度表;
autcln.cmd:(注:如果没有的话,数据处理的最后一步 csh btest1.bat不能正常进行) 需要重点准备的:
sestbl:数据处理参数设置表;
sittbl:测站约束表;
station.info:测站信息表;
lfile.:站初始坐标(球坐标);(自己制作)
、文件准备阶段
1.文件结构整理
test:工程目录,在其下面包括:
1)tables/存放各种表文件;
2)igs/存放精密星历*.sp3文件;
3)rinex/存放观测数据文件*doyn.11文件;
4)brdc/存放广播星历文件brdcdoy0.11n文件;
5)doy1/ doy2/ ??/存放各个时段解算的文件及链接文件。
2.需要重点准备的4个文件
1) station.info:
记录各测站的站点、站点名称、开始观测时间、结束观测时间、天线高、 天线量测方法、接收机类型、软硬件版本号、天线类型等信息。严格按照已经给出的跟踪站格式编辑。(注意:要现在当前目录下拷入station.info文件,把内容删掉留下前面的几行,否则后面的步骤没法进行)
具体操作方法有二:
1、手动操作,按照相应文件格式对齐操作;可以从样本格式开始编辑。
2、自动提取观测文件的有关信息,生成 station.info 文件。
在各时段文件目录下操作:
sh_upd_stnfo –files site1doy0.yyo site2doy0.yyo –orbt igsf –u –ref ../tables/station.info
运行上述命令后,就自动从观测文件 0-files中提取重要信息,生成 station.info 文件。
我对station.info文件的准备(武大郭博峰):
1、rinex文件夹下新建文件夹all_station(存放所有点)
2、工程观测文件(o-files)复制到all_station,框架网(o-files)复制到all_station
3、进入Terminal
cd test/rinex/all_station
sh_upd_stnfo –files *.11o -ref station.info(此文件为软链接文件,从~/不常更新表/station.info 链接至指定文件夹下,且只有一个表头)
4、查看station.info文件是否正确
gedit station.info
5、将得到的station.info复制到lfiles文件夹下
2) l-file:
记录各测站的近似坐标: Gamit要求是球面坐标,即l-file。将所有 o 文件整理在一起,然后分别运行如下命令:
grep POSITION *.11o > lfile.rnx
rx2apr lfile.rnx 2011 250 (注:根据所有的o文件中的x、y、z取平均值,文件名为lfile.rnx.apr)
gapr_to_l lfile.rnx.apr lfile. “ “ 2011 250
我对l-file文件的准备(武大郭博峰):
1、在rinex文件夹下新建文件夹all_data(存放所有点)
2、进入该文件夹:cd test/rinex/all_data
3、提取POSITION
grep POSITION *.11o >lfile.xyz
4、查看lfile.xyz文件是否正确
–s ../tables/soltab.2011.J2000 ./soltab.
ln –s ../tables/nutabl.2011 . /nutabl.
ln –s ../tables/pole.usno . /pole.
ln –s ../tables/ut1.usno . /ut1.
ln –s ../tables/pmu.usno . /pmu.
另外,潮汐改正文件也是很容易出错的文件。以10.4版本为例, 默认的潮汐 改正文件名为otl.grid(此文件为损坏文件)(链接前是otl._FES2004.grid )。一定要检查一下 otl.grid 是否是真实链接,出现死链接的情况需要手动链接。命令为:
ln -s ../tables/otl._FES2004.grid ./otl.grid (我在算的时候没有用这个文件,下次试试用)
(注意:链接时,如果该文件夹中已有该文件,无论链接成功与否,要重新链接时都要先删除原文件在进行链接。)
、数据处理阶段
一、批处理
1) 运行makexp 程序,生成输入文件
sh_makexp –expt test –orbt igsf –yr 2011 –doy 250 –sess 99 –srin –nav brdc2500.11n –apr lfile. –sinfo 15 00 00 5760
或者:直接运行 makexp,然后按提示输入
2) 运行sh_sp3fit 脚本,生成轨道初始根数;
(曾由于ut1.链接的不是最新的,导致错误。)
sh_sp3fit –f igs15623.sp3 –o igsf –d 2011 250 –r BERNE –t –u
3) 运行sh_check_sess 脚本,检查卫星一致性;
sh_check_sess –sess 250 –type gfile –file gigsf1.250
4) 运行makej 程序,生成卫星钟差文件;
makej brdc2500.11n jbrdc1.250
5) 运行sh_check_sess,检查卫星一致性;
sh_check_sess –sess 250 –type jfile –file jbrdc1.250
6) 运行makex 程序,生成X 文件;
makex test.makex.batch
7) 运行fixdrv 程序,生成批处理文件;
fixdrv dtest1.250 (进行这步可能发生错误,提示
FATAL :121202:2337:41.0 FIXDRV/armake: Invalid T-file interval = 10 27 2012 10 27 2012 –need either T-file or one X-file to run FIXDR 修改fixdrv/armake.f 文件中的2010为2099或9999)并在此目录下运行 make -f Makefile 进行重新编译。
8) 运行fixdrv 生成的批处理文件
csh btest1.bat 运行此命令前先把GAMIT.FATAL 和 GAMTI.WARNING 删除
二、 gamit 基线处理结果质量评价指标: (检验q文件)
A)标准均方根 nrms解算结果为 0.25左右,若是 nrms大于 0.5 ,表明处理结果是有问题的(例如:周跳没有修复;测站的起算点坐标有问题等)。若是nrms小于 0.5 ,则认为成功解算, 否则需要检查原因,重新处理;
B) 查看gamit基线解算精度,一般要求相对精度达到10-8~10-9
C) 检查所有测站点是否都参与计算
说明:如果有问题,需要查看
1.查看station.info文件: REC#、 ANT#、 HtCod
IGS跟踪站的天线高都是到DHARP的。
外业观测的需要问清楚当时量取天线的位置。
2.查看sestbl文件
1) 高度角 Elevation Cutoff(不能是0°,按规范来为15°);
2) Choice of Observable 长基线选择LC_help、短基线选择L1\L2 Independent
3) 其他小错误该正项
GAMIT相关阅读:http://www.linuxidc.com/GAMIT/
GAMIT10.4及最新版本的GAMIT下载在Linux公社5号FTP服务器,具体下载见 http://www.linuxidc.net/thread-1186-1-1.html
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2016-02/128250p2.htm
附录1:下载IGS观测数据的网站
garner.ucsd.edu
everest.mit.edu
cddis.gsfc.nasa.gov
广播星历:ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/2010/brdc/ 精密星历:http://www.rvdi.com/freebies/gpscalendar.html
tables表:ftp://garner.ucsd.edu/pub/gamit
IGS站点的ITRF坐标:http://sopac.ucsd.edu/cgi-bin/sector.cgi IGS站点的O文件:
ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/
例如ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/2010/326/10o/
广播星历和IGS站点O文件的总目录:
ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/
全球IGS站点分布图:http://igscb.jpl.nasa.gov/network/netindex.html
数据准备中可能用到的资源地址:
各种星历表文件更新在 http://garner.ucsd.edu/pub/gamit/tables/
全球igs分布图 http://igscb.jpl.nasa.gov/network/complete.html
igs站点rinex文件下载 http://garner.ucsd.edu/pub/rinex/
igs站点广播星历下载 http://garner.ucsd.edu/pub/nav/
sp3文件下载 http://garner.ucsd.edu/pub/products/
一个很系统的教程 http://seismo.berkeley.edu/~battag/GAMITwrkshp/wrkshp.html
附录2:GAMIT文件说明
A-文件:ASCII 码的T 文件。
B-文件:控制批处理的数据文件。
C-文件:残差(O-C)和偏导数文件。
D-文件:时段和接收机开关文件。
E-文件:广播星历文件或RINEX 的导航文件。
G-文件:初始轨道状态向量和光压参数值文件。
H-文件:GAMIT 解输出的方差协方差文件,是GLOBK 的输入文件。 I-文件:接收机多项式钟差文件。
J-文件:卫星多项式钟差系数文件。
K-文件:从伪距得到的接收机钟差文件。
L-文件:测站坐标文件。
M-文件:控制C-文件和SOLVE 模块和编辑模块的文件。
N-文件:autcln.sum.posfit 生成的数据加权文件。
O-文件:用于事后分析的解文件(强约束)。
P-文件:MODEL 运行过程记录文件。
Q-文件:分析结果文件。
S-文件:测站坐标和天线文件(已不使用)。
T-文件:表格化的星历文件。
U-文件:测站海潮文件。
V-文件:SINCLN,DBLCLN 和SCANRMS 的编辑输出文件。
W-文件:气象数据文件。
X-文件:预处理后的观测数据文件。
Y-文件:卫星YAW 偏航文件。
Z-文件:水汽辐射计数据文件。
Sestbl.中的几个选项说明
一、Choice of Observable=
1、LC AUTCLN 意味着观测值是无电离层的线性组合,当前的默认值,因为现有的接收机可同时接收L1和L2波段上的P码,所以新方案的效果总是较为理想尤其是用于在长基线时;2、由于接收机信号的交叉相关性(96年之前的接收
(4).atl大气潮汐荷载模型和met气象模型是软件中保留的模型,目前(截至2007年7月)尚未开发。
(5).现在的GAMIT/GLOBK软件把改正模型中的栅格文件都分离出来,需要到
[url=ftp://erverest.mit.edu]ftp://erverest.mit.edu[/url](不需要权限)下载。并做好tables中的各种link。
*.Sp3文件说明 下面对sp3
文件做个简单格式说明。文件部分截图如下:
第一行的第二列为版本,这里为a,后续高版本将依次按照字母顺序命名;
第三列P表示坐标,注意有的版本包含速率的时候该字符为V,接着为时间(4-7列(年)、9-10列(月)、12-13列(日)、15-16列(时)、18-19列(分)、21-31列(秒));
96代表历元数(33-39列);
IGS00代表坐标系统(47-51列)。
第二行 1148表示GPS周(4-7列);
0.00000000周内秒(9-23列);
900.00000000历元间隔(25-38列);
52280儒略日(40-44列);
0.0000000000000儒略日小数秒(46-60)。
第三行到第七行为卫星编码,其中第三行的28为卫星数(5-6列)。
第八行至第十二行为精度。
十三至十八行不说了。
19到22行为注释行。
23行观测历元:4-7列(年)、9-10列(月)、12-13列(日)、15-16列(时)、18-19列(分)、21-31列(秒)。
24行第一列为P(位置,单位km),2-4列卫星号,
5-18列 x坐标,
19-32 列 y 坐标
33-46列 z 坐标 (注意当第一列标识为V表示速率时候,其单位为分米/秒(dm/sec)) 47-60列 钟差(单位微妙,当第一列标识为V时表示时间变化率,其单位为毫秒/秒(microsec/sec))。
注意如果数据行第75列有’E‘字符,表示卫星坐标或者钟记录存在事件。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-02/128250.htm