呂夢雅,閆 瑾,任喜亮,唐 勇,*,周莉莎
(1.燕山大學(xué) 信息科學(xué)與工程學(xué)院,河北 秦皇島 066004;2.河北省計算機(jī)虛擬技術(shù)與系統(tǒng)集成重點(diǎn)實(shí)驗(yàn)室,河北 秦皇島 066004)
近年來,各地林火火災(zāi)高發(fā),山東威海、四川涼山、山西沁源等陸續(xù)發(fā)生的森林火災(zāi)都帶來重大損失,變化多端的林火蔓延尤其給火災(zāi)預(yù)防和撲救帶來巨大的困難。其中樹冠火蔓延對森林的摧毀性最大,不僅能燒毀針葉、樹枝和地被物等,而且燃燒產(chǎn)熱量大、蔓延速度飛快,難以撲滅。因此研究樹冠火的發(fā)生條件和蔓延規(guī)律,并對樹冠火的生長轉(zhuǎn)換過程進(jìn)行實(shí)時仿真,有著重要的學(xué)術(shù)價值和現(xiàn)實(shí)意義。
1946年,W.R.Fons首次提出林火蔓延數(shù)學(xué)模型,此后,許多學(xué)者也都開始利用數(shù)學(xué)工具對林火蔓延進(jìn)行建模并以此來分析預(yù)測林火的蔓延過程。目前,用于刻畫林火蔓延的數(shù)學(xué)模型主要有McArthur模型、加拿大林火蔓延模型、Rothermel模型和王正非林火蔓延模型,此外還有很多基于上述模型修正演變而來的各種蔓延模型。其中樹冠火蔓延模型是廣受關(guān)注的重點(diǎn)之一。此類模型多以地表火蔓延模型為研究基礎(chǔ),重點(diǎn)開展地表火向樹冠火的生長轉(zhuǎn)換和樹冠火自身蔓延兩部分的研究。1972年,美國農(nóng)業(yè)部Rothermel[1]采用了加權(quán)平均法獲得可燃物的參量,從宏觀尺度來描述林火蔓延,該模型是一個半經(jīng)驗(yàn)?zāi)P?,沒有考慮溫度對火焰蔓延模型精確性的影響;1977年,加拿大森林研究所Wagner[2]提出了樹冠火蔓延模型,但是他偏向于數(shù)值模擬和簡單可視化,模擬過程復(fù)雜,同時沒有考慮交互的影響,效果不夠真實(shí);1996年,中國科學(xué)技術(shù)大學(xué)吳清松等人[3]對燃燒過程中水分蒸發(fā)等物理?xiàng)l件對樹冠火蔓延速率的影響進(jìn)行了研究,并建立了物理模型從而控制樹冠火蔓延,該模型是一維模型,適用范圍小,同時沒有對轉(zhuǎn)換過程進(jìn)行描述;2012年,天津大學(xué)劉世光等人[4]提出一種基于Rothermel模型的地表火隨時間變化的建模方法,并對火焰蔓延進(jìn)行真實(shí)感繪制,但實(shí)現(xiàn)的火焰細(xì)節(jié)不夠豐富;2013年,燕山大學(xué)唐勇等人[5]充分考慮了火焰燃燒過程中的物理特性,并利用基于物理的N-S方程對火焰運(yùn)動進(jìn)行建模,并對火焰進(jìn)行光線投影渲染后移植到GPU進(jìn)行計算,極大提高了仿真速度,但是加入煙霧和陰影之后仿真真實(shí)性有待提高;2015年,丁偉龍等人[7]為了在視覺上模擬單一植物的燃燒現(xiàn)象,提出了一種基于物理的多參數(shù)植物燃燒模擬方法,同時引入了分形和粒子系統(tǒng)來增加植物模型燃燒的真實(shí)性,但該方法沒有考慮自然環(huán)境因素對火焰運(yùn)動的影響,實(shí)現(xiàn)的火焰運(yùn)動不夠真實(shí),仿真效果不好;2017年,斯坦福大學(xué)S?ren Pirk等人[8]通過改變植物的物理化學(xué)屬性,實(shí)現(xiàn)與火焰的交互,生成真實(shí)的植物燃燒現(xiàn)象,不過他們的研究局限于單株樹木,未考慮大場景多株樹木下樹冠火生長蔓延運(yùn)動的情況;2018年,Miguel G Cruz等人[11]分析了5種不同燃料類型的火勢蔓延模型的準(zhǔn)確性,并與其他模型進(jìn)行對比,但是模擬精確性較低,誤差較大;2019年,奧胡斯大學(xué)Michael B. Nielsen等人[12]通過物理方程建模的方式模擬物體燃燒,視覺效果上很逼真,但缺乏實(shí)時性。
因此,本文提出一種改進(jìn)的樹冠火生長蔓延模型,通過引入脈動風(fēng)場豐富火焰細(xì)節(jié),提高火焰蔓延真實(shí)性。再次,應(yīng)用能量守恒定律,建立樹冠火隨溫度場動態(tài)變化模型,增加樹冠火轉(zhuǎn)換過程的精確度。最后,運(yùn)用Huygens原理和紋理映射技術(shù)對火焰蔓延進(jìn)一步優(yōu)化仿真,保證實(shí)時性。
本文采用Wagner提出的樹冠火模型進(jìn)行計算,此模型主要考慮了樹木自身因素對火焰蔓延過程及火焰運(yùn)動的影響,包括樹葉的含水率M和林木枝下高H,計算公式如下:
(1)
(2)
其中,IO是樹冠火發(fā)生臨界狀態(tài)時地表火蔓延的火焰強(qiáng)度閾值,Ib是地表火蔓延時火焰強(qiáng)度,IR是地表火蔓延的反應(yīng)強(qiáng)度,R是地表火火焰蔓延速率值,σ是蔓延時可燃物的表面積與體積比。
傳統(tǒng)樹冠火蔓延模型沒有考慮外力項(xiàng)因素對蔓延過程及火焰運(yùn)動的影響,難以用于復(fù)雜條件下火焰蔓延的模擬。真實(shí)環(huán)境中,火焰蔓延會受到風(fēng)力、地形等外部因素的影響。其中,風(fēng)速作為主要影響因子,其對火焰蔓延的影響遠(yuǎn)超其他因素。因此,本文引入脈動風(fēng)場重新計算火焰強(qiáng)度,對傳統(tǒng)樹冠火生長蔓延模型進(jìn)行改進(jìn),以增加火焰的細(xì)節(jié),提高火焰蔓延模擬的真實(shí)性。改進(jìn)后計算公式為
14.2e0.154 7v(t),
(3)
式中,v(t)為脈動風(fēng)速。
火焰的蔓延會受到風(fēng)場的影響,將脈動風(fēng)場看作是一個典型的非完全均勻時空隨機(jī)場。設(shè)m個點(diǎn)空間相關(guān)脈動風(fēng)速時程列向量的(Autoregressive model)模型可表示為
(4)
其中,p是AR模型的階數(shù)值;Δt是模擬風(fēng)速時間步長;ψK是AR模型的自回歸系數(shù)矩陣;v(t-KΔt)是t時刻之前K個時刻的脈動風(fēng)速;N(t)是獨(dú)立隨機(jī)過程向量,N(t)=L·n(t),n(t)是正態(tài)隨機(jī)過程;L是m階下三角矩陣。
將速度的表達(dá)式代入式(3)得到火焰強(qiáng)度IO值,通過引入脈動風(fēng)場改進(jìn)火焰強(qiáng)度的計算,增加火焰的細(xì)節(jié),提高火焰運(yùn)動真實(shí)性。
在火焰蔓延過程中,當(dāng)?shù)乇砘鹇踊鹧鎻?qiáng)度Ib大于閾值IO時,就會引發(fā)地表火向樹冠火的轉(zhuǎn)換;反之,當(dāng)Ib小于等于IO時,表示地表火不會向樹冠火發(fā)生轉(zhuǎn)換。
為了提高模擬的準(zhǔn)確性,本文以任一時刻溫度變化狀態(tài)出發(fā),應(yīng)用能量守恒定律,建立樹冠火隨溫度場動態(tài)變化生長過程。結(jié)合Wagner提出的樹冠火生長蔓延模型,得到火的蔓延速度計算式:
R=RO+αT,
(5)
其中,RO是火的初始蔓延速度,T是溫度,α是比例系數(shù),值為0.05。
由能量守恒定律推導(dǎo)出溫度場隨時間變化的微分方程表達(dá)式:
(6)
其中,T為火場溫度;t為火焰蔓延時間;ρ為火源密度;CP為比熱;λ是導(dǎo)熱系數(shù);L是潛熱。
為簡化計算,忽略潛熱的計算項(xiàng),即溫度場的表達(dá)式為
(7)
使用Jacobi迭代求解出每一時刻T值,將其代入式(5)得到火焰蔓延的速度R。通過引入溫度場動態(tài)變化函數(shù)改進(jìn)火焰蔓延速度的計算,使樹冠火生長過程更加準(zhǔn)確。
為了使樹冠火生長蔓延更具有真實(shí)感和實(shí)時性,本文采用基于Huygens的波動傳播模型對火焰蔓延區(qū)域進(jìn)行實(shí)時仿真,原理是通過計算火場邊界上每一個點(diǎn)的過火區(qū)形狀來描述火場邊界,過火區(qū)由隨時間動態(tài)變化的連續(xù)擴(kuò)展多邊形表示,為保證實(shí)時性和精度要求,將選擇多邊形的一點(diǎn)設(shè)置為一個獨(dú)立的初始著火點(diǎn),本文將多邊形頂點(diǎn)的數(shù)量控制在1~624,在計算中,一定時間間隔內(nèi)參數(shù)值設(shè)置是近似不變的,火場邊界是通過這些著火點(diǎn)依次引燃鄰近未燃區(qū)來完成蔓延的。
根據(jù)Huygens波動傳播原理進(jìn)行蔓延區(qū)域的實(shí)時仿真可分三步進(jìn)行:
首先,選取一個著火點(diǎn),蔓延形成一系列著火點(diǎn)。
然后,應(yīng)用連續(xù)擴(kuò)展的多邊形頂點(diǎn)判別的算法,計算逐個著火點(diǎn)的位置關(guān)系,定義3點(diǎn)P1(x1,y1),P2(x2,y2),P(x3,y3)的坐標(biāo),其行列式形式如下:
(8)
最后,設(shè)圖1中各個連續(xù)的頂點(diǎn)為P1,P2,…,Pi,利用行列式結(jié)果的正負(fù)值判斷著火點(diǎn)向量的位置關(guān)系。
圖1 多邊形頂點(diǎn)示意圖Fig.1 Polygon vertices
重復(fù)上述過程可以建立多個著火區(qū)域,通過實(shí)驗(yàn)可證明基于Huygens原理的仿真可以優(yōu)化火焰蔓延過程,保證實(shí)時性和計算精確性,使蔓延過程更加真實(shí)。
基于物理的燒焦效果真實(shí)但實(shí)時性差,本文采用設(shè)定燃料類型的方法,通過模擬過火前后地表形態(tài)的變化,獲得較為真實(shí)且實(shí)時的燒焦效果。被燃燒紋理是主要燃料,對于每個被燃燒紋理,在操作面板中設(shè)定對應(yīng)的燃料值,如果紋理不易燃,則唯一需要設(shè)定的變量是“紋理ID”,它是紋理順序中紋理的數(shù)組索引:0~n,本文設(shè)定不同的燒焦標(biāo)記紋理,將表示隨時間變化不同的燒焦程度。
由實(shí)驗(yàn)結(jié)果可知,使用紋理映射技術(shù)可以模擬不同的燒焦程度,并且在樹冠火生長蔓延實(shí)時仿真中依然可以保持很高的幀率。
本文實(shí)驗(yàn)基于Windows系統(tǒng),處理器為Intel Core i5 9400 2.90GHz,內(nèi)存為16G,顯卡為NVDIA GeForce GTX 1650。軟件環(huán)境采用Unity3D虛擬引擎進(jìn)行系統(tǒng)開發(fā),并結(jié)合C#以及CG/Unity Surface Shader編程語言。
圖2為引入動態(tài)溫度場和脈動風(fēng)場的火焰模擬,a)為文獻(xiàn)[6]通過傳統(tǒng)的粒子系統(tǒng)模擬的火焰效果,可以看出火焰的邊緣較為模糊,缺乏真實(shí)感,b)為文獻(xiàn)[11]通過物理方法模擬的火焰效果,火焰的細(xì)節(jié)比較真實(shí),但是做不到實(shí)時,c)為本文引入動態(tài)溫度場和脈動風(fēng)場進(jìn)行改進(jìn)后的火焰模擬效果,火焰細(xì)節(jié)更為明顯,更具真實(shí)感。
圖2 火焰模擬細(xì)節(jié)對比Fig.2 Comparison of flame simulation details
圖3為本文改進(jìn)的樹冠火蔓延模型模擬效果,a)為文獻(xiàn)[7]基于生物學(xué)-數(shù)學(xué)公式和支持建模的方式聯(lián)合模擬植物樹模型燃燒效果,b)為文獻(xiàn)[6]基于物理定律的方法模擬植物燃燒過程的效果,可以看出二者火焰運(yùn)動不夠真實(shí),細(xì)節(jié)不夠豐富,c)為本文引入脈動風(fēng)場后樹木燃燒的蔓延模擬,火焰運(yùn)動更具有隨機(jī)性,效果更真實(shí)。
圖3 樹冠火燃燒模擬對比Fig.3 Comparison of crown fire combustion simulation
圖4為本文通過調(diào)整風(fēng)系數(shù),不同風(fēng)向不同風(fēng)速對火焰的蔓延方向以及蔓延大小產(chǎn)生不同的影響,根據(jù)大氣運(yùn)動原理可知,風(fēng)的方向和火焰蔓延方向一致。a為無風(fēng)情況下火焰的蔓延效果,b引入風(fēng)場后的火焰蔓延效果且風(fēng)為東風(fēng)、風(fēng)速為2,c為風(fēng)速為5下火焰的蔓延情況。
圖4 引入風(fēng)場對比Fig.4 Comparision of introducing wind field
圖5為引入動態(tài)溫度場樹冠火的生長轉(zhuǎn)換過程。a為Ib≤IO時效果圖,此時地表火不會向樹冠火發(fā)生轉(zhuǎn)換,只是地表火蔓延,b為Ib>IO時效果圖,此時地表火強(qiáng)度大于閾值,發(fā)生地表火向樹冠火的轉(zhuǎn)換。通過應(yīng)用能量守恒定律得到隨時間動態(tài)變化的火焰蔓延速度,該方法使轉(zhuǎn)換過程更加精確,同時滿足火焰模擬的實(shí)時性要求,大大加強(qiáng)了真實(shí)感。
圖5 地表火向樹冠火轉(zhuǎn)換Fig.5 Conversion of surface fire to crown fire
圖6為采用Huygens原理和紋理映射技術(shù)對燒焦效果進(jìn)行實(shí)時仿真。a為文獻(xiàn)[4]的林火蔓延燒焦效果圖,火焰的細(xì)節(jié)和效果都不是很好,同時做不到實(shí)時。b,c,d為本文燒焦效果圖,通過不同的紋理ID,展示不同時間的燒焦程度,可以看到燒焦效果更好,更具有真實(shí)感,同時保證實(shí)時性。
圖6 不同燒焦程度對比Fig.6 Comparison of different scorch levels
為檢測改進(jìn)樹冠火生長蔓延模型的仿真效率,表1列出了本文實(shí)驗(yàn)以及部分文獻(xiàn)數(shù)據(jù)的對比狀況。其中,可以明顯看出本文模型增加了火焰模擬細(xì)節(jié)的同時,確保了樹冠火生長轉(zhuǎn)換的精確度,保證了實(shí)時性。
表1 不同方法的實(shí)驗(yàn)性能對比Tab.1 Comparison of experimental performance of different methods
本文完成了對樹冠火生長蔓延模型的改進(jìn)。首先,引入脈動風(fēng)場改進(jìn)樹冠火生長蔓延模型,增強(qiáng)了火焰細(xì)節(jié),使火焰模擬更加真實(shí);然后,應(yīng)用能量守恒定律建立動態(tài)溫度場模型,使樹冠火轉(zhuǎn)換過程更加精確;最后,將Huygens原理與樹冠火生長蔓延模型相結(jié)合,并采用紋理映射技術(shù)的方法改善了實(shí)時仿真的問題。但是該模型的適用范圍還存在一定問題,沒有考慮不同可燃物以及更加多變的環(huán)境因子下火焰的蔓延情況,場景過大時系統(tǒng)的運(yùn)算速率偏低,這些將是我們未來工作的重點(diǎn)。