王 時(shí) 李永慶 董一兵 趙靈軍
1) 石家莊地震監(jiān)測(cè)中心站,河北石家莊 050021
2) 河北省地震局,河北石家莊 050021
3) 河北經(jīng)貿(mào)大學(xué),河北石家莊 050061
4) 中國(guó)科學(xué)院空天信息創(chuàng)新研究院,北京 100094
地震目錄是按照時(shí)間順序,對(duì)地震參數(shù)進(jìn)行收錄和編目所形成的資料,是開(kāi)展地震活動(dòng)性研究的基礎(chǔ)數(shù)據(jù)[1]。地震目錄通常包括:發(fā)震時(shí)刻、震中位置、震源深度、震級(jí)等參數(shù),而地震活動(dòng)性研究的重要內(nèi)容是分析這些參數(shù)在空間和時(shí)間維度上的分布特征[2-4]。在地震活動(dòng)性研究過(guò)程中,數(shù)據(jù)可視化是經(jīng)常采用的一種輔助技術(shù)。該技術(shù)利用圖表的形式表達(dá)參數(shù)的分布,有助于增強(qiáng)數(shù)據(jù)的可讀性和表現(xiàn)力。在研究地震在空間維度的分布特征時(shí),經(jīng)常需要繪制地震分布圖,包括地震震中在水平方向上的分布及震源深度在垂直方向上的分布。從地震分布圖上,可以直觀地看到地震發(fā)生的位置;當(dāng)?shù)卣疠^多、形成序列時(shí),還可以觀察地震序列的整體分布特征,形成對(duì)地震分布規(guī)律的初步認(rèn)識(shí)。空間維度的地震可視化技術(shù)應(yīng)用十分廣泛,常被地震監(jiān)測(cè)部門(mén)用于發(fā)布地震目錄,例如,美國(guó)地質(zhì)調(diào)查局(United States Geological Survey,USGS)的earthquake map 項(xiàng)目通過(guò)WebGIS 平臺(tái)實(shí)時(shí)發(fā)布全球M4.0 以上、美國(guó)M2.5 以上地震目錄,并提供了開(kāi)放的Web 接口(https://earthquake.usgs.gov/earthquakes/map),支持全球用戶(hù)共享訪問(wèn)。地震活動(dòng)性研究還關(guān)注地震參數(shù)隨時(shí)間變化的特征[5-7],這就需要對(duì)地震參數(shù)進(jìn)行時(shí)間維度上的可視化。一些傳統(tǒng)的數(shù)據(jù)分析軟件也提供了對(duì)地震活動(dòng)性可視化分析的工具,例如,基于首都圈防震減災(zāi)示范工程項(xiàng)目開(kāi)發(fā)的地震分析預(yù)報(bào)系統(tǒng)MapSeis,北京震創(chuàng)軟件技術(shù)有限公司開(kāi)發(fā)的測(cè)震學(xué)綜合應(yīng)用軟件系統(tǒng)SuperSeis,這些軟件功能強(qiáng)大且專(zhuān)業(yè)性強(qiáng)。但是,這類(lèi)軟件大多仍在使用單機(jī)模式,存在一些明顯的弊端,比如:用戶(hù)的數(shù)據(jù)資源彼此隔離,形成信息孤島;系統(tǒng)和數(shù)據(jù)的維護(hù)難度大,版本更新困難等[8]。Internet 的高速發(fā)展,使得WebGIS 逐步替代了傳統(tǒng)的GIS 系統(tǒng),并慢慢地滲透進(jìn)人們的日常生活。WebGIS 的地理和地形構(gòu)造信息方便了科研工作人員的使用,豐富的各類(lèi)社會(huì)信息圖層、簡(jiǎn)單易操作的友好界面使得WebGIS 開(kāi)發(fā)的軟件成為了一個(gè)向大眾展示和傳播信息的優(yōu)秀平臺(tái),也成為一個(gè)更客觀方便的決策平臺(tái)。WebGIS 系統(tǒng)在防震減災(zāi)工作中具有無(wú)可比擬的優(yōu)勢(shì)。無(wú)論是在震害預(yù)測(cè)信息服務(wù)平臺(tái)上的開(kāi)發(fā)還是在數(shù)字防震減災(zāi)系統(tǒng)上的研究都有不同程度的應(yīng)用,但是在地震活動(dòng)性分析中的應(yīng)用尚少。基于上述分析,現(xiàn)代化的地震活動(dòng)性分析平臺(tái),應(yīng)當(dāng)同時(shí)支持空間和時(shí)間維度的地震參數(shù)可視化分析,并提供良好的交互性、易用性、可維護(hù)性和可擴(kuò)展性。
地震可視化分析工具首先應(yīng)支持地震目錄的空間可視化,而WebGIS 技術(shù)為這種需求提供了完整的解決方案[9-10]。開(kāi)源WebGIS 是源代碼開(kāi)放的WebGIS平臺(tái),與商業(yè)平臺(tái)相比具有低成本、可定制、跨平臺(tái)的特點(diǎn)[11-12]。GeoServer 是目前應(yīng)用廣泛的開(kāi)源WebGIS服務(wù)器,通過(guò)整合流行的GeoTools 中間件,提供了遵循OGC 開(kāi)放標(biāo)準(zhǔn)的WMS、WFS、WCS 及WFS-T規(guī)范[13]。OpenLayers 是經(jīng)常與GeoServer配合使用的WebGIS 前端開(kāi)發(fā)技術(shù),除了支持OGC相關(guān)規(guī)范以外,還提供了矢量數(shù)據(jù)渲染、地圖分幅和預(yù)讀取等重要功能,可有效提升客戶(hù)端瀏覽體驗(yàn)[14]。近年來(lái),基于GeoServer 和OpenLayers 的行業(yè)應(yīng)用軟件大量涌現(xiàn)[15-18],該開(kāi)發(fā)技術(shù)的可靠性已經(jīng)得到了充分的驗(yàn)證。鑒于此,我們擬以它們?yōu)榛A(chǔ),結(jié)合JavaScript腳本語(yǔ)言,構(gòu)建地震活動(dòng)性分析平臺(tái),支持地震參數(shù)的空間可視化與時(shí)間序列可視化分析方法,并提供基于Web 的人機(jī)交互接口,為地震活動(dòng)性研究提供軟件工具。
地震活動(dòng)性分析平臺(tái)應(yīng)具備下列基本功能:
(1)地震空間分析:實(shí)現(xiàn)地震、斷層以及多種地理要素的空間可視化和交互式屬性查詢(xún),提供對(duì)圖層進(jìn)行配置、控制、選區(qū)和測(cè)量的接口;
(2)地震時(shí)序分析:支持多種地震參數(shù)時(shí)間序列分析方法,提供交互式分析接口,支持結(jié)果圖件矢量化輸出。
系統(tǒng)應(yīng)滿(mǎn)足下列性能需求:
(1)開(kāi)放性:整套WebGIS 平臺(tái)和開(kāi)發(fā)平臺(tái)都選用源代碼開(kāi)放的產(chǎn)品,系統(tǒng)采用分布式架構(gòu),各功能模塊高內(nèi)距、低耦合,各模塊之間的接口均符合行業(yè)規(guī)范,增強(qiáng)了系統(tǒng)的可擴(kuò)展性;
(2)健壯性:在輸入錯(cuò)誤、文件讀取故障、網(wǎng)絡(luò)過(guò)載等情況下,有相應(yīng)的異常捕獲和處理機(jī)制,避免系統(tǒng)的崩潰;
(3) 并發(fā)性:并發(fā)用戶(hù)數(shù)量≥50 個(gè);
(4)時(shí)效性:系統(tǒng)單次響應(yīng)最大時(shí)間≤10 s;海量數(shù)據(jù)平均單次查詢(xún)時(shí)間≤10 s;
(5)易用性:提供友好的圖形用戶(hù)界面。在界面設(shè)計(jì)方面,使系統(tǒng)界面盡量友好、簡(jiǎn)潔、易用;在查詢(xún)手段方面,采取多方式、多參數(shù)方法實(shí)現(xiàn)圖形屬性信息互查,盡量滿(mǎn)足不同用戶(hù)的不同查詢(xún)需求;在地圖操作方面,可隨時(shí)調(diào)閱地形圖、道路圖等,可任意分層、疊加顯示及生成各種專(zhuān)業(yè)圖;
(6)兼容性:支持常用Web 瀏覽器。
根據(jù)需求,地震活動(dòng)性分析平臺(tái)應(yīng)提供兩類(lèi)服務(wù),WebGIS 服務(wù)和Web 服務(wù)。WebGIS 服務(wù)負(fù)責(zé)處理與空間計(jì)算有關(guān)的業(yè)務(wù)請(qǐng)求,如地震和斷層的展示、震中距的計(jì)算、多邊形選區(qū)的判定等;Web 服務(wù)則處理一般請(qǐng)求,如數(shù)據(jù)庫(kù)查詢(xún)、數(shù)值計(jì)算等。這兩類(lèi)服務(wù)的內(nèi)容不同,但工作原理是一致的,即均基于Web 服務(wù)的請(qǐng)求-響應(yīng)模型[19-22],因此,可以將WebGIS 作為Web 服務(wù)的空間功能擴(kuò)展,實(shí)現(xiàn)兩類(lèi)服務(wù)的集成。基于此,我們參考傳統(tǒng)Web 應(yīng)用架構(gòu)設(shè)計(jì)了本系統(tǒng)的3 層結(jié)構(gòu),自下而上分別是數(shù)據(jù)層、服務(wù)層和接口層(圖1)。通過(guò)在各層次上擴(kuò)展空間數(shù)據(jù)管理功能,實(shí)現(xiàn)Web 與WebGIS 業(yè)務(wù)的綜合集成。在數(shù)據(jù)層,采用關(guān)系型數(shù)據(jù)庫(kù)PostgreSQL 及其空間擴(kuò)展PostGIS,用PostgreSQL 管理二維表數(shù)據(jù),用PostGIS 管理空間數(shù)據(jù),如斷層、政區(qū)、道路等;在服務(wù)層,將Web 服務(wù)和WebGIS 服務(wù)統(tǒng)一部署到Web 容器Apache Tomcat 中;在接口層,使用JavaScript語(yǔ)言提供動(dòng)態(tài)網(wǎng)頁(yè)服務(wù),使用OpenLayers 訪問(wèn)Web-GIS 服務(wù)。

