ADCIRC模擬風暴潮和颶風災害—實例講解

前言

ADCIRC模型(The ADvanced CIRCulation model)是由北卡羅來納大學海洋科學研究所的Luettich教授和美國圣母大學的Westerink教授聯合研制的,是一個計算機程序系統,用于解決二維和三維的隨時間變化的自由地表環(huán)流和運輸問題。目前應用領域包括:模擬潮汐和風驅動的循環(huán)、預測風暴潮和洪水、近岸海上作業(yè)。。。。

另外ADCIRC+SWAN耦合模型也是目前沿海風暴潮,熱帶氣旋誘發(fā)的沿海洪水模擬最先進和廣泛使用的模型。本文就簡短介紹如何使用ADCIRC模型來模擬颶風誘發(fā)的風暴潮,包括數值穩(wěn)定網格的建立,網格的可視化,Bathymetric 數據的收集,參數的設置,以及ADCIRC模型的后處理。最重要的是,本文中所采用的軟件Aquaveo SMS 13.0全功能版本可以聯系作者獲?。╯nailtech_info@163.com)。

圖1. ADCIRC模型模擬颶風登陸期間風暴潮、風速和潮流流速

1. 網格構建

數值穩(wěn)定的計算網格是模擬風暴潮的前提。ADCIRC模型采用的是靈活的非結構網格 (Unstructured mesh) 來劃分計算區(qū)域。這使得我們可以在深海區(qū)域采用粗糙分辨率的網格,在淺水海岸采用精細的網格來同時滿足計算和精度的需求。

1.1 利用軟件SMS13.0來劃分網格

SMS13軟件允許操作者自定義研究區(qū)域。一種比較常用的方案是在獲得研究區(qū)域內的海岸線數.shp文件。具體步驟如下:

利用DEM數據或者Bathymetry數據生成0m等高線,作為后續(xù)網格劃分的邊界區(qū)域。這一步可在ArcGIS上操作,最終生成研究區(qū)域的線要素數據。如圖2A所示:

利用SMS提供的網格編輯工具來轉換shp圖層,重新編輯邊界層上的節(jié)點分布。流程為:GIS Data --> 右鍵shp文件并選擇convert生成feature objects -->利用左側編輯欄修改相應Map Data模塊中的邊界--> 修改圖層的type為mesh generator?--> build polygons?--> 左側編輯工具選擇后雙擊邊界區(qū)域,修改網格生成方式?--> 點擊菜單欄feature objects選項卡下方的map to 2d mesh即可。具體步驟可參見官方教程, 有相應的demo。

最終生成結果如圖2D所示

圖2: 與ArcGIS結合生成網格。

需要注意的是,這里采用的方法生成的計算網格都比較粗糙,并且采用的是paving的方式。不能夠根據所選區(qū)域的深淺來自動劃分網格的分辨率。并且不能保證數值穩(wěn)定,在求解過程中容易發(fā)散,最終終止程序運行。個人建議采用LTEA或者自己寫代碼來生成網格。?通過自動插值,并控制CFL<0.5來確保數值穩(wěn)定,生成的網格如下:

圖3:數值穩(wěn)定網格


?2. 數據獲取與預處理

2.1 數據源

上述網格生成過程中,設計到兩個基本數據,一個是DEM數據,另一個是Bathymetry數據。這里提供兩個網站,DEM數據可以從SRTM獲取,Bathymetry數據可從NOAA獲取。當然,我們國家海域可用數據目前分辨率普遍不高。各位也可根據自身的需要,自己實地測量,比較方便的是將數據記錄為.xyz形式或者.nc形式,便于后續(xù)網格插值。如果做颶風風暴潮模擬的,颶風數據可在美國NRC中心獲取.atcf或者.hurdat2格式的颶風路徑數據。

2.2 數據預處理

