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