圖1 系統(tǒng)的體系結(jié)構(gòu)Fig.1 System structure
WebGIS 是系統(tǒng)的關(guān)鍵服務(wù),用戶(hù)的各種空間數(shù)據(jù)操作都要依托WebGIS 平臺(tái)完成。搭建WebGIS 平臺(tái)的流程是:在數(shù)據(jù)層,安裝數(shù)據(jù)庫(kù)PostgreSQL 及空間擴(kuò)展PostGIS,創(chuàng)建數(shù)據(jù)庫(kù)、數(shù)據(jù)表,導(dǎo)入數(shù)據(jù);在服務(wù)層,安裝、配置WebGIS 服務(wù)器GeoServer,將空間數(shù)據(jù)以WMS 和WFS 格式發(fā)布;在接口層,利用OpenLayers 調(diào)用WMS 和WFS 圖層。
在數(shù)據(jù)層,PostGIS 支持多種幾何類(lèi)型,包括:點(diǎn)(POINT)、線(LINESTRING)、多邊形(POLYGON)、多點(diǎn)(MULTIPOINT)、多線(MULTILINESTRING)、多多邊形(MULTIPOLYGON)以及由這些類(lèi)型組成的幾何集。在PostGIS 中,每個(gè)圖層都單獨(dú)保存為一張表,每張表存儲(chǔ)一種特定的空間元素。表1 介紹了當(dāng)前數(shù)據(jù)庫(kù)中一些幾何字段的信息,其中,地震(earthquake)采用POINT 類(lèi)型;斷層(faults)采用MULTILINESTRING 類(lèi)型;省(province)、市(city)、縣(county)政區(qū)均采用MULTIPOLYGON 類(lèi)型。空間系統(tǒng)的取值 “EPSG:4 326” 對(duì)應(yīng)國(guó)際通用標(biāo)準(zhǔn) “WGS84”(EPSG,歐洲石油勘探組織)。

