国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Python開(kāi)發(fā)的地震余震序列統(tǒng)計(jì)程序

2024-05-18 13:01:04孟令升劉愛(ài)華張雁翔馬龍辰徐建權(quán)
科技創(chuàng)新與應(yīng)用 2024年14期
關(guān)鍵詞:發(fā)震主震余震

孟令升 劉愛(ài)華 張雁翔 馬龍辰 徐建權(quán)

摘 ?要:我國(guó)是世界上地震活動(dòng)最嚴(yán)重的國(guó)家之一。地震活動(dòng)頻次高、強(qiáng)度大、災(zāi)害重、影響廣,2008年汶川地震給人民群眾生命財(cái)產(chǎn)造成嚴(yán)重?fù)p失,給整個(gè)國(guó)家的經(jīng)濟(jì)社會(huì)發(fā)展造成深遠(yuǎn)影響。汶川地震后,中國(guó)地震局深刻總結(jié)與反思,要求地震行業(yè)提高為社會(huì)各界提供地震專(zhuān)業(yè)信息服務(wù)的能力。余震序列作為震后緊急會(huì)商的重要資料,其統(tǒng)計(jì)的時(shí)效性要求也相應(yīng)提高。近年來(lái),Python語(yǔ)言在數(shù)據(jù)庫(kù)處理、數(shù)據(jù)統(tǒng)計(jì)處理、程序開(kāi)發(fā)方面已成為新的趨勢(shì)。余震序列統(tǒng)計(jì)程序基于Python語(yǔ)言開(kāi)發(fā),利用該程序,對(duì)地震編目數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行篩選、導(dǎo)出、整理,并產(chǎn)出符合上報(bào)要求的Word文檔,實(shí)現(xiàn)對(duì)地震余震序列的即時(shí)產(chǎn)出。利用該程序進(jìn)行余震統(tǒng)計(jì),可極大地減輕地震一線工作人員工作量,為科研人員判斷地震趨勢(shì)和政府部門(mén)制定救援方案提供更加及時(shí)準(zhǔn)確的數(shù)據(jù),有效助力開(kāi)展地震應(yīng)急救援工作。

關(guān)鍵詞:Python;余震統(tǒng)計(jì);程序研發(fā);地震余震序列;地震監(jiān)測(cè)

中圖分類(lèi)號(hào):P315.61 ? ? ?文獻(xiàn)標(biāo)志碼:A ? ? ? ? ?文章編號(hào):2095-2945(2024)14-0046-04

Abstract: China is one of the most seismically active countries in the world. Seismic activity has high frequency, high intensity, serious disasters and wide impact. The 2008 Wenchuan earthquake caused serious losses to people's lives and property, and had a far-reaching impact on the economic and social development of the whole country. After Wenchuan Earthquake, the China Earthquake Administration made a profound summary and reflection, requiring the earthquake industry to improve its ability to provide professional earthquake information services for all sectors of the community. Aftershock sequence as an important data for emergency consultation after the earthquake, the timeliness requirement of aftershock sequence statistics is also improved accordingly. In recent years, Python language has become a new trend in database processing, data statistical processing and program development. The statistical program of aftershock sequence is developed based on Python language. Using this program, the data of earthquake cataloging database are screened, exported and sorted out, and the Word documents that meet the reporting requirements are produced, and the immediate output of earthquake aftershock sequence is realized. Using this program for aftershock statistics can greatly reduce the workload of earthquake front-line workers, provide more timely and accurate data for researchers to judge earthquake trends and government departments to formulate rescue plans, and effectively assist the development of earthquake emergency rescue work.

Keywords: Python; aftershock statistics; program development; earthquake aftershock sequence; earthquake monitoring

地震又稱(chēng)地動(dòng)、地振動(dòng),是地殼快速釋放能量過(guò)程中造成的振動(dòng),期間會(huì)產(chǎn)生地震波的一種自然現(xiàn)象。地球上板塊與板塊之間相互擠壓碰撞,造成板塊邊沿及板塊內(nèi)部產(chǎn)生錯(cuò)動(dòng)和破裂,是引起地震的主要原因。地震會(huì)造成各種破壞和災(zāi)害,包括建筑物倒塌、土地滑坡、火災(zāi)和海嘯等。地震的發(fā)生通常會(huì)伴隨著余震的出現(xiàn),這些余震可能會(huì)對(duì)地震災(zāi)區(qū)造成進(jìn)一步的破壞。

