天天看點

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

5月21日剛剛回家,明天爺爺生日,在此祝他福如東海!

今天按計劃完成空腔流教程的最後一項——高雷諾數。在此之前,我所做的都隻是低雷諾數下的層流。但在現實中,理想的層流是不存在的,更多的是湍流。這塊硬骨頭,最是難啃。話不多說,我按着userguide做一遍。

這一篇的關鍵詞:pisoFoam,RAS,k − ε 模型。

首先将教程裡面的案例複制到run目錄内:

run
cp -r $FOAM_TUTORIALS/incompressible/pisoFoam/ras/cavity cavityRAS
cd cavityRAS
           

先用blockMesh生成網格。在這裡,mesh grading 不是必要的,因為我們用的是k − ε 模型。

paraFoam看一看,就是很普通的網格。

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

看一看,是很普通的網格。

打開0/nut檔案:

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

注意邊界的type“nutkWallFunction”,還有其他的keyword,這些都要通過深入地研究源代碼才能,并且有相關的理論基礎才能很好地了解。這些會在日後慢慢寫,慢慢學,我還有很長的路要走。

在constant/turbulenceProperties的檔案裡:

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

simulationType有三個選項可選:lamilar,RAS和LES。在RAS的子程式裡,預設是選擇k − ε 模型,即kEpsilon;

輸入pisoFoam,運作計算:

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

花了半分鐘左右,最後用cat log檢視:

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

停在了10秒,即我們設定的endtime,收斂成功,看到end字樣。

最後看看結果:

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

速度場

openFoam4.0 學習記錄(七):Tutorials之Lid-driven Cavity Flow (後續3-高雷諾數RAS計算)

壓力場

可以看出,高雷諾數下的結果跟低雷諾數有很大的不同。

小結:

我想通過看源代碼來了解程式,但是一方面c++代碼基礎差,另一方面流體的知識也差,今後會兩手抓,通過對icoFoam等代碼的學習,體會CFD的美麗。

繼續閱讀