表1 幾何字段說(shuō)明Table 1 Description of the geometry field
在服務(wù)層,用Apache Tomcat 容器裝載GeoServer,通過(guò)配置GeoServer 可以將PostGIS 數(shù)據(jù)源發(fā)布為WMS 和WFS 格式的數(shù)據(jù),并使用GeoServer 提供的OpenLayers 視圖對(duì)發(fā)布結(jié)果進(jìn)行預(yù)覽,例如,我們通過(guò)GeoServer 對(duì)斷層數(shù)據(jù)進(jìn)行了發(fā)布,發(fā)布結(jié)果預(yù)覽如圖2 所示。

圖2 通過(guò)GeoServer 發(fā)布和預(yù)覽斷層數(shù)據(jù)Fig.2 Faults data published and previewed by GeoServer
在客戶(hù)端,我們使用OpenLayers 處理空間數(shù)據(jù)操作請(qǐng)求,使用HTML 和JavaScript 處理一般數(shù)據(jù)操作請(qǐng)求,并向用戶(hù)提供統(tǒng)一的Web 接口。系統(tǒng)對(duì)于目前常用的Web 瀏覽器(如IE 11,EDGE,Google Chrome 等)均有良好的兼容性,用戶(hù)可以通過(guò)瀏覽器直接訪問(wèn)系統(tǒng)主頁(yè)。系統(tǒng)主頁(yè)的布局如圖3 所示,頁(yè)面中部是底圖區(qū)域,圖上顯示了最近入庫(kù)的一條M2.2 地震的震中位置;頁(yè)面兩側(cè)和頂部提供了一些功能選項(xiàng),其中,左右兩側(cè)分別是 “地震目錄” 和“圖層控制” 菜單,頂部右側(cè)圖標(biāo)可以鏈接到其他頁(yè)面。為了適應(yīng)用戶(hù)的個(gè)性化需求,系統(tǒng)定義了幾類(lèi)圖層,分為:①底圖,包括:天地圖、天地圖遙感影像、地形圖等,效果見(jiàn)圖4 和圖5;② 基礎(chǔ)圖層,包括:鐵路、高速公路、湖泊、河流等;③測(cè)震圖層,與地震監(jiān)測(cè)有關(guān)的圖層,包括:地震目錄、震源機(jī)制解、全國(guó)斷層等;④ 行政區(qū)劃,包括:全國(guó)省界、河北市界、河北縣界等。用戶(hù)可以在 “圖層控制” 菜單進(jìn)行選擇,被選中的圖層將疊加顯示在底圖上,例如,選擇地形圖、全國(guó)斷層、河北市界。