余震信息是地震趨勢(shì)研判的重要依據(jù),利用余震目錄的參數(shù)信息,可有效反映震區(qū)的地震活動(dòng)、地震周期、序列及發(fā)震構(gòu)造等情況。根據(jù)《測(cè)震臺(tái)網(wǎng)運(yùn)行管理細(xì)則(2015 修訂版)》要求,主震震中所在省級(jí)臺(tái)網(wǎng)中心負(fù)責(zé)余震序列與震群快報(bào)目錄和正式目錄的處理與報(bào)送。2021年中國(guó)地震局下發(fā)《關(guān)于進(jìn)一步規(guī)范余震信息統(tǒng)計(jì)報(bào)送和發(fā)布工作的函》,對(duì)余震信息統(tǒng)計(jì)報(bào)送工作做了進(jìn)一步規(guī)定。根據(jù)相關(guān)規(guī)定時(shí)限要求,人工編制余震序列目錄并編寫(xiě)報(bào)告,已無(wú)法滿(mǎn)足應(yīng)急工作需求。如2017年8月8日21時(shí)19分46秒在四川阿壩州九寨溝縣(北緯33.2°,東經(jīng)103.82°)發(fā)生7級(jí)地震,至2017年8月17日14時(shí),共記錄到地震總數(shù)4 799個(gè)(余震總數(shù)4 798個(gè))。其中7.0~7.9級(jí)地震1次,6.0~6.9級(jí)地震0次,5.0~5.9級(jí)0次, 4.0~4.9級(jí)3次,3.0~3.9級(jí)28次。編目人員整理、匯編、復(fù)核后產(chǎn)出并上報(bào),工作量大、耗時(shí)長(zhǎng)、效率低,還極易產(chǎn)生錯(cuò)誤。這就需要能夠自動(dòng)編輯并快速產(chǎn)出余震序列目錄,才能按時(shí)完成余震序列報(bào)告上報(bào),及時(shí)提供給科研人員和政府部門(mén)參考。

1 ?程序設(shè)計(jì)與實(shí)現(xiàn)

1.1 ?程序功能設(shè)計(jì)

程序GUI界面采用PyQt5設(shè)計(jì)開(kāi)發(fā)。Qt是一個(gè)跨平臺(tái)的應(yīng)用程序開(kāi)發(fā)框架,提供了豐富的GUI組件,可以用于創(chuàng)建桌面應(yīng)用程序、移動(dòng)應(yīng)用程序和嵌入式應(yīng)用程序。友好的操作界面,使得工作人員可以通過(guò)相對(duì)簡(jiǎn)單的操作即可實(shí)現(xiàn)數(shù)據(jù)的下載、處理和生成報(bào)告等功能,軟件開(kāi)發(fā)流程如圖1所示。

程序基于地震編目數(shù)據(jù)庫(kù),利用Python的數(shù)據(jù)分析模塊(pandas)、文檔編輯模塊(docx)、表格編輯模塊(openpyxl)等功能模塊,實(shí)現(xiàn)以下功能。①數(shù)據(jù)采集:程序從數(shù)據(jù)庫(kù)獲取地震數(shù)據(jù),包括主震和余震在內(nèi)的全部地震事件信息,采集到的信息將以Excel表格格式保存,并將篩選出來(lái)的主震信息以下拉菜單的形式在程序主界面上展示。②數(shù)據(jù)處理:程序?qū)?duì)獲取的地震數(shù)據(jù)進(jìn)行處理,根據(jù)主震發(fā)震時(shí)間、位置等信息,提取出相應(yīng)余震序列,余震序列主要信息以列表形式在程序主界面展示。使用者可根據(jù)需要對(duì)余震列表進(jìn)行增、刪、改等操作。③統(tǒng)計(jì)分析:程序?qū)?duì)余震序列進(jìn)行統(tǒng)計(jì)分析,包括計(jì)算余震的總數(shù)、最大震級(jí)、震級(jí)分布等情況。這些統(tǒng)計(jì)結(jié)果將有助于評(píng)估地震活動(dòng)的強(qiáng)度和趨勢(shì)。④報(bào)告生成:程序?qū)⒏鶕?jù)統(tǒng)計(jì)分析的結(jié)果,生成余震統(tǒng)計(jì)報(bào)告。報(bào)告中包含標(biāo)題、余震情況描述和地震參數(shù)列表組成。余震情況描述需詳細(xì)地描述主震地震三要素,到截止時(shí)間記錄余震總次數(shù),并按照不同震級(jí)統(tǒng)計(jì)次數(shù)。地震參數(shù)列表需包含截止時(shí)間、發(fā)震時(shí)刻、震中經(jīng)緯度、震源深度、震級(jí)和參考地名等信息。報(bào)告最終以Word和Excel格式保存相關(guān)信息。

1.2 ?實(shí)現(xiàn)代碼

