一種三維流固單向耦合的實現(xiàn)方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種三維流固單向耦合的實現(xiàn)方法及系統(tǒng),其中,該方法包括:將固體邊界的三角形網(wǎng)格離散成粒子,并進行邊界粒子均勻化采樣;計算該固體中流體粒子的狀態(tài),包括:流體與固體邊界處流體粒子的密度、流體粒子的壓力及粘力,以及流體粒子表面張力;并利用一數(shù)值積分模式對流體粒子的速度和位置信息進行更新;當所述流體粒子穿透所述固體邊界時,對所述流體粒子的速度和位置進行校正,從而實現(xiàn)三維流固單向耦合。本發(fā)明公開的方法及系統(tǒng)增強了邊界處理時的穩(wěn)定性,成功模擬出壓力、粘力和阻止穿透效果的同時大大減小了計算的復雜度,并且有效模擬出表面張力的宏觀效果,而且并不會出現(xiàn)直接模擬聚合力情況下的網(wǎng)狀失真現(xiàn)象。
【專利說明】一種三維流固單向耦合的實現(xiàn)方法及系統(tǒng)
【技術(shù)領域】
[0001] 本發(fā)明涉及基于物理的計算機實時動畫【技術(shù)領域】,尤其涉及一種三維流固單向耦 合的實現(xiàn)方法及系統(tǒng)
【背景技術(shù)】
[0002] 拉格朗日流體模擬在計算機動畫領域一直是個熱門的研究議題,其基于粒子的流 體表示天然地支持模擬一些微小尺度的流體現(xiàn)象,同時無條件地保證質(zhì)量守恒。光滑粒 子動力學SPH(SmoothedParticleHydrodynamics)方法是一種典型的拉格朗日方法,由 Lucy、Monaghan&Gingold等人于1977年提出用來解決天體物理學中的行星運動問題,后來 被引入到計算流體力學領域。在模擬流體時它是將連續(xù)的流體用相互作用的質(zhì)點組描述, 各個質(zhì)點上承載各種物理量,包括質(zhì)量、速度、密度等,通過求解質(zhì)點組的動力學偏微分方 程組和跟蹤每個質(zhì)點的運動,求得整個系統(tǒng)的力學行為。SPH方法使用核函數(shù)對密度、壓力、 粘力項進行離散化,得到Navier-Stokes方程組的離散化計算形式,從而在每步迭代過程 近似解出各個物理量,模擬流體運動。
[0003] 關于SPH方法模擬流固耦合現(xiàn)象屬于流固兩相交界處邊界處理的范疇,由于SPH 方法的粒子屬性導致其在處理多相流問題時需要花費的計算代價很大,目前不存在一個統(tǒng) 一的模型和方法能完美的解決固液耦合問題,幾種具有代表性的方法如下:
[0004]I)Muller等人于2004年提出的基于Lennard-Jones勢能的固液交互模型,其為流 體粒子和固體粒子間施加一個距離相關的力,該方法在宏觀上可以近似模擬,但在微觀尺 度上不滿足流體運動的物理規(guī)律,而且計算所需的時間步長較大。
[0005] 2)SeungtaikOh等人于2009年提出的基于沖量邊界力(IBF)方法,其為固液交互 所施加的邊界力的計算基于粒子間碰撞過程中產(chǎn)生的沖量大小和方向,該方法需要計算虛 擬的沖量邊界力。
[0006] 3)Becker等人于2009年引入directforce來為邊界力建模,該方法采用預測校 正模式對與邊界碰撞后粒子的位置和速度進行校正,達到?jīng)]有穿透現(xiàn)象的發(fā)生并模擬了多 種邊界條件,該方法對于流固雙向耦合計算的復雜高,每個迭代中需要兩次周圍鄰居粒子 查詢。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明的目的是提供一種三維流固單向耦合的實現(xiàn)方法及系統(tǒng),增強了邊界處理 時的穩(wěn)定性,成功模擬出壓力、粘力和阻止穿透效果的同時大大減小了計算的復雜度,并且 有效模擬出表面張力的宏觀效果,而且并不會出現(xiàn)直接模擬聚合力情況下的網(wǎng)狀失真現(xiàn) 象。
[0008] 本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的:
[0009] -種三維流固單向耦合的實現(xiàn)方法,該方法包括:
[0010] 將固體邊界的三角形網(wǎng)格離散成粒子,并進行邊界粒子均勻化采樣;
[0011] 計算該固體中流體粒子的狀態(tài),包括:流體與固體邊界處流體粒子的密度、流體粒 子的壓力及粘力,以及流體粒子表面張力;
[0012] 并利用一數(shù)值積分模式對流體粒子的速度和位置信息進行更新;
[0013] 當所述流體粒子穿透所述固體邊界時,對所述流體粒子的速度和位置進行校正, 從而實現(xiàn)三維流固單向I禹合。
[0014] 進一步的,所述將固體邊界的三角形網(wǎng)格離散成粒子,并進行邊界粒子均勻化采 樣包括:
[0015] 讀取固體模型的三角形網(wǎng)格,并建立固體模型的周圍符號距離場,具體的:將固體 模型中每個三角形網(wǎng)格建立一個包圍盒,并為每個包圍盒以統(tǒng)一的方式劃分網(wǎng)格;計算每 個網(wǎng)格點到固體模型的符號距離,符號距離場以一個哈希表來存儲,形成一個存在于固體 模型周圍的窄帶寬的符號距離場;
[0016] 抽取符號距離場的等值面,并在等值面的每個三角形網(wǎng)格上初始化邊界粒子,每 個三角形網(wǎng)格上布置gA/Jir2個粒子;其中,g表示控制粒子密度的參數(shù),A表示每個三角形 網(wǎng)格的面積,r表示粒子的半徑;
[0017] 根據(jù)粒子的分布來決定每個粒子在固體表面法向和切向^的速度;其中,
【權(quán)利要求】
1. 一種三維流固單向耦合的實現(xiàn)方法,其特征在于,該方法包括: 將固體邊界的三角形網(wǎng)格離散成粒子,并進行邊界粒子均勻化采樣; 計算該固體中流體粒子的狀態(tài),包括:流體與固體邊界處流體粒子的密度、流體粒子的 壓力及粘力,以及流體粒子表面張力; 并利用一數(shù)值積分模式對流體粒子的速度和位置信息進行更新; 當所述流體粒子穿透所述固體邊界時,對所述流體粒子的速度和位置進行校正,從而 實現(xiàn)三維流固單向耦合。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將固體邊界的三角形網(wǎng)格離散成粒 子,并進行邊界粒子均勻化采樣包括: 讀取固體模型的三角形網(wǎng)格,并建立固體模型的周圍符號距離場,具體的:將固體模型 中每個三角形網(wǎng)格建立一個包圍盒,并為每個包圍盒以統(tǒng)一的方式劃分網(wǎng)格;計算每個網(wǎng) 格點到固體模型的符號距離,符號距離場以一個哈希表來存儲,形成一個存在于固體模型 周圍的窄帶寬的符號距離場; 抽取符號距離場的等值面,并在等值面的每個三角形網(wǎng)格上初始化邊界粒子,每個三 角形網(wǎng)格上布置gA/πr2個粒子;其中,g表示控制粒子密度的參數(shù),A表示每個三角形網(wǎng)格 的面積,r表示粒子的半徑; 根據(jù)粒子的分布來決定每個粒子在固體表面法向f和切向^的速度;其中, ..t1ζ___γ-J 巧=-0(1)及,巧=ΣΛ謂創(chuàng)|1 -確;X表示粒子的位置,0(;π和及分別表示 位置X處的符號距離和法向,Q表示一個類高斯核函數(shù),S是整個粒子集合,Π是粒子X周 圍第1粒子的位置;通過所述固體表面法向保證了粒子只能在邊界表面移動,通過所述 切向€保證了粒子由密集向稀疏的區(qū)域移動; 對粒子的速度進行積分來更新粒子位置; 通過給整體粒子集合S的總位移設置一個粒子數(shù)量相關的閾值,來判斷是否收斂;當 總位移低于閾值時,表明此時迭代過程已經(jīng)趨于穩(wěn)定,均勻化的粒子采樣已經(jīng)形成。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,計算該固體中流體粒子狀態(tài)的公式包括: 流體與固體邊界處流體粒子的密度的計算公式為: Pi= XjmjWij+X^bi(P0) ffik; ψμ(ρ〇) =P0Vbi ; 其中,Pi表示流體與固體邊界處流體粒子i的密度;IIij表示流體粒子i周圍第j個流 體粒子的質(zhì)量,Wij是一個支持域有限的核函數(shù),PC1表示流體的靜止密度,Vbi表示固體邊界 粒子bi的體積,k表示固體粒子bi周圍的固體粒子; 流體粒子的壓力及粘力的計算公式為:
其中,表示固體邊界粒子bi對流體粒子i所施加的壓力,Iiii表示流體粒子i的質(zhì) 量,Pi表示流體粒子i的壓強,Pi表示流體粒子i的密度,▽Wibi表示核函數(shù)Wibi的梯度向 量函數(shù)表示固體邊界粒子bi對流體粒子i的粘力,μ表示流體的粘度系數(shù),Vfi表 示流體粒子i的速度,▽ 2Wibi表示核函數(shù)Wibi的拉普拉斯Laplacian函數(shù); 流體粒子表面張力的計算公式為: Fi^jcur = -ymifci-rij); 其中,Y表示控制力大小的參數(shù),IHi表示流體粒子i的質(zhì)量,Iii和rij分別表示流體粒 子i與流體粒子j的法向。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當所述流體粒子穿透所述固體邊界 時,對所述流體粒子的速度和位置進行校正包括: 對固體邊界區(qū)域進行標記,當流體粒子進入標記過的區(qū)域時判斷流體粒子位置處的符 號距離從而得到流體粒子是否穿透邊界; 若穿透,則按照下述公式分別對粒子的速度和位置進行校正: Vi = Vi-(1+Cr) (Vi · n)n; Xi = Xi+(1+Dr) I s |n; 其中,Vi表示流體粒子i的速度,(^表示控制動量損失的參數(shù),值介于O?1之間;Xi 表示流體粒子i的位置,W表示調(diào)節(jié)回彈距離的一個隨機數(shù),s表示Xi處的符號距離,η表 示邊界的法向。
5. -種三維流固單向耦合的實現(xiàn)系統(tǒng),其特征在于,該系統(tǒng)包括: 固體邊界粒子采樣模塊,用于將固體邊界的三角形網(wǎng)格離散成粒子,并進行邊界粒子 均勻化采樣; 流體粒子狀態(tài)計算模塊,用于計算該固體中流體粒子的狀態(tài),包括:流體與固體邊界處 流體粒子的密度、流體粒子的壓力及粘力,以及流體粒子表面張力; 流體粒子信息更新模塊,用于并利用一數(shù)值積分模式對流體粒子的速度和位置信息進 行更新; 穿透粒子的速度和位置校正模塊,用于當所述流體粒子穿透所述固體邊界時,對所述 流體粒子的速度和位置進行校正,從而實現(xiàn)三維流固單向耦合。
6. 根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述固體邊界粒子采樣模塊包括: 符號距離場建立模塊,用于讀取固體模型的三角形網(wǎng)格,并建立固體模型的周圍符號 距離場,具體的:將固體模型中每個三角形網(wǎng)格建立一個包圍盒,并為每個包圍盒以統(tǒng)一的 方式劃分網(wǎng)格;計算每個網(wǎng)格點到固體模型的符號距離,符號距離場以一個哈希表來存儲, 形成一個存在于固體模型周圍的窄帶寬的符號距離場; 邊界粒子初始化模塊,用于抽取符號距離場的等值面,并在等值面的每個三角形網(wǎng)格 上初始化邊界粒子,每個三角形網(wǎng)格上布置gA/πr2個粒子;其中,g表示控制粒子密度的 參數(shù),A表示每個三角形網(wǎng)格的面積,r表示粒子的半徑; 法向與切向速度決定模塊,用于根據(jù)粒子的分布來決定每個粒子在固體表面法向f ................t. X-XI 和切向f的速度;其中,|Γ= _0認_K=Σ.mS..p0(||l-詞)IJ-圳I;X表示粒子的位 置,0(Z)和#分別表示位置X處的符號距離和法向,Q表示一個類高斯核函數(shù),S是整個粒 子集合,Π是粒子X周圍第1粒子的位置;通過所述固體表面法向f保證了粒子只能在邊 界表面移動,通過所述切向保證了粒子由密集向稀疏的區(qū)域移動; 位置更新模塊,用于對粒子的速度進行積分來更新粒子位置; 均勻化采樣模塊,用于通過給整體粒子集合S的總位移設置一個粒子數(shù)量相關的閾 值,來判斷是否收斂;當總位移低于閾值時,表明此時迭代過程已經(jīng)趨于穩(wěn)定,均勻化的粒 子采樣已經(jīng)形成。
7. 根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述流體粒子狀態(tài)計算模塊包括: 密度計算模塊,流體與固體邊界處流體粒子的密度的計算公式為: Pi= XjmjWij+X^bi(P0) ffik; ψμ(ρ〇) =P0Vbi ; 其中,Pi表示流體與固體邊界處流體粒子i的密度;IIij表示流體粒子i周圍第j個粒 子的質(zhì)量,Wij是一個支持域有限的核函數(shù),PC1表示流體的靜止密度,Vbi表示固體邊界粒子 bi的體積,k表示固體粒子bi周圍的固體粒子; 壓力及粘力計算模塊,流體粒子的壓力及粘力的計算公式為:
其中,fIw表示固體邊界粒子bi對流體粒子i所施加的壓力,IIii表示流體粒子i的質(zhì) 量,Pi表示流體粒子i的壓強,Pi表示流體粒子i的密度,▽Wibi表示核函數(shù)Wibi的梯度向 量函數(shù);表示固體邊界粒子bi對流體粒子i的粘力,μ表示流體的粘度系數(shù),Vfi表 示流體粒子i的速度,▽ 2Wibi表示核函數(shù)Wibi的拉普拉斯Laplacian函數(shù); 表面張力計算模塊,流體粒子表面張力的計算公式為: Fi^jcur = -ymifci-rij); 其中,Y表示控制力大小的參數(shù),IHi表示流體粒子i的質(zhì)量,Iii和rij分別表示流體粒 子i與流體粒子j的法向。
8. 根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述穿透粒子的速度和位置校正模塊包 括: 穿透判斷模塊,用于對固體邊界區(qū)域進行標記,當流體粒子進入標記過的區(qū)域時判斷 流體粒子位置處的符號距離從而得到流體粒子是否穿透邊界; 校正模塊,用于穿透時,則按照下述公式分別對粒子的速度和位置進行校正: Vi = Vi-(1+Cr) (Vi · n)n ; Xi = Xi+(1+Dr) I s |n; 其中,Vi表示流體粒子i的速度,(^表示控制動量損失的參數(shù),值介于O?I之間;Xi 表示流體粒子i的位置,W表示調(diào)節(jié)回彈距離的一個隨機數(shù),s表示Xi處的符號距離,η表 示邊界的法向。
【文檔編號】G06T13/20GK104318598SQ201410553159
【公開日】2015年1月28日 申請日期:2014年10月17日 優(yōu)先權(quán)日:2014年10月17日
【發(fā)明者】董蘭芳, 章恒 申請人:中國科學技術(shù)大學