圖3 地震空間分析系統(tǒng)主頁(yè)Fig.3 Home page of seismic spatial analysis system

圖4 地形底圖Fig.4 Topographic base map

圖5 遙感影像底圖Fig.5 Remote sensing image base map
系統(tǒng)提供了地震目錄快捷檢索功能。“地震目錄” 菜單中提供的檢索條件包括:地震目錄、時(shí)間范圍、震級(jí)范圍、深度范圍、空間范圍等。其中,空間范圍對(duì)地震震中位置進(jìn)行約束,提供了矩形、多邊形、圓形、經(jīng)緯度和震中距等選區(qū)控件,用戶(hù)可以直接在底圖上繪制選區(qū)。例如,用戶(hù)需要從全國(guó)正式報(bào)目錄中檢索2018 年1 月1 日—12 月31 日,MS1.0 以上,石家莊、邢臺(tái)附近的地震,可按圖6a 設(shè)置檢索條件,然后單擊 “顯示檢索結(jié)果” 。系統(tǒng)將列表顯示檢索結(jié)果,并在底圖上顯示震中分布。在圖上單擊地震球,將彈窗顯示該地震的基本參數(shù)(圖6b)。

圖6 地震檢索Fig.6 Earthquake retrieving
系統(tǒng)還提供了斷層參數(shù)查詢(xún)和3D 模擬功能(圖7)。啟用斷層圖層后,在圖上單擊斷層線,系統(tǒng)將彈窗顯示該斷層的基本參數(shù),包括:斷層名稱(chēng)、性質(zhì)、長(zhǎng)度、走向、傾向、傾角、最新活動(dòng)時(shí)代等。為了使用戶(hù)更直觀地了解斷層的產(chǎn)狀,系統(tǒng)提供了斷層的3D 模擬視圖,通過(guò)單擊 “顯示3D 效果” 按鈕,即可彈出3D 斷層窗口,其中,藍(lán)、紅、綠線代表坐標(biāo)軸,藍(lán)線箭頭指向地理的北方。斷層的形態(tài)是根據(jù)斷層的實(shí)際參數(shù):性質(zhì)(正斷層、逆斷層、走滑斷層)、走向和傾角,采用three.js 技術(shù)實(shí)時(shí)渲染而成,反映了斷層在地殼內(nèi)的真實(shí)展布狀態(tài)。