根據(jù)中國(guó)地震局余震統(tǒng)計(jì)相關(guān)要求,主震需篩選震級(jí)在3.0級(jí)以上的本省地震,余震根據(jù)主震震級(jí)不同,篩選2.0級(jí)或3.0級(jí)以上地震。并以正式編目結(jié)果為準(zhǔn)。因此,在事件篩選過(guò)程中,將編目類(lèi)型、中文地名、發(fā)震時(shí)間、經(jīng)緯度等信息均作為篩選條件。為方便使用者快速修改目錄,本程序增加了對(duì)余震序列列表增、刪、改的功能。余震統(tǒng)計(jì)報(bào)告需對(duì)各震級(jí)余震分段統(tǒng)計(jì)。程序采用如下代碼實(shí)現(xiàn)相應(yīng)功能。

1)連接服務(wù)器數(shù)據(jù)庫(kù)并篩選符合條件的主震事件,主要選取了數(shù)據(jù)庫(kù)中事件類(lèi)型代碼Auto_flag、震級(jí)M、震中中文地名Location_cname、發(fā)震時(shí)刻O(píng)_time等信息作為篩選條件。篩選出來(lái)的主震信息以Excel存儲(chǔ),并實(shí)現(xiàn)存儲(chǔ)事件信息在GUI下拉菜單中顯示,測(cè)試結(jié)果如圖2所示,部分代碼如下。

for sh_name in data.keys():

