論文鏈接: https://www./2076-3417/10/12/4408 圖1 某真實復(fù)雜圖書館倒塌全過程模擬 00 推送濃縮版 (1)所提出的聯(lián)合模擬框架有效結(jié)合了有限元方法與物理引擎的優(yōu)點。 (2)聯(lián)合模擬方法考慮了結(jié)構(gòu)構(gòu)件的碰撞,并可以模擬結(jié)構(gòu)坍塌后廢墟的分布。 (3)利用振動臺實驗驗證了所提出的聯(lián)合模擬方法比單獨使用物理引擎的方法更準確。 (4)利用真實復(fù)雜圖書館建筑的案例分析驗證了聯(lián)合模擬方法的適用性。 01 研究背景 圖2 地震后建筑倒塌廢墟 左圖圖源:http://tse4.mm./th/id/OIP.yUIqpebwWM2eW0sztQQyJQAAAA?pid=Api&rs=1 右圖圖源: http://tse4.mm./th/id/OIP.s1MWTej7TRRC2gkQzlUHKQHaFC?pid=Api&rs=1 圖3 有限元大變形發(fā)生單元畸變 圖 4 物理引擎模擬難以保證模擬的真實性 圖5 非正經(jīng)配圖 02 有限元與物理引擎聯(lián)合模擬框架 圖6 聯(lián)合模擬框架 圖中傾斜加粗的字體表示所用到的程序,傾斜字體表示所用到的該程序的功能。 模塊一:有限元模型建立與轉(zhuǎn)換 使用有限元軟件建立結(jié)構(gòu)的有限元模型,將有限元幾何模型轉(zhuǎn)化為Blender中的Bullet物理引擎幾何模型,并對幾何模型進行剛體化。 模塊二:小變形模擬與倒塌起始時刻確定 開展有限元非線性時程分析,獲得結(jié)構(gòu)在倒塌小變形階段的結(jié)構(gòu)響應(yīng)。確定結(jié)構(gòu)的倒塌起始時刻,提取結(jié)構(gòu)有限元模型在倒塌起始時刻及之前各個時刻各點的位移和速度。 模塊三:數(shù)據(jù)遷移與大變形倒塌模擬 根據(jù)有限元計算數(shù)據(jù)映射方法,將倒塌起始時刻結(jié)構(gòu)的位移數(shù)據(jù)和速度數(shù)據(jù)映射到Bullet物理引擎模型中。然后采用BCB(Bullet Constraints Builder)預(yù)處理工具對幾何模型進行預(yù)處理(具體方法參考論文),從而得到可用于物理引擎計算的模型。最后,使用Bullet物理引擎進行計算,獲得結(jié)構(gòu)的大變形的計算數(shù)據(jù)。 模塊四:數(shù)據(jù)整合渲染與可視化 大變形倒塌分析完成后,使用Blender的渲染功能分別對結(jié)構(gòu)小變形和大變形結(jié)果進行渲染,最終將渲染好的視頻拼接得到結(jié)構(gòu)倒塌的全過程。 03 關(guān)鍵技術(shù) 注意: 此部分過于細節(jié),長話短說,這里僅簡要介紹,具體實現(xiàn)詳見論文。亦可跳過此節(jié),從案例分析看起。 為了實現(xiàn)上述聯(lián)合模擬框架,需要解決以下三個關(guān)鍵問題: (1)物理引擎與有限元的幾何模型及材料映射方法 物理引擎的倒塌模擬方法為剛體彈簧元,其單元與目前主流的有限元軟件的單元有較大的差別,因此需要提出一種針對物理引擎與有限元軟件的模型轉(zhuǎn)換方法。 (2)倒塌起始時刻確定方法 要實現(xiàn)有限元與物理引擎的聯(lián)合計算,需要根據(jù)有限元模擬結(jié)果確定有限元與物理引擎聯(lián)合計算的切換時刻 (倒塌起始時刻)。 (3)有限元計算數(shù)據(jù)映射方法 有限元計算完成后,需要將有限元小變形計算數(shù)據(jù)遷移到物理引擎中。 3.1 幾何模型及材料映射方法 (1)幾何模型映射 采用Blender中提供的基本網(wǎng)格——立方體(cube)作為基礎(chǔ)網(wǎng)格進行物理引擎模型構(gòu)建,幾何模型映射分兩步:1)形狀變換與位置變換:利用Blender提供的基本網(wǎng)格進行形狀變換與位置變換,得到與有限元模型單元相同形狀和位置的幾何單元。2)單元剛體化:將幾何模型轉(zhuǎn)換為受物理引擎控制的剛體模型。具體實現(xiàn)詳見論文。 圖 7 Blender中實體結(jié)構(gòu)建立方法 (2)BCB中材料屬性映射方法 BCB會根據(jù)Blender中單元名稱對單元進行分組。因此,在Blender中建立幾何模型時,需要對單元的名稱進行特別命名,以確保有限元中材料相同的單元被BCB劃分到同一材料組中。具體命名方法詳見論文。 3.2 倒塌起始時刻確定方法 本文的聯(lián)合模擬方法為充分發(fā)揮有限元與物理引擎的優(yōu)勢,在倒塌起始時刻Tc前,采用有限元模型計算;在倒塌起始時間點Tc之后,采用物理引擎模型計算。因此,倒塌起始時刻的確定十分重要。部分研究表明可將豎向位移為1m作為倒塌判據(jù)。由于這一倒塌判據(jù)物理意義明確,因此本文將其選為倒塌起始時刻Tc的確定依據(jù)。 3.3 有限元計算數(shù)據(jù)映射方法 有限元數(shù)據(jù)映射包括位移場映射與速度場映射。為了實現(xiàn)從有限元到物理引擎BCB的位移場與速度場映射,需要使用Blender的關(guān)鍵幀插入技術(shù)。關(guān)鍵幀可定義物體某種狀態(tài)的起止點,比如:定義位移起止點的位移關(guān)鍵幀與定義運動模式起止點的運動模式關(guān)鍵幀。Blender中有兩種運動模式:按照動畫系統(tǒng)運動,即物體的運動受位移關(guān)鍵幀控制;按照物理引擎模擬運動,即物體運動受物理引擎計算控制。 (1)位移場映射方法 位移場映射僅需使用位移關(guān)鍵幀,結(jié)構(gòu)到達倒塌起始時刻Tc之前,其構(gòu)件運動由位移關(guān)鍵幀控制,按照有限元計算結(jié)果運動。Blender僅僅完成有限元計算結(jié)果的顯示,Bullet物理引擎未參與計算。 具體的位移場映射方法如下圖所示。 ![]() 圖 8 位移場映射方法 (2)速度場映射方法 速度場映射的目的保證在倒塌起始時刻Tc,有限元模擬切換到BCB模擬時,不僅保證位移一致(采用上一節(jié)位移場映射方法),而且速度也保持一致。有限元計算的速度場數(shù)據(jù)的映射需要使用位移關(guān)鍵幀與運動模式關(guān)鍵幀。 Blender中的速度映射只能通過相鄰位移關(guān)鍵幀進行位移差分得到。如果直接使用有限元倒塌起始時刻的位移場xj及倒塌起始時刻前一時刻的位移場xi進行速度映射,那么得到的是近似的割線速度,而非倒塌起始時刻有限元模擬的真實速度。而物理引擎中下一時刻物體的位置,由上一時刻物體的位置和速度確定,因此采用割線速度會導(dǎo)致誤差。 因此,本文提出了一種虛擬位移向量的計算方法,將虛擬位移向量xvirtual替換xi,即可實現(xiàn)倒塌關(guān)鍵幀的真實速度場與位移場的映射。其大致思路如圖9所示,具體實現(xiàn)詳見論文。 ![]() 圖 9 虛擬位移向量映射方法 04 案例分析 4.1 三層框架振動臺試驗驗證 為了驗證本文提出的有限元與物理引擎聯(lián)合計算方法的可靠性,分別采用僅使用有限元、僅使用物理引擎、本文聯(lián)合模擬方法,三種方法建立了三層框架結(jié)構(gòu)并進行倒塌模擬分析。其結(jié)果如圖10所示。與試驗結(jié)果對比,可見本文聯(lián)合模擬方法,廢墟分布模擬效果最佳。 ![]() 圖10 三種方法倒塌模擬效果對比 4.2 某真實復(fù)雜圖書館倒塌模擬 為了說明本文提出的模擬方法對真實復(fù)雜結(jié)構(gòu)的適用性,采用某圖書館進行了倒塌計算。該建筑為框架剪力墻結(jié)構(gòu),總高度19.8 m。利用本文提出的方法對其進行倒塌模擬,其倒塌全過程如圖11所示與最終廢墟分布結(jié)果如圖12所示。 ![]() 圖 11 某圖書館倒塌全過程 ![]() 圖 12 某圖書館倒塌后廢墟分布 05 結(jié)論 本文提出了基于有限元與物理引擎聯(lián)合模擬的計算框架,采用該方法對一個三層框架的振動臺倒塌試驗以及某真實圖書館開展了倒塌模擬。相關(guān)結(jié)論如下: (1)本文提出的框架,在小變形階段采用限元模擬,在大變形階段采用物理引擎模擬,充分利用了兩者的優(yōu)勢,可以避免有限元在大變形模擬中難收斂,無法形成廢墟,以及物理引擎小變形階段模擬準確度不高的問題。 (2)本文通過某框架驗證算例,驗證了本文所提出的倒塌模擬方法比僅使用物理引擎的倒塌模擬方法廢墟模擬準確性更高。并以某圖書館倒塌案例展示了本框架倒塌模擬的高真實感效果。 (3)本文提出的方法能夠考慮結(jié)構(gòu)塊體的碰撞,在結(jié)構(gòu)倒塌后保留了結(jié)構(gòu)的殘骸,可以為建筑倒塌搜救訓練提供支持。 在實現(xiàn)本文所提出的框架時,選擇了MSC. Marc、開源的BCB腳本與Bullet物理引擎。需要注意的是,本文所提出的有限元與物理引擎聯(lián)合模擬框架同樣適用于其他有限元軟件和物理引擎。 06 尾聲 1. 2020年,我國南方某鋼結(jié)構(gòu)倒塌事故倒塌過程和廢墟分布模擬。 2. 2021年,美國佛羅里達州高層公寓倒塌事故倒塌過程和廢墟分布模擬。 ![]() 鄭哲 ---End--- 相關(guān)研究 專著 人工智能與機器學習 城市災(zāi)害模擬與韌性城市 高性能結(jié)構(gòu)與防倒塌
|
|