圖7 斷層3D 模擬Fig.7 3D model of faults
系統(tǒng)提供了多種常用的地震時(shí)序分析方法,包括:M-t、△t-t、頻次、lgN-M、b值、缺震、應(yīng)變能釋放等。通過(guò)主頁(yè)上的 “時(shí)序分析” 圖標(biāo)可鏈接至?xí)r序分析頁(yè)面。頁(yè)面布局與空間分析相似,中部為底圖區(qū)域,用于顯示地震;左側(cè)為條件區(qū)域,用于設(shè)置分析方法和計(jì)算參數(shù)。例如,用戶(hù)要對(duì)京津冀地區(qū)2018 年MS1.0 以上地震做M-t分析,可按圖8a 設(shè)置分析條件,然后單擊 “顯示分析結(jié)果” 。系統(tǒng)將彈窗顯示M-t圖,該圖支持人機(jī)交互,從圖上選中某次地震,將彈窗顯示該地震的基本參數(shù)(圖8b)。M-t圖描述了震級(jí)(M)與時(shí)間(t)的關(guān)系,是地震活動(dòng)性研究最常用的圖表之一。除了M-t方法之外,系統(tǒng)還支持多種分析方法,圖8c 和圖8d 展示了對(duì)同一數(shù)據(jù)集使用不同方法進(jìn)行分析的結(jié)果對(duì)比。從圖8d 可以看出,時(shí)序分析模塊也支持基于WebGIS 的空間可視化分析。因此,利用本系統(tǒng),用戶(hù)可以在時(shí)空兩個(gè)維度上同時(shí)開(kāi)展地震活動(dòng)性研究;同時(shí),大量交互式分析接口的設(shè)計(jì),增強(qiáng)了系統(tǒng)的易用性,也有助于用戶(hù)工作效率的提高。

圖8 地震時(shí)序分析Fig.8 Seismic time-series analysis
基于用戶(hù)第一的原則,考慮不同用戶(hù)在細(xì)節(jié)上的關(guān)注點(diǎn)不同,測(cè)試組選擇不同專(zhuān)業(yè)背景、不同工作崗位的30 名用戶(hù)對(duì)本系統(tǒng)的軟件界面友好性、操作流暢性、功能完備性進(jìn)行了測(cè)試。用戶(hù)經(jīng)過(guò)實(shí)際操作,反饋結(jié)果為頁(yè)面結(jié)構(gòu)符合操作習(xí)慣,操作步驟簡(jiǎn)單,不必查看使用手冊(cè)就能流暢的進(jìn)行操作。用戶(hù)體驗(yàn)測(cè)試結(jié)果表明,本系統(tǒng)無(wú)須安裝客戶(hù)端程序、無(wú)須復(fù)雜的配置,使用通用的Web 瀏覽器即可訪問(wèn)系統(tǒng)服務(wù)的方式,降低了系統(tǒng)的使用門(mén)檻,增強(qiáng)了易用性,能讓用戶(hù)快速的接受和使用,系統(tǒng)的交互、設(shè)計(jì)合理。
本文對(duì)地震活動(dòng)性分析軟件的需求進(jìn)行了分析,認(rèn)為現(xiàn)代化的分析平臺(tái)應(yīng)當(dāng)同時(shí)支持空間和時(shí)間維度的地震參數(shù)可視化分析,并提供良好的交互性、易用性、可維護(hù)性和可擴(kuò)展性。針對(duì)這種現(xiàn)實(shí)需求,我們研制了基于開(kāi)源WebGIS 的地震活動(dòng)性分析軟件。
設(shè)計(jì)了系統(tǒng)的體系結(jié)構(gòu),通過(guò)為傳統(tǒng)Web 應(yīng)用分層結(jié)構(gòu)的各層次擴(kuò)展空間數(shù)據(jù)管理功能,實(shí)現(xiàn)了Web 服務(wù)與WebGIS 服務(wù)的綜合集成。開(kāi)發(fā)過(guò)程中,我們?cè)跀?shù)據(jù)層采用關(guān)系型數(shù)據(jù)庫(kù)PostgreSQL 及其空間擴(kuò)展PostGIS;在服務(wù)層,將Web 服務(wù)和WebGIS服務(wù)統(tǒng)一部署到Web 容器Apache Tomcat 中;在接口層,使用JavaScript 與OpenLayers 技術(shù)。
系統(tǒng)支持對(duì)地震進(jìn)行空間和時(shí)間維度的分析,實(shí)現(xiàn)了地震、斷層、政區(qū)等多種地理要素的空間可視化;利用WebGL 技術(shù)實(shí)現(xiàn)了斷層的3D 模擬;支持多種地震參數(shù)時(shí)間序列分析方法;提供對(duì)圖層進(jìn)行配置、控制、選區(qū)和測(cè)量的功能接口;提供了豐富的交互式屬性查詢(xún)接口。
用戶(hù)體驗(yàn)測(cè)試結(jié)果顯示,系統(tǒng)能讓用戶(hù)快速接受和使用,系統(tǒng)的交互、設(shè)計(jì)合理。