Bathymetry數據和DEM數據都可以通過.nc的形式被sms13讀取。只需利用GIS軟件裁剪相應的柵格數據,只需覆蓋研究區(qū)域即可。另外建議如果有.xyz 文本格式記錄的測深數據,優(yōu)先選擇此格式。sms13對這類文本格式的數據讀取速度很快,便于快速的插值計算。

3. ADCIRC模型參數設置

圖3:ADCIRC模型參數設置

3.1 潮汐數據

右鍵boundary邊界Tidal attributes(圖3G),添加M2,S2,N2,K1,O1,Q1,P1,K2等八個主要潮汐分量。潮汐數據可從Aquaveo SMS官網獲得,也可使用TPXO全球潮汐數據庫

?圖4: 潮汐數據庫

?3.2 模型參數

NOLIBF, 控制淺水方程中底面摩擦類型??蛇x項有線性變化,二次,混合非線性,Mannings N at Sea Floor,Chezy Friction Coefficient等??筛鶕?a target="_blank">Land cover數據來進行賦值計算。

TAU0,?影響 ADCIRC 控制方程中的數值擴散程度。具體來說,它會影響決定廣義波浪連續(xù)性方程 (GWCE) 的原始部分和波浪部分的相對貢獻的加權因子。具體可參照下表。可利用SMS內置的柵格計算工具,根據點的點的深度自動賦值。圖4: TAU0的設置

其他fort.13的節(jié)點屬性可以參照adcirc wikipedia page里面的內容進行設置。另外推薦Marsooli R & Lin N?等人的研究工作,具體講解了參數如何取值。

?3.3 構造颶風風場

ADCIRC模型可以接受多種形式定義的風場信息。具體可參照fort.22文本。一種常用的方式是通過.atcf形式的颶風路徑來構造對稱風場, 即NWS=8。本案例采用了這種方法。結果下圖所示

圖5:颶風軌跡信息讀取及對稱風場構造

?4 模擬風暴潮

?4.1 運行并行程序PADCIRC

在設計好參數之后,接下來可以運行模型。對于中小規(guī)模的計算任務,一般節(jié)點數量在20w一下的時候,可以利用ADCIRC計算,但是當節(jié)點數量非常大,時間步長很短的時候,建議采用ADCIRC模型的并行程序PADCIRC運行,可以極大效率地縮短計算周期。另外對于超大計算需求的,作者可協助將計算任務部署在服務器上。

?圖6: 并行模擬風暴潮,極大縮短計算時間

?4.2 輸出設置

ADCIRC可輸出水面高程(fort.63),水流平均速度(fort.64)、風速(fort.74)和風壓(fort.73)的實時變化數據。以及各輸出變量對應的模型運行的全局最大值和最小值文件(maxele.63、maxvel.63、maxwvel.63、maxrs.63、minpr.63)。

?圖7:模型輸出文件控制?

?4.3 設置觀測點

ADCIRC 同樣允許操作者在感興趣的區(qū)域設置觀測點,以行使實時監(jiān)督該區(qū)域的水位,流速以及風場的變化。只需要在點擊左側編輯欄的Creat feature point然后將其屬性設置為ADCIRC Station。最后通過與output選項卡內相似的操作來控制觀測站的數據輸出。

4.4 運行ADCIRC

?在上述網格以及模型參數設置完之后,點擊保存和運行。SMS13軟件運行如下:

?圖8: 運行ADCIRC模型

?4.5 結果可視化

?模型輸出的結果(fort.63,64,73,74)是時序變化的。時間步長為用戶預先定義。SMS13提供了豐富的柵格和矢量可視化工具。如下圖所示為水流速度和水面高程:

?圖9:結果的可視化

5 總結

整個建模過程分為:構建數值穩(wěn)定網格、加載潮汐數據、模型參數設置、構建風場和結果可視化等步驟。當然本案例只是展示如何執(zhí)行完整的adcirc模型用于模擬風暴潮,不能直接用于科學研究。

有科研或者應用需求的讀者,有需要Aquaveo SMS 13 軟件的同學,可以郵箱聯系作者:snailtech_info@163.com

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容