李 赫 龔永儉 劉 磊 劉雙慶 譚毅培 高 也 尚先旗 胡培元
?
MATLAB在數(shù)字地震觀測報(bào)告編制中的應(yīng)用
李 赫 龔永儉 劉 磊 劉雙慶 譚毅培 高 也 尚先旗 胡培元
(天津市地震局,天津 300201)
數(shù)字地震觀測報(bào)告是計(jì)算視應(yīng)力等重要參數(shù)的基礎(chǔ)性資料。JOPENS數(shù)據(jù)服務(wù)可提供地震目錄,為使用ESSA軟件計(jì)算視應(yīng)力等參數(shù)提供了前提,但ESSA與JOPENS數(shù)據(jù)服務(wù)沒有程序接口,需要從JOPENS數(shù)據(jù)服務(wù)網(wǎng)站手工下載地震目錄并按需求人工篩選數(shù)據(jù)編制成數(shù)字地震觀測報(bào)告。針對手工編制數(shù)字地震觀測報(bào)告效率低且容易出錯的問題,利用MATLAB開發(fā)出一套程序,對數(shù)字地震觀測報(bào)告的編制實(shí)現(xiàn)了自動化處理,大大提高了工作效率,降低了出錯率,能夠更好地為地震分析預(yù)報(bào)工作提供數(shù)據(jù)服務(wù)。
MATLAB 地震觀測報(bào)告 編制 視應(yīng)力 地震預(yù)報(bào)
地震觀測報(bào)告是地震定位過程中產(chǎn)出的、以一定技術(shù)規(guī)范編輯生成的文本報(bào)告,它是區(qū)域測震臺網(wǎng)觀測產(chǎn)出的最終成果之一,是具有廣泛使用價值的地震基礎(chǔ)資料,在地震活動性統(tǒng)計(jì)分析、地殼速度結(jié)構(gòu)、地震精定位等研究工作中發(fā)揮著重要的作用(馮建剛等,2012)。隨著寬頻帶數(shù)字地震學(xué)的發(fā)展,“新參數(shù)地震目錄”的產(chǎn)生,為計(jì)算視應(yīng)力等更多的參數(shù)提供了可能。視應(yīng)力表征了對引起地震滑動平均應(yīng)力水平的一種估計(jì),也是對當(dāng)?shù)亟^對應(yīng)力水平的一種估計(jì),它已被應(yīng)用于地震預(yù)報(bào)的研究中,并有著良好的發(fā)展勢頭。例如:陳學(xué)忠等(2007)利用北京數(shù)字遙測地震臺網(wǎng)觀測到的波形資料,測定了河北文安“空區(qū)”邊緣發(fā)生的20次≥2.0級地震的視應(yīng)力,分析了“空區(qū)”形成過程中這些地震的視應(yīng)力隨時間的變化;劉紅桂等(2007)選取1999年7月—2005年4月云南省數(shù)字地震臺網(wǎng)記錄到的中小地震數(shù)字化波形資料,計(jì)算得到了1020次中小地震的視應(yīng)力值,發(fā)現(xiàn)在云南地區(qū)地震視應(yīng)力具有較好的預(yù)測意義;楊志高等(2009)計(jì)算了首都圈地區(qū)2003年9月到2007年12月,117個>2.5級地震的視應(yīng)力,結(jié)果顯示視應(yīng)力在邢臺、唐山和晉冀蒙交界處的空間分布有不同的特征,在2006年7月發(fā)生5.1級地震的文安北東方向有一個較大的視應(yīng)力值,唐山地區(qū)視應(yīng)力從南西到北東方向大體是增加的。然而,計(jì)算視應(yīng)力的常用軟件ESSA,雖需依托JOPENS數(shù)據(jù)服務(wù)提供的地震目錄所創(chuàng)建的數(shù)字地震觀測報(bào)告(報(bào)告格式與JOPENS產(chǎn)出的地震目錄格式有區(qū)別),卻與JOPENS數(shù)據(jù)服務(wù)沒有程序接口。以往地震目錄的下載、篩選和加工全部由手工完成。如此大數(shù)據(jù)量地震目錄的篩選和加工,手工處理的效率難免會顯得極為低下且易出現(xiàn)人為錯誤。為此,筆者研究開發(fā)出一套基于MATLAB的應(yīng)用程序,該程序能夠從JOPENS數(shù)據(jù)服務(wù)提供的地震目錄中,按照ESSA的輸入要求自動生成數(shù)字地震觀測報(bào)告,加之相應(yīng)的地震波形文件,能夠快速計(jì)算出視應(yīng)力等參數(shù),從而可更好地為地震分析預(yù)報(bào)工作提供數(shù)據(jù)服務(wù)。
MATLAB是Mathworks公司開發(fā)的大型數(shù)學(xué)計(jì)算應(yīng)用軟件系統(tǒng)。它提供了強(qiáng)大的矩陣計(jì)算和可視化功能,是科學(xué)研究及工程應(yīng)用方面的主流軟件。MATLAB最早的版本出現(xiàn)在20世紀(jì)70年代,用FORTRAN語言編寫,主要功能是實(shí)現(xiàn)程序庫的接口功能。進(jìn)入20世紀(jì)90年代以后,MATLAB發(fā)展成為國際公認(rèn)的標(biāo)準(zhǔn)計(jì)算軟件,在數(shù)值計(jì)算方面的功能不斷增強(qiáng)。MATLAB的內(nèi)核采用C++語言進(jìn)行編寫,因此語法特征與C++語言極為相似,而且相比更加簡便易用,更加符合科技人員對數(shù)學(xué)表達(dá)式的書寫格式要求,使之更利于非計(jì)算機(jī)專業(yè)的科技人員使用。而且這種語言可移植性好、可拓展性極強(qiáng),增強(qiáng)了數(shù)據(jù)的可視化功能,可不斷提供功能更為強(qiáng)大的軟件包。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,用戶界面也越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡單。而且新版本的MATLAB提供了完整的聯(lián)機(jī)查詢、幫助系統(tǒng),極大地方便了用戶的使用。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運(yùn)行,而且能夠及時地報(bào)告出現(xiàn)的錯誤及進(jìn)行出錯原因分析。時至今日,MATLAB已經(jīng)發(fā)展為高性能的數(shù)值計(jì)算軟件,并且集成了可視化功能,提供了大量的內(nèi)置函數(shù),被廣泛地應(yīng)用于科學(xué)計(jì)算、控制系統(tǒng)、信息處理等領(lǐng)域的分析、仿真和設(shè)計(jì)工作(周建興等,2012)。同時由于MATLAB具有的強(qiáng)大的功能,其在地震行業(yè)中已經(jīng)有了廣泛的應(yīng)用(徐沁等,2013;譚雨文等,2011;溫巖等,2001;魏紅梅等,2007)。因此,MATLAB完全滿足數(shù)字地震觀測報(bào)告自動化編制軟件的開發(fā)條件。
為了將天津地震臺網(wǎng)產(chǎn)出的地震目錄有效應(yīng)用于地震預(yù)報(bào),產(chǎn)生了本程序開發(fā)的客觀需求。天津臺網(wǎng)主要是負(fù)責(zé)本區(qū)域及首都圈示范區(qū)數(shù)字測震臺站的波形匯集、交互分析、在線存儲;通過國家臺網(wǎng)中心獲取首都圈鄰?。ㄉ綎|和遼寧)測震臺網(wǎng)的數(shù)據(jù),對各道數(shù)據(jù)進(jìn)行實(shí)時檢測、觸發(fā);責(zé)任區(qū)內(nèi)的地震速報(bào)、地震編目;實(shí)時數(shù)據(jù)上傳中國地震局及數(shù)據(jù)交換、離線數(shù)據(jù)備份;編目數(shù)據(jù)服務(wù)以及震源參數(shù)分析結(jié)果服務(wù),實(shí)現(xiàn)臺網(wǎng)之間的數(shù)據(jù)共享。從1999年實(shí)施的“首都圈防震減災(zāi)示范區(qū)系統(tǒng)工程”建設(shè)以來,天津地震臺網(wǎng)歷經(jīng)三次大的改造和升級,現(xiàn)可接收到140個地震臺站的實(shí)時波形數(shù)據(jù),地震監(jiān)測可達(dá)到最小震級2.0,Ⅱ類定位精度,天津市的監(jiān)控能力達(dá)到≥1.0—1.5級,定位精度≤3km,淺源地震的震源深度定位精度≤5km(李軼群等,2012),地震觀測報(bào)告準(zhǔn)確性和可信度較高。
3.1 需求分析
本程序是針對JOPENS數(shù)據(jù)服務(wù)和ESSA之間沒有程序接口設(shè)計(jì)開發(fā)。輸入為JOPENS數(shù)據(jù)服務(wù)的地震目錄,方式為人工獲??;輸出為ESSA所需的數(shù)字地震觀測報(bào)告,該數(shù)字地震觀測報(bào)告不同于JOPENS數(shù)據(jù)服務(wù)的地震目錄格式,需要篩選和加工數(shù)據(jù)。加工過程用于實(shí)現(xiàn)ESSA不同于JOPENS數(shù)據(jù)服務(wù)的地震目錄格式,程序的最終目的是為JOPENS數(shù)據(jù)服務(wù)和ESSA之間架設(shè)一座橋梁,實(shí)現(xiàn)視應(yīng)力等參數(shù)的計(jì)算,為地震預(yù)報(bào)提供所需的數(shù)據(jù)服務(wù)。
地震觀測報(bào)告是每一個地震事件波形經(jīng)過分析后得出的震相數(shù)據(jù),包括地震發(fā)生的時、空、強(qiáng)基本參數(shù)和P波和S波的到時數(shù)據(jù)。從JOPENS Data Service網(wǎng)站查詢下載地震目錄如下(圖1):
計(jì)算視應(yīng)力等參數(shù)的ESSA軟件所需要的數(shù)字地震觀測報(bào)告可分為全部臺站觀測報(bào)告、寬頻帶臺站觀測報(bào)告和短周期臺站觀測報(bào)告。該軟件需要的數(shù)字地震觀測報(bào)告格式與JOPENS數(shù)據(jù)服務(wù)的地震目錄不同,筆者設(shè)計(jì)開發(fā)的軟件需要完成數(shù)字地震觀測報(bào)告的自動化編制,輸出結(jié)果如下(圖2—圖4):
3.2 程序流程圖設(shè)計(jì)
該軟件基于MATLAB開發(fā)而成,因而具有MATLAB簡單易用等特點(diǎn)。程序流程如圖5所示。
3.3 程序代碼編寫
首先將JOPENS數(shù)據(jù)服務(wù)的地震目錄復(fù)制到文件名為“觀測報(bào)告”的記事本文件中。然后運(yùn)行程序,程序提示輸入地震時間,格式為年月日,程序代碼如下:
datetime=num2str(input('請輸入日期(如:20130124):') );
datetime=[datetime(1:4),' ',datetime(5:6),' ',datetime(7:8)];
fid=fopen('d:觀測報(bào)告.txt','r');
觀測報(bào)告要求格式如圖2:
震相信息:臺站代碼 震相名稱(,) 年 月 日 時 分 秒 震中距(km) 方位角(0-360) (第一個臺站)
震相信息:臺站代碼 震相名稱(,) 年 月 日 時 分 秒 震中距(km) 方位角(0-360) (第一個臺站)
因此,需要在圖1中篩選到同時具有()和()的臺站信息,以下是篩選臺站代碼,篩選、和也是基本相同,只不過定義變量所在位置不同。
if ~isempty(strfind( temp(tempi,:),'Pg'))
tempresult =[tempresult;temp(tempi,:)];
finalzzj=finalcat(52:57);
finalzzj=[sprintf('%04d',str2num(finalzzj(1:4))),'.',finalcat(57),'000'];
finalfwj=finalcat(59:63);
finalfwj=[sprintf('%03d',str2num(finalfwj(1:3))),'.',finalfwj(5),'000'];
finalbx=finalcat(18:19);
finalsj=finalcat(33:43);
finalsj=[finalsj(1:2),' ',finalsj(4:5),' ',finalsj(7:11),'0','0'];
finallj=[finaltemp,blanks(1),finalbx,blanks(1),datetime,blanks(1),finalsj,blanks(1),finalzzj,blanks(1),finalfwj];
final=[final;finallj];
if finalcat(1,10)=='B'
finalB=[finalB;finallj];
else
finalS=[finalS;finallj];
end
finaltemp定義為臺站代碼;finalbx定義為()或();datetime定義為臺站記錄地震發(fā)生年月日;finalsj定義為臺站記錄地震發(fā)生時分秒和震中距;finalB定義為寬頻帶地震臺站觀測報(bào)告;finalS定義為短周期地震臺觀測報(bào)告;final定義為全部臺站觀測報(bào)告。
最后輸出到記事本文件中。軟件可以根據(jù)ESSA軟件的需要輸出寬頻帶地震臺觀測報(bào)告、短周期地震臺和全部臺站觀測報(bào)告。輸出結(jié)果如圖2—圖4所示。
3.4 軟件運(yùn)行結(jié)果考量
軟件在天津市地震局分析預(yù)報(bào)中心試運(yùn)行已有一段時間,試運(yùn)行期間對多個地震事件進(jìn)行了處理,經(jīng)仔細(xì)核對比較并未出現(xiàn)錯誤,說明本軟件準(zhǔn)確、可靠,實(shí)現(xiàn)了預(yù)期功能。通過軟件的使用,大大提高了數(shù)字地震觀測報(bào)告編制的速度和準(zhǔn)確性,為分析預(yù)報(bào)工作提供了科學(xué)準(zhǔn)確的數(shù)據(jù)服務(wù)。同時,試運(yùn)行中也發(fā)現(xiàn)軟件有不足之處,例如:因觀測報(bào)告數(shù)據(jù)庫在中國地震臺網(wǎng)中心,該數(shù)據(jù)庫未向用戶提供數(shù)據(jù)下載的功能和接口,所以無法直接實(shí)現(xiàn)從數(shù)據(jù)庫中讀取數(shù)據(jù),自動進(jìn)行格式轉(zhuǎn)換和運(yùn)算,仍需要打開網(wǎng)頁下載報(bào)告,再運(yùn)行此軟件。
大量實(shí)踐證明,測震學(xué)科與前兆學(xué)科一樣能夠揭示出地震的孕育和發(fā)展過程,能夠利用地震觀測報(bào)告和波形數(shù)據(jù)計(jì)算出地下視應(yīng)力等情況,來預(yù)測地震。如何有效利用地震目錄是擺在我們面前的一個重要課題。本文所述程序的研制,無疑對測震數(shù)據(jù)的應(yīng)用起到了一定的推動作用。相信在不遠(yuǎn)的將來,測震數(shù)據(jù)能夠更大限度地在地震預(yù)測中發(fā)揮作用。筆者嘗試將MATLAB引入數(shù)字地震觀測報(bào)告的編制中,收到了一定的成效。MATLAB的簡單易用性決定了其良好的應(yīng)用前景,有理由相信MATLAB將會在地震觀測和地震預(yù)測領(lǐng)域發(fā)揮更大的作用。
陳學(xué)忠,李艷娥,2007.2006年7月4日河北文安5.1地震前震中周圍地區(qū)小震視應(yīng)力隨時間的變化.中國地震,23(4):327—336.
馮建剛,蔣長勝,韓立波等,2012.1970年以來甘肅臺網(wǎng)地震觀測報(bào)告收集整理及其重新定位研究.西北地震學(xué)報(bào),34(3):289—293.
李軼群,栗連弟,劉雙慶等,2012.天津數(shù)字測震臺網(wǎng)系統(tǒng)建設(shè).地震地磁觀測與研究,33(5/6):306—309.
劉紅桂,王培玲,楊彩霞等,2007.地震視應(yīng)力在地震預(yù)測中的應(yīng)用.地震學(xué)報(bào),29(4):437—445.
譚雨文,劉國明,2011.MATLAB在地震信號處理中的應(yīng)用實(shí)例.防災(zāi)減災(zāi)學(xué)報(bào),27(3):61—66.
溫巖,喬兵,李忠偉等,2001.基于MAT LAB工具箱的神經(jīng)網(wǎng)絡(luò)在地震預(yù)報(bào)中的應(yīng)用.東北地震研究,17(3):36—41.
魏紅梅,黃世源,賀曼秋,2007.基于MATLAB工具箱的地震預(yù)測模型.東北地震研究,23(3):64—68..
徐沁,鄭寧寧,黃經(jīng)國等,2013.使用MATLAB獲取地震前兆數(shù)據(jù)庫中觀測數(shù)據(jù).震災(zāi)防御技術(shù),8(2):198—208.
楊志高,張曉東,2009.首都圈地區(qū)地震視應(yīng)力的計(jì)算及空間分布.地震,29(4):32—43.
周建興,豈興明,矯津等,2012.MATLAB從入門到精通.北京:人民郵電出版社.
Application of MATLAB in Editing the Digital Earthquake Observation Report
Li He, Gong Yongjian, Liu Lei, Liu Shuangqing, Tan Yipei, Gao Ye, Shang Xianqi and Hu Peiyuan
(Earthquake Administration of Tianjin City, Tianjin 300201, China)
Digital seismic observation report is the base for calculating some important parameters such as apparent stress and etc.. JOPENS data services can provide earthquake catalogue, which is the premise of apparent stress parameter calculation by using ESSA software. However, since the ESSA and JOPENS data service has no program interface, there is a need from the JOPENS data service manually download earthquake catalogue and demand of artificial screening data into digital seismic observation report. In order to solve this problem, we utilize MATLAB to develop a set of procedures, compilation of digital seismic observation report with automatic processing procedure, which greatly improve the work efficiency, reduce the error rate, provide the better data service for earthquake prediction.
MATLAB; Earthquake observation report; Edition; Apparent stress; Earthquake prediction
地震科技星火計(jì)劃(項(xiàng)目編號:XH14002Y)、2014年度震情跟蹤專項(xiàng)青年工作任務(wù)(項(xiàng)目編號:2014020306)和天津市地震局局內(nèi)課題:天津及其周邊地區(qū)地磁轉(zhuǎn)換函數(shù)變化與近震的關(guān)系(項(xiàng)目編號:20131008)聯(lián)合資助
2013-09-15
李赫,男,生于1987年。助理工程師。2011年6月畢業(yè)于防災(zāi)科技學(xué)院勘查技術(shù)與工程專業(yè),工學(xué)學(xué)士。主要從事地震觀測及預(yù)測的研究。E-mail: lihe200888@sina.com
李赫,龔永儉,劉磊,劉雙慶,譚毅培,高也,尚先旗,胡培元,2014.MATLAB在數(shù)字地震觀測報(bào)告編制中的應(yīng)用. 震災(zāi)防御技術(shù),9(2):289—295.