sh_data = pd.DataFrame(pd.read_excel(‘./*.xlsx, sh_name))

for ll in sh_data[‘Cata_name]:

self.comboBox.addItem(ll)

self.comboBox.currentIndexChanged.connect(self.selchange)

2)為方便余震信息核對(duì)、修改,將篩選出的余震信息在GUI界面顯示,并實(shí)現(xiàn)增、刪、改功能,測(cè)試結(jié)果如圖3所示,部分代碼如下。

#余震信息顯示

self.tableWidget.setRowCount(dataYZa.shape[0])

self.tableWidget.setColumnCount(dataYZa.shape[1])

self.tableWidget.setHorizontalHeaderLabels(dataYZa.columns)

for i in range(dataYZa.shape[0]):

for j in range(dataYZa.shape[1]):

self.tableWidget.setItem(i,j,TableWidgetItem(str(dataYZa.iloc[i, j])))

#余震信息修改

row = self.tableWidget.rowCount()

self.tableWidget.insertRow(row)

msg = QMessageBox()

msg.setWindowTitle('提示')

msg.setText('生成報(bào)告前請(qǐng)保存修改內(nèi)容')

msg.setStandardButtons(QMessageBox.Ok)

rows = self.tableWidget.selectionModel().selectedRows()

for i in rows:

self.tableWidget.removeRow(i.row())

msg = QMessageBox()

msg.setWindowTitle('提示')

msg.setText('生成報(bào)告前請(qǐng)保存修改內(nèi)容')

msg.setStandardButtons(QMessageBox.Ok)

圖3 ?余震信息修改功能測(cè)試

3)按照余震統(tǒng)計(jì)報(bào)告內(nèi)容,需統(tǒng)計(jì)出各震級(jí)區(qū)間地震數(shù)量,如4.0~4.9級(jí)、…、2.0~2.9級(jí)等,以方便分析人員使用,測(cè)試結(jié)果如圖4所示。部分代碼如下

data_score3 = dataS[dataS[‘M] > 3]

if len(data_score3) >= 1:

num3 = int(len(data_score3) - 1 - num4)

else:

num3 = len(data_score3)

2 ?軟件功能及測(cè)試

本程序設(shè)計(jì)了GUI人機(jī)交互界面,實(shí)現(xiàn)了余震序列統(tǒng)計(jì)報(bào)告產(chǎn)出所需的相應(yīng)功能,如圖5所示。①主震功能區(qū),通過(guò)選擇需要處理分析的主震事件,提取顯示發(fā)震時(shí)刻、二級(jí)地名2項(xiàng)主要信息,并根據(jù)選擇的主震自動(dòng)篩選相應(yīng)的余震信息。②余震篩選條件功能區(qū),通過(guò)設(shè)置余震篩選條件,確定余震選取的截止時(shí)間、震級(jí)下限、經(jīng)緯度范圍。③余震列表功能區(qū),顯示篩選出來(lái)的余震列表,包括發(fā)震時(shí)刻、震中經(jīng)緯度、震源深度、震級(jí)和震中地名等信息,并提供人工修改余震列表功能,可增加或刪除余震條目,確定余震列表后產(chǎn)出余震統(tǒng)計(jì)報(bào)告。

程序開(kāi)發(fā)完成后,選取了2021年1月24日發(fā)生在黑龍江訥河的3.0級(jí)地震事件,對(duì)程序各項(xiàng)功能進(jìn)行測(cè)試。程序按照設(shè)計(jì)在編目服務(wù)器數(shù)據(jù)庫(kù)獲取地震編目結(jié)果,截止日期修改為2021年4月1日0時(shí),震級(jí)下限1級(jí),經(jīng)緯度范圍1°,與人工校核對(duì)比,余震列表產(chǎn)出完整,符合余震統(tǒng)計(jì)需求,分震級(jí)統(tǒng)計(jì)余震個(gè)數(shù)準(zhǔn)確,余震統(tǒng)計(jì)報(bào)告產(chǎn)出符合規(guī)定要求,產(chǎn)出報(bào)告如圖6所示。經(jīng)過(guò)測(cè)試,并與人工校核、編輯報(bào)告相比,產(chǎn)出速度更快、結(jié)果準(zhǔn)確可靠、程序功能設(shè)置合理、使用便捷,能夠滿(mǎn)足地震余震序列統(tǒng)計(jì)的相關(guān)要求。

3 ?總結(jié)

通過(guò)開(kāi)發(fā)這款地震余震序列統(tǒng)計(jì)程序,黑龍江地震臺(tái)可以實(shí)現(xiàn)更快速、準(zhǔn)確地產(chǎn)出余震統(tǒng)計(jì)報(bào)告。該程序的研發(fā),滿(mǎn)足了地震發(fā)生后余震統(tǒng)計(jì)工作的切實(shí)需求,提高了余震目錄的產(chǎn)出效率,提高了業(yè)務(wù)自動(dòng)化水平,為提升黑龍江地震臺(tái)地震監(jiān)測(cè)和速報(bào)能力提供了必要的技術(shù)支撐。當(dāng)然程序設(shè)計(jì)還存在一些不足,將在后續(xù)的工作中進(jìn)一步完善。

參考文獻(xiàn):

[1] 趙杰,鄭樹(shù)平,王飛劍.基于遙感影像的區(qū)域房屋抗震能力評(píng)估——以山西省忻州市為例[J].山西地震,2022(1):17-20.

[2] 謝君.多災(zāi)背景下檔案館建筑安全風(fēng)險(xiǎn)評(píng)估體系研究[J].中國(guó)檔案,2013(12):55-57.

[3] 陳經(jīng)綸,李杰飛,苗春蘭,等.基于瀘定MS6.8地震的應(yīng)急余震序列自動(dòng)統(tǒng)計(jì)程序研發(fā)[J].地震地磁觀測(cè)與研究,2022,43(5):193-198.

[4] 金艷,張佑龍,劉川琴,等.安徽省數(shù)字化地震編目工作[J].地震地磁觀測(cè)與研究,2017,38(2):168-171.

[5] 呂永清,向涯,周云耀,等.地震計(jì)階躍標(biāo)定信號(hào)去除方法研究[J].大地測(cè)量與地球動(dòng)力學(xué),2020,40(7):761-764.

猜你喜歡
發(fā)震主震余震
基于構(gòu)造應(yīng)力場(chǎng)識(shí)別震源機(jī)制解節(jié)面中發(fā)震斷層面
——以盈江地區(qū)為例
“超長(zhǎng)待機(jī)”的余震
基于鉆孔應(yīng)變觀測(cè)約束的2016年新疆呼圖壁M6.2地震的發(fā)震斷層研究
地震研究(2021年1期)2021-04-13 01:05:08
生死之間的靈魂救贖——《余震》和《云中記》的倫理問(wèn)題
蘆山地震發(fā)震構(gòu)造及其與汶川地震關(guān)系討論
三次8級(jí)以上大地震的余震活動(dòng)特征分析*
地震研究(2015年4期)2015-12-25 05:33:44
多塔斜拉橋在主震-余震序列波下地震位移研究
龍卷流旋轉(zhuǎn)與地震成因
利用深度震相確定蘆山地震主震及若干強(qiáng)余震的震源深度
地震研究(2014年3期)2014-02-27 09:30:46
1950年察隅8.6級(jí)巨震序列的時(shí)空分布特征
黄山市| 杭锦后旗| 小金县| 黄大仙区| 高淳县| 林周县| 章丘市| 永宁县| 五指山市| 大丰市| 铜梁县| 武邑县| 潢川县| 盐源县| 泾源县| 阿克陶县| 霍邱县| 海盐县| 乾安县| 静安区| 灌阳县| 天长市| 凤山市| 祁连县| 图木舒克市| 尚志市| 抚远县| 朝阳县| 酒泉市| 祁连县| 平阴县| 基隆市| 巩义市| 台东县| 柘荣县| 水城县| 元江| 鸡泽县| 博客| 额敏县| 沙河市|