方偉華 周藍(lán)捷 閆 培 李文惠 汪 豪
?
地震數(shù)據(jù)處理系統(tǒng)Earthworm在福建地震預(yù)警系統(tǒng)項(xiàng)目中的應(yīng)用1
方偉華 周藍(lán)捷 閆 培 李文惠 汪 豪
(廈門(mén)地震勘測(cè)研究中心,廈門(mén) 361021)
本文介紹了USGS(美國(guó)地質(zhì)勘探局)開(kāi)發(fā)的Earthworm系統(tǒng)在福建地震預(yù)警系統(tǒng)項(xiàng)目中的應(yīng)用。該系統(tǒng)為開(kāi)源軟件,由C語(yǔ)言編寫(xiě),由不同模塊組建而成,每個(gè)模塊實(shí)現(xiàn)不同的功能,主要包括數(shù)據(jù)接收模塊、P波拾取模塊、地震定位報(bào)告產(chǎn)出模塊、地震事件圖件繪制模塊、地震波存儲(chǔ)容器等。同時(shí),用戶(hù)可以根據(jù)自己的需求編寫(xiě)相應(yīng)的功能模塊。文章對(duì)該系統(tǒng)的應(yīng)用進(jìn)行了介紹,內(nèi)容包括Earthworm系統(tǒng)的組織架構(gòu)、業(yè)務(wù)流程、軟件模塊的主要功能搭建與配置及軟件模塊之間的邏輯關(guān)系等,目的在于介紹該系統(tǒng)的架構(gòu)方法與使用心得,促進(jìn)該系統(tǒng)在地震行業(yè)內(nèi)得到應(yīng)用與推廣。
Earthworm USGS 簡(jiǎn)易烈度計(jì) 數(shù)據(jù)處理系統(tǒng)
福建省地震預(yù)警項(xiàng)目簡(jiǎn)易烈度計(jì)臺(tái)網(wǎng)系統(tǒng)用于評(píng)估地震對(duì)鄉(xiāng)鎮(zhèn)的影響,每個(gè)鄉(xiāng)鎮(zhèn)布置一個(gè)測(cè)站,按平均臺(tái)間距10km左右設(shè)置,單臺(tái)定位精度平均小于5km,最大不超過(guò)8km,運(yùn)行維護(hù)率≥90%。目前福建省地震預(yù)警系統(tǒng)的總體規(guī)劃分兩期實(shí)施:一期在地震活動(dòng)性較強(qiáng)或者地震影響較大的地區(qū),選擇人口較多和經(jīng)濟(jì)發(fā)達(dá)區(qū)域進(jìn)行設(shè)備安裝;二期在建設(shè)地區(qū),如閩西與閩北農(nóng)村山區(qū)等地稀疏布點(diǎn)。地震臺(tái)網(wǎng)數(shù)據(jù)處理系統(tǒng)主要采用Earthworm進(jìn)行搭建,擬在全省布設(shè)900臺(tái)簡(jiǎn)易烈度計(jì)。該數(shù)據(jù)處理系統(tǒng)由C語(yǔ)言編寫(xiě),由不同模塊組建而成,每個(gè)模塊實(shí)現(xiàn)不同的功能。該系統(tǒng)自從2015年6月正式運(yùn)行以來(lái),能夠正常接收各地震臺(tái)站的實(shí)時(shí)波形數(shù)據(jù),從而實(shí)現(xiàn)地震臺(tái)網(wǎng)中心地震速報(bào)、數(shù)據(jù)產(chǎn)出、數(shù)據(jù)管理等各項(xiàng)功能(王喆,2006)。
本文介紹了由美國(guó)地質(zhì)勘探局開(kāi)發(fā)的Earthworm系統(tǒng)的設(shè)計(jì)目標(biāo)、思想和原則,重點(diǎn)介紹了Earthworm框架結(jié)構(gòu)與各模塊功能的搭建與配置、Earthworm系統(tǒng)的架構(gòu)特點(diǎn)、主要工作原理和數(shù)據(jù)處理流程,以及其應(yīng)用于福建省地震預(yù)警項(xiàng)目的相關(guān)情況(吳永權(quán)等,2010)。
Earthworm項(xiàng)目始于1993年,主要目的是為了解決美國(guó)地震區(qū)域臺(tái)網(wǎng)出現(xiàn)的問(wèn)題。當(dāng)時(shí),區(qū)域內(nèi)的地震臺(tái)網(wǎng)存在的主要問(wèn)題有:觀測(cè)設(shè)備陳舊,自動(dòng)處理系統(tǒng)老化,維修費(fèi)用逐年增長(zhǎng);儀器性能落后,地震研究的發(fā)展需要從精密傳感器中獲取研究數(shù)據(jù);社會(huì)公眾需要新的、顯而易見(jiàn)的實(shí)時(shí)產(chǎn)品了解詳情;最后,經(jīng)費(fèi)不足導(dǎo)致大多數(shù)臺(tái)網(wǎng)不再支持區(qū)域系統(tǒng)的發(fā)展工作。
為了更好解決服務(wù)器老舊與新地震觀測(cè)儀器相結(jié)合的問(wèn)題,Earthworm項(xiàng)目應(yīng)運(yùn)而生。
Earthworm系統(tǒng)是以避免早期地震處理系統(tǒng)的設(shè)計(jì)缺陷,保證地震預(yù)警的順利實(shí)施為目標(biāo)而建設(shè)的。系統(tǒng)具有以下5個(gè)方面的優(yōu)點(diǎn):
(1)模塊化:在硬件以及軟件方面,系統(tǒng)把所執(zhí)行的每一個(gè)函數(shù)封裝成一個(gè)模塊,該模塊能獨(dú)立于其他模塊運(yùn)行。模塊化使得系統(tǒng)內(nèi)的任何一個(gè)關(guān)鍵性模塊能與系統(tǒng)內(nèi)的其他模塊保持獨(dú)立。因此,新的試驗(yàn)性需求模塊可以在不破壞現(xiàn)有系統(tǒng)的基礎(chǔ)上添加并保證良好的性能。
(2)系統(tǒng)獨(dú)立性:由于不同的模塊可獨(dú)立運(yùn)行在不同的計(jì)算機(jī)硬件和操作系統(tǒng)中,并作為一個(gè)系統(tǒng)運(yùn)轉(zhuǎn),因此該系統(tǒng)可以無(wú)中斷、在任意操作系統(tǒng)的計(jì)算機(jī)之間移植。在實(shí)際運(yùn)用中,只使用各種計(jì)算機(jī)系統(tǒng)標(biāo)準(zhǔn)化的部分,而不使用任何無(wú)法規(guī)避的系統(tǒng)特殊功能。
(3)可擴(kuò)展性:該系統(tǒng)提供較好的性?xún)r(jià)比以適應(yīng)各種類(lèi)型層次的網(wǎng)絡(luò)需求。同時(shí),用戶(hù)可定制個(gè)性的需求,編寫(xiě)新的模塊運(yùn)行。
(4)連通性:該系統(tǒng)能夠?qū)崿F(xiàn)與其它自動(dòng)實(shí)時(shí)系統(tǒng)、互動(dòng)分析系統(tǒng)以及各種發(fā)布方式之間快速可靠地通信。其目標(biāo)是在各層次提供自動(dòng)和交互式的接口,使系統(tǒng)的配置范圍可以從完全單機(jī)獨(dú)立操作到分布式系統(tǒng)單個(gè)節(jié)點(diǎn)的運(yùn)行。
(5)魯棒性:在地震危機(jī)時(shí)刻,由于輸入數(shù)據(jù)和電源可能中斷、系統(tǒng)負(fù)荷急劇增加,只有高魯棒性的地震報(bào)警系統(tǒng)才能向媒體和應(yīng)急機(jī)構(gòu)提供實(shí)時(shí)準(zhǔn)確信息。該系統(tǒng)針對(duì)地震處理數(shù)據(jù)的錯(cuò)誤檢測(cè)及恢復(fù)、恢復(fù)時(shí)間、故障弱化和負(fù)荷控制等問(wèn)題具有極好的可靠性(馬強(qiáng),2008)。
Earthworm系統(tǒng)中每個(gè)模塊都執(zhí)行特定的任務(wù),如數(shù)據(jù)采集,震相拾取等。模塊之間通過(guò)廣播和監(jiān)聽(tīng)(如波形數(shù)據(jù)包和相位撿拾等)各種消息來(lái)通信。消息傳遞類(lèi)似于無(wú)線(xiàn)電通訊:它由用于傳遞消息的“傳輸媒介”和一套標(biāo)準(zhǔn)模塊程序組成。這些模塊程序類(lèi)似于運(yùn)行在傳輸媒介中的多頻率雙向無(wú)線(xiàn)電設(shè)備。在傳輸媒介上模塊可以使用這些標(biāo)準(zhǔn)程序廣播并監(jiān)聽(tīng)。
福建省簡(jiǎn)易烈度臺(tái)網(wǎng)設(shè)備一期規(guī)模為300臺(tái)左右,通過(guò)中國(guó)電信的MPLS VPN組網(wǎng)方式將數(shù)據(jù)傳輸至廈門(mén)地震勘測(cè)研究中心與福建省地震局。每個(gè)觀測(cè)臺(tái)站提供2M SDH鏈路帶寬供烈度計(jì)上報(bào)數(shù)據(jù)使用,省局與廈門(mén)地震勘測(cè)研究中心分別采用一條10M光纖匯聚專(zhuān)線(xiàn)接入中國(guó)電信VPN平臺(tái),用于收集各觀測(cè)臺(tái)站數(shù)據(jù)。對(duì)于部分未鋪設(shè)SDH鏈路的區(qū)域,采用3G信號(hào)進(jìn)行輔助接入Earthworm的地震預(yù)警軟件框架系統(tǒng)。
基于Earthworm地震數(shù)據(jù)處理系統(tǒng)的架構(gòu)采用積木式組合的方式進(jìn)行搭建(圖1),主要包括:
第1部分,數(shù)據(jù)接收,通過(guò)MPLS VPN組網(wǎng)方式將各臺(tái)網(wǎng)觀測(cè)的烈度計(jì)產(chǎn)生的數(shù)據(jù)在數(shù)據(jù)中心進(jìn)行匯聚,主要采用Paler2ew模塊進(jìn)行功能搭建;
第2部分,地震波形展示,主要采用wave_server模塊進(jìn)行功能搭建;
第3部分,地震數(shù)據(jù)處理,主要采用pick_eew、tcpd、ShakeMap的模塊進(jìn)行功能搭建,pick_eew模塊負(fù)責(zé)自動(dòng)震相拾取功能,tcpd模塊負(fù)責(zé)地震定位與震級(jí)計(jì)算功能,ShakeMap模塊負(fù)責(zé)烈度圖繪制功能;
第4部分,地震數(shù)據(jù)存儲(chǔ),主要采用Tbuf2mseed、Ewmseed Archiver的模塊進(jìn)行功能搭建,Tbuf2mseed模塊負(fù)責(zé)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換功能,Ewmseed Archiver模塊負(fù)責(zé)進(jìn)行數(shù)據(jù)文件存檔的功能。
可以通過(guò)網(wǎng)址http://folkworm.ceri.memphis.edu/ew-doc/#overview下載最新的Earthworm安裝源碼包進(jìn)行安裝。目前福建省烈度計(jì)系統(tǒng)采用的最新版已更新為v7.9版,版本之間的主要區(qū)別在于系統(tǒng)模塊功能的差異(Earthworm官方網(wǎng)址,2015)。
Earthworm源碼包目錄結(jié)構(gòu)主要有bin,environment,ewdoc,include,include_app,params,src,lib等,下面分別對(duì)該源碼目錄功能進(jìn)行解釋?zhuān)?/p>
(1)bin目錄為系統(tǒng)可執(zhí)行程序存放位置;
(2)environment目錄為系統(tǒng)環(huán)境變量存放位置;
(3)include目錄為系統(tǒng)文件存放位置;
(4)include_app目錄為系統(tǒng)程序應(yīng)用存放位置;
(5)params目錄為各程序參數(shù)配置文件存放位置;
(6)src目錄為軟件源碼存放位置,可單獨(dú)重新編譯;
(7)lib目錄為程序執(zhí)行所依賴(lài)庫(kù)文件存放位置。
(1)安裝Earthworm前的環(huán)境準(zhǔn)備
在安裝Earthworm前,系統(tǒng)需要先安裝make、gcc、java這3個(gè)軟件,用于對(duì)Earthworm的程序包進(jìn)行編譯,3個(gè)軟件的安裝均可以通過(guò)yum源進(jìn)行安裝,命令如下:
yum install –y make&& yum install –y gcc&& yum install–y java
(2)創(chuàng)建安裝目錄結(jié)構(gòu)
當(dāng)前系統(tǒng)采用的是CentOS 7,64位操作系統(tǒng)進(jìn)行搭建,我們?cè)诟夸浵聞?chuàng)建一級(jí)目錄xmzk,然后再創(chuàng)建二級(jí)目錄earthworm,earthworm目錄下分別創(chuàng)建run目錄與earthworm_7.9源碼包,然后在run目錄下分別創(chuàng)建params目錄與logs目錄,目錄結(jié)構(gòu)如下所示:
/xmzk
/earthworm
/run
/params(各程序參數(shù)配置位置)
/logs(各程序日志文件存放位置)
/data(各臺(tái)站接收數(shù)據(jù)存放位置)
/earthworm_v7.9(源碼包)
(3)拷貝全局參數(shù)與環(huán)境變量至安裝目錄
將/xmzk/earthworm/earthworm_v7.9/environment目錄中的earthworm_global.d、earthworm. d、ew_linux.bash這3個(gè)文件拷貝至/xmzk/earthwom/run/params中。
(4)修改安裝環(huán)境配置文件
安裝Earthworm需要變更第二步拷貝至/xmzk/earthwom/run/params中的ew_linux.bash這個(gè)環(huán)境配置文件中幾處環(huán)境變量的值,以適應(yīng)我們自己的安裝環(huán)境與配置需求,主要有以下6處需要變更:
①export EW_HOME=/home/xmzk/earthworm #定義Earthworm安裝位置的環(huán)境變量
②export EW_VERSION=earthworm_7.9 #定義Earthworm版本的環(huán)境變量
③export EW_RUN_DIR=/home/xmzk/earthworm/run #定義Earthworm運(yùn)行位置的環(huán)境變量
④export EW_PARAMS=/home/xmzk/earthworm/run/params #定義Earthworm各模塊參數(shù)檔位置的環(huán)境變量
⑤export EW_LOG=/home/xmzk/earthworm/run/logs #定義Earthworm日志文件存放位置的環(huán)境變量
⑥export EW_DATA_DIR=/home/xmzk/earthworm/run/data #定義Earthworm波形數(shù)據(jù)文件存放位置的環(huán)境變量
(5)拷貝啟動(dòng)文件
拷貝Earthworm源碼包里params文件夾中的“startstop_unix.d”啟動(dòng)程序至/home/xmzk/ earthworm/run/params中,并根據(jù)自己的環(huán)境在文件中增加與刪除功能模塊。
(6)Earthworm運(yùn)行與開(kāi)機(jī)自啟動(dòng)
打開(kāi)終端命令行,鍵入“startstop”命令開(kāi)啟Earthworm,如果命令行中提示各模塊為alive說(shuō)明earthworm運(yùn)行正常,如有些模塊出現(xiàn)zoombi的字樣說(shuō)明該模塊未正常工作,需單獨(dú)檢查該模塊,逐一排錯(cuò),對(duì)其重新加載或編譯。
可以通過(guò)以下幾個(gè)步驟添加任一模塊功能:
第一步:編譯該模塊的源碼,編譯模塊功能命令:make–f makefile name(模塊名稱(chēng)),執(zhí)行完可生成該模塊的可執(zhí)行程序;
第二步:將編譯完成后的可執(zhí)行程序拷貝至/xmzk/earthworm/earthworm_v7.9/bin目錄下;
第三步:修改earthworm.d文件,在earthworm.d文檔中新增寫(xiě)入該模塊名稱(chēng)id與該模塊數(shù)據(jù)類(lèi)型,使得Earthworm系統(tǒng)可識(shí)別出該模塊;
第四步:復(fù)制該模塊的參數(shù)配置文件拷入/home/xmzk/earthworm/run/params中;
第五步:修改startstop.d文件,增加新的模塊,在startstop.d文檔中寫(xiě)入該模塊的執(zhí)行文件名稱(chēng)與配置文件名稱(chēng)。startstop.d參數(shù)檔的作用主要是定義ring的個(gè)數(shù)與定義需要開(kāi)啟多少模塊,需要開(kāi)啟的模塊功能均需寫(xiě)入該文件中;
第六步:執(zhí)行recon命令,重載startstop_unix.d文件,即可將該模塊加載到現(xiàn)在運(yùn)行的Earthworm環(huán)境中。
該模塊主要通過(guò)修改/home/xmzk/earthworm/run/params/palert2ew.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModuleId MOD_PALERT2EW #該模板實(shí)例的模塊ID號(hào)
02 RingName WAVE_RING #用于輸入/輸出的共享內(nèi)存
03 ServerIP 127.0.0.1 #接收套接字的服務(wù)器IP地址
04 ServerPort 23000 #接收套接字的服務(wù)器端口
該模塊主要通過(guò)修改/home/xmzk/earthworm/run/params/Wave_serverV.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModuleId MOD_WAVESERVERV # wave_server的模塊ID號(hào)
02 RingName WAVE_RING #定義從中獲取數(shù)據(jù)的傳輸內(nèi)存池的名稱(chēng)
03 ServerIPAdr 0.0.0.0 #定義運(yùn)行wave_server的機(jī)器的IP地址
0.0.0.0綁定到所有本地可用的IP
04 ServerPort 16022 #配置用于接收請(qǐng)求和發(fā)送波的端口號(hào)
05 TankStructFile /home/xmzk/earthworm/run/data/p1000-1z.str
#定義tank格式數(shù)據(jù)結(jié)構(gòu)
# SCNL Record Logo File Size Index Size File Name New
# names size(TYPE_TRACEBUF2 only) (megabytes) (max breaks) (full path) Tank
#EIZ SECTION
06 TankStructFile2 /home/xmzk/earthworm/run/data/p1000-2z.str
#定義tanks格式數(shù)據(jù)結(jié)構(gòu)
07 Tank D2301 EIZ FJ 00 464 INST_WILDCARD MOD_WILDCARD 40 80 /home/xmzk/earthworm/run/data/D2301_EIZ_FJ_00.tnk
#定義各臺(tái)站數(shù)據(jù)接收檔位置與結(jié)構(gòu)
08 Tank D2302 EIZ FJ 00 464 INST_WILDCARD MOD_WILDCARD 40 80 /home/xmzk/ earthworm/run/data/D2302_EIZ_FJ_00.tnk
09 InputQueueLen 400 #要緩沖的波形數(shù)值,一般設(shè)為通道數(shù)據(jù)的兩倍以上
該模塊主要通過(guò)修改/home/xmzk/earthworm/run/params/pick_eew.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModId MOD_PICK_EEW #定義模塊名稱(chēng)
02 StaFile "pick_palert_Z" #定義站名信息的文件名稱(chēng),該文件主要是用于定義測(cè)
站是否P波識(shí)取、STA短周期加速度平均值/LTA長(zhǎng)周
期加速度平均值的設(shè)置、Pa/Pv門(mén)檻值的設(shè)置等
03 InRing WAVE_RING #定義從哪個(gè)內(nèi)存池中接收數(shù)據(jù)
04 OutRing PICK_RING #定義接數(shù)據(jù)存放至哪個(gè)內(nèi)存池
05 HeartbeatInt 30 #心跳間隔,以秒為單位
06 EEWFile sta_palert_Z #P波形識(shí)取參數(shù)檔名,該文件主要是定義哪些臺(tái)站參
與P波識(shí)取計(jì)算,每個(gè)測(cè)站換算成gal的換算關(guān)系值,
每個(gè)測(cè)站是計(jì)算加速度還是速度等
該模塊主要通過(guò)修改/home/xmzk/earthworm/run/params/tcpd.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModuleId MOD_TCPD #該模板實(shí)例的模塊ID
02 RingName PICK_RING #定義讀取哪個(gè)共享池?cái)?shù)據(jù)
03 RingName_out EEW_RING #定義接處理數(shù)據(jù)存放至哪個(gè)共享池
04 MagMin 0.5 #地震規(guī)模大于0.5規(guī)模,產(chǎn)生報(bào)告
05 MagMax 10 #地震規(guī)模小于10規(guī)模,產(chǎn)生報(bào)告
#------------ For Small Event #地震報(bào)告觸發(fā)條件
06 Trig_tm_win 30.0 #定義每個(gè)觸發(fā)站之間的P波到達(dá)時(shí)間
07 Trig_dis_win 120.0 #定義每個(gè)觸發(fā)的站之間的距離
08 Active_parr_win 60.0 #定義每個(gè)站的存活時(shí)間(秒),P波到達(dá)時(shí)間和
當(dāng)前時(shí)間之間
09 GetEventsFrom INST_WILDCARD MOD_WILDCARD TYPE_EEW
#該模塊新創(chuàng)建的數(shù)據(jù)類(lèi)型,必須將該類(lèi)型寫(xiě)入
earthworm.d文件中
該模塊主要通過(guò)修改/home/xmzk/earthworm/run/params/shakemap.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModuleId MOD_SHAKEMAP #該模板實(shí)例的模塊ID
02 RingName WAVE_RING #用于輸入/輸出共享內(nèi)存池
03 LogFile 0 #0關(guān)閉磁盤(pán)日志文件;1將其打開(kāi)以記錄到模塊
日志,但不是stderr / stdout
04 HeartBeatInterval 15 #心跳之間的秒數(shù)
# Installation Module Message Types
05 GetEventsFrom INST_WILDCARD MOD_WILDCARD TYPE_TRACEBUF2 #該模塊新創(chuàng)建的數(shù)據(jù)類(lèi)型,必須將該類(lèi)型寫(xiě)入earthworm.d文件中
06 Report_path /home/xmzk/shakemap/ #圖件生成存儲(chǔ)位置
# 將要計(jì)算的臺(tái)站信息寫(xiě)入該配置文件中
07 SaveSCNL D2301 FJ 00 24.4646 117.9793 0.060427 0.060427 0.060427
08 SaveSCNL D2302 FJ 00 24.0000 117.0000 0.060427 0.060427 0.060427
09 SaveSCNL D2303 FJ 00 24.0000 117.0000 0.060427 0.060427 0.060427
10 SaveSCNL D2101 FJ 00 24.5384 118.1652 0.060427 0.060427 0.060427
11 SaveSCNL D2201 FJ 00 24.5706 117.9876 0.060427 0.060427 0.060427
12 SaveSCNL D2202 FJ 00 24.6308 118.0840 0.060427 0.060427 0.060427
13 SaveSCNL D2203 FJ 00 24.0000 117.0000 0.060427 0.060427 0.060427
14 SaveSCNL D2204 FJ 00 24.0000 117.0000 0.060427 0.060427 0.060427
該模塊的主要通過(guò)修改/home/xmzk/earthworm/run/params/ewmseed Archiver.d的參數(shù)文件進(jìn)行配置,其主要參數(shù)設(shè)置說(shuō)明如下:
# 參數(shù)設(shè)置 參數(shù)說(shuō)明
01 MyModuleId MOD_EWMSEEDARCHIVER #該程序的模塊ID
02 RingName MSEED_RING #用于輸入共享池
03 MaxLatency 1 #假設(shè)此網(wǎng)絡(luò)的最大延遲為1分鐘
04 HeartBeatInt 30 #EW內(nèi)部心跳間隔(秒)
05 LogFile 2 #如果為0,不要寫(xiě)logfile;如果1,寫(xiě)入
logfile,if 2,寫(xiě)入模塊日志但不寫(xiě)到
stderr/stdout文件中
# Installation Module Message Type
06 GetMsgLogo INST_WILDCARD MOD_WILDCARD TYPE_MSEED
#該模塊新創(chuàng)建的數(shù)據(jù)類(lèi)型,必須將該類(lèi)型
寫(xiě)入earthworm.d文件中
07 MaxMsgSize 4096 #輸入/輸出文件最大大?。ㄗ止?jié))
08 QueueSize 2048 #消息在輸出循環(huán)緩沖區(qū)
09 Send_scnl * * * * #存儲(chǔ)所有通道資料
10 Archive /home/xmzk/data/mseed/%Y/%n/%s/%c.D/%n.%s.%l.%c.D.%Y.%j.mseed #存儲(chǔ)位置與格式設(shè)置
在Earthworm應(yīng)用的過(guò)程中,對(duì)一些常用命令進(jìn)行了總結(jié),如表1(Earthworm官方網(wǎng)址,2010)。
表1 Earthworm常用命令
序號(hào)命令作 用示例 10ms2tb將miniseed文檔轉(zhuǎn)成tank文檔ms2tb [-n max-samples] infile >> outfile 11remux_tbu將地震觀測(cè)數(shù)據(jù)資料按時(shí)間進(jìn)行排序remux_tbuf
Earthworm地震數(shù)據(jù)處理系統(tǒng)可以通過(guò)swarm實(shí)時(shí)波形查看工具實(shí)時(shí)查看接收到的地震波(圖2),下載地址:https://volcanoes.usgs.gov/software/swarm/download.php。
圖2 地震波形實(shí)時(shí)查看
福建省地震局Earthworm系統(tǒng)硬件配置采用一臺(tái)HP DL580 Gen9服務(wù)器,4顆Inter至強(qiáng)E7-4820v3型號(hào)CPU,內(nèi)存128GB,從系統(tǒng)截圖(圖3)觀察Earthworm各模塊的資源利用率相對(duì)較低。
Earthworm數(shù)據(jù)錄入規(guī)則是一秒鐘一個(gè)封包,采樣數(shù)據(jù)分別錄入到各自的RING中,均可通過(guò)命令sniffwave查看獲取的數(shù)據(jù)結(jié)構(gòu),通過(guò)sniffwave命令查得RING中每秒鐘的數(shù)據(jù)結(jié)構(gòu)如圖4所示,主要包括臺(tái)站名稱(chēng)、數(shù)據(jù)封包時(shí)間、封包序列號(hào)、包長(zhǎng)度、波長(zhǎng)電頻信號(hào)等信息。
圖3 Earthworm硬件資源使用情況
圖4 PICK_RING數(shù)據(jù)結(jié)構(gòu)信息
Earthworm系統(tǒng)在地震到來(lái)時(shí)獲取4個(gè)臺(tái)站數(shù)據(jù)后就可以觸發(fā)計(jì)算,但還需驗(yàn)算,通過(guò)pick_eew進(jìn)行P波拾取,再通過(guò)tcpd模塊產(chǎn)出地震報(bào)告,主要工作流程如下:
第一步:進(jìn)行autopicking工作,若autopicking的pa及pv大于執(zhí)行模塊參數(shù)文件設(shè)定值,則將數(shù)據(jù)放進(jìn)PICK_RING里。執(zhí)行模塊的參數(shù)文件中提到的其中一個(gè)檔案就是設(shè)定picking條件的檔案;
第二步:tcpd模塊會(huì)先以PICK_RING的數(shù)據(jù)進(jìn)行g(shù)rouping。采用Geiger method,如果RMS太大,則剔除RMS最大的測(cè)站,若小于4個(gè)測(cè)站則停止計(jì)算,若是grouping的觸發(fā)測(cè)站達(dá)到6站則繼續(xù)執(zhí)行計(jì)算;
第三步:計(jì)算震源坐標(biāo)(,,)以及發(fā)震時(shí)間。利用(,,)計(jì)算到各個(gè)測(cè)站的理論走時(shí);
第四步:發(fā)震時(shí)間加上理論走時(shí),就是理論到時(shí)。如理論到時(shí)與autopicking的殘差residual太大,則回到第三步,重新計(jì)算新的震源(',','),執(zhí)行后續(xù)的步驟。如果residual一直無(wú)法收斂,則會(huì)將residual最大的測(cè)站剔除,再重新計(jì)算,若測(cè)站數(shù)小于4站,則停止計(jì)算。
通過(guò)該系統(tǒng)接收數(shù)據(jù)并進(jìn)行分析,得到地震報(bào)告的產(chǎn)出如圖5。
圖5 地震事件報(bào)告
通過(guò)系統(tǒng)中產(chǎn)生的數(shù)據(jù)得到的PGA地震加速度峰值分布圖如圖6所示。
圖6 PGA加速度峰值分布圖
Earthworm系統(tǒng)引進(jìn)了搭積木式模塊化架構(gòu)理念,將地震數(shù)據(jù)處理功能需求整合為6個(gè)軟件模塊,即數(shù)據(jù)接收模塊、實(shí)時(shí)波形查看、自動(dòng)震相拾取、定位與震級(jí)計(jì)算、數(shù)據(jù)格式轉(zhuǎn)換、數(shù)據(jù)文件存檔,各模塊各司其職又相互關(guān)聯(lián)。各模塊之間分工明確,結(jié)構(gòu)簡(jiǎn)單,具有優(yōu)秀系統(tǒng)架構(gòu)的穩(wěn)定性、跨平臺(tái)性、安全性、可擴(kuò)展性、可定制化等特點(diǎn)。Earthworm系統(tǒng)運(yùn)行穩(wěn)定,功能強(qiáng)大,深受用戶(hù)好評(píng)。其模塊化設(shè)計(jì),將龐大的系統(tǒng)功能分布運(yùn)行于多臺(tái)服務(wù)器,降低軟件系統(tǒng)對(duì)服務(wù)器的性能要求,且架構(gòu)配置簡(jiǎn)單,適合在各種不同規(guī)模的地震臺(tái)網(wǎng)進(jìn)行部署,用戶(hù)可以根據(jù)自己的需求采用不同方法組建系統(tǒng)。
馬強(qiáng),2008.地震預(yù)警技術(shù)研究及應(yīng)用.哈爾濱:中國(guó)地震局工程力學(xué)研究所.
王喆,2006.高速鐵路地震預(yù)警及快速反應(yīng)系統(tǒng)研究.世界軌道交通,(6):44—46.
吳永權(quán),黃文輝,2010.?dāng)?shù)據(jù)處理系統(tǒng)軟件JOPENS的架構(gòu)設(shè)計(jì)與實(shí)現(xiàn).地震地磁觀測(cè)與研究,31(6):59—63.
Earthworm官方網(wǎng)址,2015. Earthworm Documentation V7.9. (2015-04-24). http://folkworm.ceri.memphis.edu/ew-doc/.
Application of Earthworm on Earthquake Data Processing System in the Fujian Earthquake Early Warning System Project
Fang Weihua, Zhou Lanjie, Yan Pei, Li Wenhui and Wang Hao
(Xiamen Research Center of Seismic Exploration, Xiamen 361021, China)
This paper introduces the Earthworm system developed by USGS, which is an open source software and is written in C language. It consists of various modules and each module has different functions, including data receiving module, P-wave picking module, seismic positioning report output module, seismic event drawing module, and seismic wave storage module. The users can prepare the corresponding functional modules according to their own needs. In this paper we introduce the application of the system in the project of the earthquake early warning system in Fujian Province, including the organization of the Earthworm system, the business process, the main function of the software module and the logical relationship between different modules. The purpose of this paper is to provide the architecture and the application experience of the system, so that it can be applied and promoted in the earthquake study in future.
Earthworm; USGS; Facile seismic intensity meter; Data processing system
方偉華,周藍(lán)捷,閆培,李文惠,汪豪,2018.地震數(shù)據(jù)處理系統(tǒng)Earthworm在福建地震預(yù)警系統(tǒng)項(xiàng)目中的應(yīng)用.震災(zāi)防御技術(shù),13(1):226—236.
10.11899/zzfy20180121
福建省簡(jiǎn)易烈度計(jì)項(xiàng)目(項(xiàng)目編號(hào):2015DZLDY004)
2017-07-05
方偉華,男,生于1982年。工程師。主要從事地震業(yè)務(wù)系統(tǒng)運(yùn)維工作。E-mail:258279496@qq.com