肖根如,甘衛(wèi)軍,帥 菲
(1.地震動力學國家重點實驗室,中國地震局地質研究所,北京 100029;2.東華理工大學地測學院,江西撫州 344000)
GIPSY在Linux系統(tǒng)上的安裝與使用①
肖根如1,2,甘衛(wèi)軍1,帥 菲2
(1.地震動力學國家重點實驗室,中國地震局地質研究所,北京 100029;2.東華理工大學地測學院,江西撫州 344000)
GIPSY是美國JPL開發(fā)的高精度GPS后處理軟件,可用于GPS地殼形變數(shù)據(jù)處理。由于GIPSY的源代碼不公開,針對性強,因此使用相對GAMIT和Bernese較少,同時舊版本安裝有一定難度。本文以GIPSY5.0的安裝為例,說明其安裝及其基本使用。
GIPSY;Linux系統(tǒng);安裝;使用
Abstract:GIPSY is a software from Jet Propulsion Laboratory in United State to post-process the GPS observations with high precision.It becomes more popular in GPS crustal deformation data process fields.As we known that GIPSY's source code is hard to obtain which aimed at the high precision GPS process and strong pertinences,so its user numbers is much less than GAMIT and Bernese.Meanwhile its preview version is difficult in installation that required basic LINUX knowledge.This paper intends to introduce the installation of GIPSY 5.0to help the basic user to learn and use the software.
Key words:GIPSY;Linux system;Installation;Using direction
GIPSY軟件是由美國加州理工學院噴氣推進實驗室(Jet Propulsion Laboratory,JPL)開發(fā)研制的GPS數(shù)據(jù)后處理軟件。除了GPS數(shù)據(jù),軟件還可以處理SLR、Topex、Doris等觀測數(shù)據(jù)。GISPY可以處理不同模式的靜態(tài)數(shù)據(jù),也可以處理動態(tài)數(shù)據(jù)。因為計算采用均方根信息濾波算法特點,具有較高的數(shù)值穩(wěn)定性,因此應用于GPS精密定軌、GPS氣象學、對流層參數(shù)求解、太陽耀斑等高精度空間領域[1-4]。
由于GIPSY在美國之外一般只給研究機構,大學等組織使用,必須通過郵件或傳真方式申請獲取軟件許可,國內也只有一些機構如中國地震局、中科院、中國測繪科學研究院等研究機構使用,因此很大程度上限制了其在國內的推廣及使用。不像GAMIT軟件那樣源代碼開放,且有關安裝的介紹也比較多[5-6],由于GIPSY不開放源代碼,介紹GIPSY安裝的文獻相比很少,所以在國內至今使用不普遍。估計今后一定時期內仍慢慢推廣發(fā)展。GIPSY支持大多數(shù)的Unix/Linux操作系統(tǒng),如Sun、Solaris、RedHat?;诖朔N情況,本文介紹GIPSY在IBM System 3500+Fedora 6環(huán)境下的安裝和使用,供感興趣的研究人員參考。
最新GIPSY版本為5.0,新版本已經比舊版在安裝上有很大的改進,不需要在指定的目錄下安裝,同時也可以不用設置幾個快捷方式;在功能上增加了天線校正、新軌道和時鐘產品支持、處理大于1Hz的高頻數(shù)據(jù)等;在模型上更新了對流層映射函數(shù)模型、潮汐模型等[7]。可以說這個版本有了一個比較全面的提高。GIPSY可以從JPL的網站上下載使用,申請網址(https://gipsy-oasis.jpl.nasa.gov/gipsy/software.html),申請成功后就可以下載安裝了。
下載的文件主要有:
gen_dep_links.py 生成相關鏈接
Release_Notes_5.0.pdf 版本發(fā)布說明
goa-var.tgz GIPSY主要程序
goa-5.0.Linux86.tgz GIPSY主要數(shù)據(jù)庫表
goa-5.0-1.WS4.i385.rpm GIPSY安裝包
準備GIPSY的安裝文件之后,需檢測一下計算機的軟件環(huán)境,檢查是否已安裝以下的運行軟件包:Perl 5.8.8、Python 2.4.1、Tcsh 6.12、Perl-DateManip 5.40、Perl-XML-Parser 2.31、Gnuplot 4.0.、Ncompress 4.2.4.。注意需要達到上述的版本號或更高。大部分的Linux系統(tǒng)會自帶有。我們通過Yumex檢查,發(fā)現(xiàn)在Fedora 6系統(tǒng)上只有Ncompress沒有安裝,下載安裝即可。
默認是將軟件安裝在/opt/goa-5.0和/var/opt/goa目錄下,因此可能需要root權限。如果安裝在用戶的自己目錄下,則可以不用root權限,但最后需要設置一個快捷方式時還是需要。安裝軟件一種是通過安裝包安裝,一種是通過壓縮包安裝。我們選擇通過壓縮包安裝,以便熟悉安裝流程。首先安裝主要模塊程序,步驟為
#cd/opt
#tar zxvf~/goa-5.0.Linux86.tgz 解壓壓縮包到當前目錄下
#ln-s goa-5.0goa 生成快捷方式
然后安裝各種表格,用戶可修改文件,步驟為
#cd/var/opt
#tar zxvf~/goa-var.tgz 解壓壓縮包到當前目錄下
#mv goa-var goa
接著更新權限,假設設置GPS_Group是需要使用這個軟件的用戶組,執(zhí)行
#chgrp-R GPS_Group/var/opt/goa 設置GPS_Group對目錄所有權
#chmod-R g+w/var/opt/goa 設置對目錄的讀寫權
轉到使用用戶下面,因有些文件需要每天更新,所以需要生成一個維護進程
$crontab-e 寫一新的守護進程
把以下內容復制進去
33 5***GOA/ETC=/var/opt/goa/etc GOA_TP=/var/opt/goa/time_pole/opt/goa/crons/update_gipsy_files.py-u
此句是說明在早上5點33分運行update_gipsy_files.py,并更新GOA/ETC、GOA/TP下面的文件,保存退出。最后在/目錄下創(chuàng)建一個快捷方式/goa
#ln-s/opt/goa-5.0/goa
通過壓縮包的安裝方式完成了安裝。另外也提供了安裝包,相對簡單些
#rpm-ivh goa-5.0-1.WS4.i385.rpm
即會默認安裝是在/opt/goa-5.0和/var/opt/goa目錄下。如果需要改變安裝目錄,使用--relocate參數(shù)。但也需要這些設置用戶組,更新權限,寫守護進程等。
驗證的內容包括檢查網絡環(huán)境、運行Point-position,Jason,Point-amb解算。
首先是用戶環(huán)境初始化,我們使用的BASH環(huán)境,執(zhí)行
$./opt/goa-5.0/rc_gipsy.sh(BASH環(huán)境,前面有個小點)
若是在CSH環(huán)境,則是運行
$source/opt/goa-5.0/rc_gipsy.csh
設置好軟件運行路徑后,接著更新表目錄
$$GOA/crons/update_gipsy_files.py-u
因為安裝包是已經打好的包,有些文件是每天進行更新,運行后如果網絡通暢的話,會顯示一串文件更新的提示信息。最后解壓測試包,進行測試
$tar zxvf$GOA/verify.tar.gz
$cd verify
$./verify.pl
如果網絡正常的話,會有提示軟件版本,路徑,執(zhí)行單點定位,地球低軌道,模糊度的運行時間和結果。我們所使用的機器最終測試顯示是
Point positioning was successful Elapsed time:38seconds
JASON orbit determination successful Elapsed time:190seconds
point_amb successful Elapsed time:136seconds
最終會提示
All is well,may your data be good.
說明所有都正常,安裝正確。即可利用它進行GPS數(shù)據(jù)處理了。
第一次安裝時,會遇到按照安裝說明一步步操作,然而當關閉終端后再運行GIPSY的程序會出現(xiàn)錯誤。如在終端執(zhí)行ninja(功能:讀取rinex文件,刪除野值和檢測周跳,按指定的時間間隔分割數(shù)據(jù)并轉換成快速測量文件功能),提示找不到這個程序或提示運行錯誤。大部分的系統(tǒng)程序都會提示這個問題,原因是在于路徑沒有設置好。第一次運行時不提示問題是因為運行程序前我們執(zhí)行了rc_gipsy.sh或rc_gipsy.csh,這個腳本會將程序的路徑指定從而讓程序正確運行。因此在運行GIPSY時須先運行rc_gipsy.sh或rc_gipsy.csh。但每次這樣做比較麻煩,因此我們考慮將路徑寫入文件中去解決,具體方法是參照rc_gipsy.sh或rc_gipsy.csh內容修改.bashrc或.cshrc文件。我們使用的是BASH,則需要改.bashrc文件(只列出修改部分)
ARCH=`/goa/bin/arch`
AWK=/bin/awk
LANG=en_US
#GIPSY OASIS Environment Variances
export GOA=/opt/goa-5.0
export GOA_ETC=/var/opt/goa/etc
export GOA_STA_INFO=/var/opt/goa/sta_info
export GOA_EPH=/var/opt/goa/eph
export GOA_TP=/var/opt/goa/time-pole
export GOA_LIB=$GOA/libsrc
export PYTHONPATH=$GOA/lib/python
#User specific environment and startup programs
PATH0=$GOA/bin:$GOA/bin/$ARCH
PATH=$PATH0:.:$PATH
export ARCH
MANPATH=/usr/man:/usr/local/man:$GOA/man保存文件退出,再運行bash更新一下環(huán)境,這樣就不再需要每次運行軟件時運行rc_gipsy.sh配置文件。
因為要保證數(shù)據(jù)處理的結果精度,我們需要不間斷地進行驗證以確保結果可靠。因此在驗證的時間有些時候可能會在解算前面二項正常,但解算模糊度通不過,最后提示
Sorry there is something wrong.Verification failed.
解決辦法:①可能是網絡問題,檢查網絡再運行;②可能是JPL的FTP服務器負載過大導致問題,如下載文件超時。
出現(xiàn)這樣的問題只要多運行幾次即可,因為有些時候是網絡問題導致,不是程序本身的問題所導致的。
若想運行時與老版本一樣的話,可以運行
$gen_dep_links.py-a
會有提示怎么創(chuàng)建快捷方式。若備份有舊版軟件,則可參照知道建立以下快捷方式
#ln-s/var/opt/goa/eph/eph
#ln-s/var/opt/goa/etc/etc
#ln-s/var/opt/goa/sta_info/goa/sta_info
#ln-s/var/opt/goa/time_pole/time_pole
#ln-s/opt/goa-5.0/libsrc/335libs
設置完畢后就可以和舊版本一樣使用。以前寫的程序也可以不用修改直接運行,方便代碼的移植和分發(fā)。
我們可以從IGS的FTP網站上下載觀測數(shù)據(jù),也可以利用測試的數(shù)據(jù)進行計算。如測試的文件是從韓國的數(shù)據(jù)中心KASI服務器上下載IGS連續(xù)站GOL2在2004年8月21日的觀測數(shù)據(jù)。在本機運行可以采用TK-GIPSY的圖形界面方式,也可以采用軟件提供的批處理方式gd2p.pl,利用perl編寫的自動化命令序列,調用各個處理函數(shù),實現(xiàn)坐標計算。我們采用gd2p.pl處理方式來進行計算,處理的命令
(gd2p.pl-i gol22340.04o-n GOL2-r 300-type s-d 2004-08-21>gd2p.log)>&gd2p.err
因GOL2是全球公開的IGS站點,因此可將文件gol22340.04o上傳到JPL網站上快速定位(Instant Positioning,http://apps.gdgps.net/),參數(shù)設置成與本機一樣,高度截止角10°,靜態(tài)雙頻P碼數(shù)據(jù),輸出時間間隔300s。它會將結果打包顯示,可以選擇下載或重新計算等。提取驗證程序verify.pl中的比較部分程序,將二個結果作對比,發(fā)現(xiàn)一般網上計算結果精度稍差些。雖然如此,網絡上計算結果還是可以利用的,尤其是當觀測文件頭信息中沒有給出初始坐標時,是一個比較好的選擇。當然,若是本地數(shù)據(jù),涉及數(shù)據(jù)保密及安全問題,則嚴禁采用此種方式進行測試。
本文介紹了GIPSY在Linux操作系統(tǒng)下的安裝及使用。二種軟件都可以從網絡下載,GIPSY的下載稍微復雜些。我們也試著將軟件安裝在普通的工作站運行,效果也是一樣的,這對普通用戶來說是可以考慮的。而GIPSY的GPS數(shù)據(jù)處理準備的參數(shù)比較少,非常適合初學者使用。處理過程中如果有什么問題可以將問題發(fā)表在JPL的官網論壇(https://gipsy-oasis.jpl.nasa.gov/ubb-cgi-bin/ultimatebb.cgi/)上,管理員及其他會員會專門解答處理。當然,GIPSY在實際應用中可能會遇到各種的問題,還需要用戶自己不斷探索和研究。
[1] Lichten S M,J S Border.Strategies for High-Precision Global Positioning System Orbit Determination[J].J.Geophys.Res.,1987,92(B12):12751-12762.
[2] Yunck T P,W I Bertiger,S C Wu,et al..First assessment of GPS-based reduced dynamic orbit determination on TOPEX/Poseidon[J].Geophys.Res.Lett.,1994,21(7):541-544
[3] 宋淑麗,朱文耀,廖新浩.地基GPS氣象學研究的主要問題及最近進展[J].地球科學進展,2004,19(2):250-259.
[4] 暢毅,袁玉斌,尹柱庭.太陽耀斑對GPS單點定位結果的影響與分析[J].石油儀器,2008,22(3):76-79.
[5] 程曉,張艷梅,鄂棟臣,等.在PC機上運行GAMIT/GLOBK軟件包[J].測繪通報,2003,(1):4-6.
[6] 王留朋,過靜珺,金慧華,等.GAMIT在LINUX操作系統(tǒng)上的安裝和使用[J].全球定位系統(tǒng),2005,(6):43-46.
[7] Jet Propulsion Laboratory.GIPSY 5.0Release Note[Z].California Institute of Technology,2008.
[8] 殷海濤,李杰,張玲,等.基于GPS觀測網的山東地區(qū)地殼運動特征分析[J].西北地震學報,2008,20(3):276-281.
[9] 尹繼堯,徐平,吳培稚.快速精密星歷替代精密星歷定位的初步研究[J].西北地震學報,2006,28(1):36-41.
Installation and Using Direction of GIPSY on Linux Operating System
XIAO Gen-ru1,2,GAN Wei-jun1,SHUAI Fei2
(1.State Key Laboratory of Earthquake Dynamics,Institute of Geology,CEA,Beijing 100029,China;2.Faculty of Geosciences and Survey Engineering,East China Institute of Technology,F(xiàn)uzhou Jiangxi 344000,China)
P315-391
B
1000-0844(2011)01-0102-03
2009-06-27
國家自然科學基金(40674055);973計劃子課題(2008CB425703)
肖根如(1978-),男(漢族),江西新干人,講師,在讀博士,主要從事GPS數(shù)據(jù)處理及地殼形變分析研究.