這樣的話總算是把基本的LBM寫對了,哦,上面還提到了湍流模型,LBM本身求解湍流比較困難,主要是速度大了很不穩定,因此應用一個湍流模型可以提高系統的穩定性,這裡我是一點都沒搞懂,好在我找到了湍流模型的原始碼,寫到LBM裡了,來看下效果:網格
01 數學模型的誤差除了暴力求解N-S方程的DNS(直接數值模擬)方法之外,一切粗粒化的數學模型(RANS,LES等)天生會帶來額外的誤差
格子玻爾茲曼方程格子玻爾茲曼方法 Lattice Boltzmann Method (LBM),以玻爾茲曼方程為理論基礎,透過粒子的碰撞collision和遷移streaming,描述粒子的演化規律,以速度分佈函式為基本變數:速度分佈函式是
眾望所歸的正交網格:大家應該還記得,我們在前面的文章中說過,LBM是玻爾茲曼方程在空間中的離散格式,因為實際粒子的運動方向有無數個,我們只有將速度方向離散為有限的個數才能進行數值計算
對於小於網格尺度的Cascade,VLES並不是拋棄,而是自動截斷為兩類:一類是顯性的“迷你渦”,耗散作用不強,處理方式為使用直接計算得到的大渦繼續Cascade
如上圖所示,LBM的實施流程為:首先對全部格子的流場進行初始化,然後施加粒子的輸運和邊界條件算出中間過程的分佈函式f*,而後求出密度和宏觀速度,再計算此狀態下的平衡態函式,最後施加粒子的碰撞,得出更新的速度分佈函式f,此後就是迴圈迭代,直至