
發布
注冊
/
登錄離散項的案例
FLUENT多相流案例之七:基于DPM離散項模型的管道磨蝕仿真 ¥9
壁面的法向和切向反射系數是質點碰撞角的多項式函數,磨蝕模型定義了沖擊角函數來表示管道壁面的韌性沖蝕(即以較淺角度沖擊管壁的顆粒比以較高角度沖擊管壁的顆粒造成的侵蝕率更高)。參考沙子的參數,定義直徑函數為1.8e?9,速度指數函數為2.6。
磨蝕仿真計算結果
收費文件列表
壓氣機動葉流場仿真分析
在基本設置中,流體性質選擇“湍流”,湍流模型為SST,介質屬性設置為理想氣體,粘性模型為Sutherland模型
在求解控制中,對流離散項為REO格式,熵修正系數為0.2;線性方程組求解最大迭代次數設置為50次 ;CFL縮減因子設置為4
設置分析類型,迭代次數2000次 ? 勾選“自適應CFL”,設置 CFL初始值為5、衰減因子1.5、增長因子0.5、最小值5、最大值10
設置入口邊界:
右鍵單擊"邊界條件>入口>亞音速入口” ,選擇節點組件“inlet”,“入口設定類型”選擇“熱力學量”,輸入總溫318K、總壓101325Pa、流動方向為+Y
設置出口邊界
選擇節點組件“outlet”,輸入“靜壓”101325Pa
選擇節點組件“hub、 “shround”與“wall_yepian”,設置“恒定熱流” 為0,即絕熱壁面
定義交界面
在彈出窗口中選中組件“peri_1”和“peri_2”,單擊“確定”
設置周期邊界條件,選擇網格交界面。
設置初始條件,初始化方式選擇“熱力學量”,來流參數下拉框選擇“溫度”,輸入初始溫度為318K、壓力值為101325Pa、馬赫數為0.137、攻角0、側滑角90°
求解器設定及求解計算,設置求解器路徑,選擇進程數,開始計算。
查看葉片壓力云圖
壓力面
吸力面
速度矢量圖
文章來源:英特仿真INTESIM
展開 Simdroid 流體分析
物理模型和物理屬性
? 二維平面、二維軸對稱、三維流動分析
? 穩態、瞬態分析
? 無粘流、層流、湍流
主要的湍流模型包含 模型、 模型以及多種低雷諾數湍流模型
? 軟件還內置了多種近壁面流動的處理方法
? 不可壓流和可壓縮流計算
? 傳熱計算
包括:強制/自然對流、共軛換熱、輻射傳熱
? 多組分混合
? 單/多相流、基于拉格朗日方法的離散相模型
? 多相流功能具備VOF、歐拉-歐拉與歐拉-拉格朗日模型
? 多重坐標系MRF計算,模擬旋轉流場
? 周期區域
? 流體/固體共軛傳熱
數值算法
? 求解器:基于壓力的求解器(分離式、耦合式)和基于密度的求解器(隱式算法、顯式算法)
? 對流項離散格式:一階/二階迎風格式、線性、加限制器的線性重構、LUST、三次多項式重構、Van leer、MUSCL、QUICK
? 梯度項離散格式:高斯、LeastSquares、Fourth
? 時間項離散格式:穩態、歐拉、半隱半顯、二階向后差分、局部歐拉
? 串行、并行計算
邊界條件
邊界條件預先設有較為通用的邊界類型,包括壓力入口、速度入口、質量流量入口、壓力出口、出口邊界、自由流。
展開 Altair Simdroid 流體分析模塊介紹
物理模型和物理屬性
? 二維平面、二維軸對稱、三維流動分析
? 穩態、瞬態分析
? 無粘流、層流、湍流
主要的湍流模型包含 模型、 模型以及多種低雷諾數湍流模型
? Simdroid軟件還內置了多種近壁面流動的處理方法
? 不可壓流和可壓縮流計算
? 傳熱計算
包括:強制/自然對流、共軛換熱、輻射傳熱
? 多組分混合
? 單/多相流、基于拉格朗日方法的離散相模型
? 多相流功能具備VOF、歐拉-歐拉與歐拉-拉格朗日模型
? 多重坐標系MRF計算,模擬旋轉流場
? 周期區域
? 流體/固體共軛傳熱
數值算法
? 求解器:基于壓力的求解器(分離式、耦合式)和基于密度的求解器(隱式算法、顯式算法)
? 對流項離散格式:一階/二階迎風格式、線性、加限制器的線性重構、LUST、三次多項式重構、Van leer、MUSCL、QUICK
? 梯度項離散格式:高斯、LeastSquares、Fourth
? 時間項離散格式:穩態、歐拉、半隱半顯、二階向后差分、局部歐拉
? 串行、并行計算
邊界條件
邊界條件預先設有較為通用的邊界類型,包括壓力入口、速度入口、質量流量入口、壓力出口、出口邊界、自由流。
展開 
CFD應用:低亞音速飛機起落架流場計算
3.1離散方法fvSchemes設置
ddtSchemes //時間離散格式,該項目為穩態求解,瞬態可采用歐拉離散Euler
{default steadyState;}
gradSchemes //梯度離散,采用高斯方法,線性插值,為二階離散
{default Gauss linear; grad(U) cellLimited Gauss linear 1;}
divSchemes//散度離散,對流項采用高斯方法,線性迎風插值,為二階離散
{ default Gauss linear; div(phi,U)Gauss linearUpwind grad(U); div(phi,K) Gauss linearUpwind grad(U); div(phi,e)Gauss linearUpwind grad(U); div(phi,h) Gauss linearUpwind grad(U); div(phi,omega)Gauss linearUpwind grad(U); div(phi,Ekp) Gauss linearUpwind grad(U);div((nuEff*dev2(T(grad(U))))) Gauss linear;}
laplacianSchemes //拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正
{defaultGauss linear corrected;}
interpolationSchemes //插值格式,默認線性插值
{defaultlinear;}
snGradSchemes //梯度法向分量,默認帶有非正交修正
{defaultcorrected;}
fluxRequired //是否計算流率,壓力需計算,利用壓力流率修正速度
{default no; p ;}
wallDist
展開 案例解析|泄洪道挑流消能CFD模擬
離散方法fvSchemes設置
ddtSchemes //時間離散格式,該項目瞬態計算采用歐拉離散Euler
{default Euler;}
gradSchemes//梯度離散,采用高斯方法,線性插值,為二階離散
{default Gauss linear;}
divSchemes//散度離散,對流項采用高斯方法,線性插值,為二階離散,k、epsilon采用高斯迎風格式,為一階離散
{default Gauss linear;div(rhoPhi,U) Gauss linearUpwind grad(U);div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss linear; div(phi,k) Gauss upwind; div(phi,epsilon) Gauss upwind; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;}
laplacianSchemes//拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正
{default Gauss linear corrected;}
interpolationSchemes//插值格式,默認線性插值
{default linear;}
snGradSchemes//梯度法向分量,默認帶有非正交修正
{default corrected;}
方程求解方法fvSolution設置
solvers
{"alpha.water.*"
{nAlphaCorr 2;
nAlphaSubCycles 1;
cAlpha 1;
MULESCorr no;
nLimiterIter 5;
solver smoothSolver;
smoother symGaussSeidel
展開 低亞音速飛機起落架流場計算(OpenFoam)
3.1離散方法fvSchemes設置
ddtSchemes //時間離散格式,該項目為穩態求解,瞬態可采用歐拉離散Euler
{default steadyState;}
gradSchemes //梯度離散,采用高斯方法,線性插值,為二階離散
{default Gauss linear; grad(U) cellLimited Gauss linear 1;}
divSchemes//散度離散,對流項采用高斯方法,線性迎風插值,為二階離散
{ default Gauss linear; div(phi,U)Gauss linearUpwind grad(U); div(phi,K) Gauss linearUpwind grad(U); div(phi,e)Gauss linearUpwind grad(U); div(phi,h) Gauss linearUpwind grad(U); div(phi,omega)Gauss linearUpwind grad(U); div(phi,Ekp) Gauss linearUpwind grad(U);div((nuEff*dev2(T(grad(U))))) Gauss linear;}
laplacianSchemes //拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正
{defaultGauss linear corrected;}
interpolationSchemes //插值格式,默認線性插值
{defaultlinear;}
snGradSchemes //梯度法向分量,默認帶有非正交修正
{defaultcorrected;}
fluxRequired //是否計算流率,壓力需計算,利用壓力流率修正速度
{default no; p ;}
展開 溢洪道挑流CFD模擬
5.1 離散方法fvSchemes設置
離散方法fvSchemes設置
ddtSchemes //(時間離散格式,該項目瞬態計算采用歐拉離散Euler)
{
default Euler;
}
gradSchemes//(梯度離散,采用高斯方法,線性插值,為二階離散)
{
default Gauss linear;
}
divSchemes//(散度離散,對流項采用高斯方法,線性插值,為二階離散,k、epsilon采用高斯迎風格式,為一階離散)
{
default Gauss linear;
div(rhoPhi,U) Gauss linearUpwind grad(U);
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss linear;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes//(拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正)
{
default Gauss linear corrected;
}
interpolationSchemes//(插值格式,默認線性插值)
{
default linear;
}
snGradSchemes//(梯度法向分量,默認帶有非正交修正)
{
default corrected;
}
展開 溢洪道挑流CFD模擬
5.1 離散方法fvSchemes設置
離散方法fvSchemes設置
ddtSchemes //(時間離散格式,該項目瞬態計算采用歐拉離散Euler)
{
default Euler;
}
gradSchemes//(梯度離散,采用高斯方法,線性插值,為二階離散)
{
default Gauss linear;
}
divSchemes//(散度離散,對流項采用高斯方法,線性插值,為二階離散,k、epsilon采用高斯迎風格式,為一階離散)
{
default Gauss linear;
div(rhoPhi,U) Gauss linearUpwind grad(U);
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss linear;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes//(拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正)
{
default Gauss linear corrected;
}
interpolationSchemes//(插值格式,默認線性插值)
{
default linear;
}
snGradSchemes//(梯度法向分量,默認帶有非正交修正)
{
default corrected;
}
5.2
展開 OpenFoam離心泵數值仿真與Flunt、StarCCM計算結果對比
圖一:離心泵幾何形狀
圖二:pump網格(a)
圖三:pump網格(b)
二:物理參數
三:邊界條件
四:各軟件求解器參數設
Starccm求解器參數設置:湍流模型采用SST(Menter)K-Omega,湍流對流項選用二階;分離流對流項為二階,壁面函數選用全y+壁面處理;梯度插值格式為混合高斯-LSQ,精度為二階;求解流場數值方法為simple分離流算法,迭代3000步。
Fluent求解器參數設置:湍流模型采用SST K-Omega,壓力插值選用PRESTO!,動量離散格式選用二階迎風,湍流對流項離散選用二階迎風,梯度插值格式為Least Squares Cell Based,解流場數值方法為Coupled耦合算法,庫朗數為5,迭代3000步。
OpenFoam求解器參數設置:湍流模型采用SST K-Omega,動量離散格式為一階迎風格式,湍流對流項離散格式為一階迎風格式,梯度離散格式為Gauss linear二階高斯積分格式,求解流場數值方法為simple分離流算法,迭代3000步。
展開 溢洪道挑流消能CFD模擬
表4物性參數
介質
運動粘度(m2/s)
密度(kg/m3)
水
1e-6
1000
空氣
1.5e-5
1
openfoam求解器設置
本項目為求解泄洪道兩相流流場,湍流模型選用kEpsilon,需分別設置對應fvSchemes離散方法,fvSolution方程求解方法, setFieldsDict初始場液相體積分數及求解控制參數。
離散方法fvSchemes設置
ddtSchemes //時間離散格式,該項目瞬態計算采用歐拉離散Euler{default Euler;}
gradSchemes//梯度離散,采用高斯方法,線性插值,為二階離散{default Gauss linear;}
divSchemes//散度離散,對流項采用高斯方法,線性插值,為二階離散,k、epsilon采用高斯迎風格式,為一階離散。
{default Gauss linear;div(rhoPhi,U) Gauss linearUpwind grad(U);div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss linear; div(phi,k) Gauss upwind; div(phi,epsilon) Gauss upwind; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;}
laplacianSchemes//拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正。
展開 
案例解析|基于自適應網格的圓柱繞流分析
邊界條件參數
openfoam求解器設置
本項目為求解圓柱繞流,雷諾數小于300,湍流模型選用層流laminar,需分別設置對應fvSchemes離散方法,fvSolution方程求解方法, dynamicMeshDict自適應網格配置參數及求解控制參數。
離散方法fvSchemes設置
ddtSchemes //時間離散格式,該項目瞬態計算采用歐拉離散Euler{default Euler;}gradSchemes//梯度離散,采用高斯方法,線性插值,為二階離散{default Gauss linear;}divSchemes//散度離散,對流項采用高斯方法,線性插值,為二階離散。
展開 開源 CFD 在熱管理領域的應用與實踐
對動量方程時均化后,需要采用湍流 模型對方程進行封閉,iconCFD 軟件中提供了多種基于渦粘假設的湍流模型,本文中采用 K-epsilon Realizable 湍流模型,對流項的離散采用二階迎風格式,擴散項的離散采用二階中心差分格式。在本此計 算中,散熱器芯體采用多孔介質模型來模擬氣流在其厚度方向上的壓力降。
3 結果分析
3.1 部分流場仿真結果
以下展示部分截面上的速度、壓力和壓力系數的分布云圖。高速工況下,風扇后方有較大的流速,少 部分風量繞過換熱器周圍流向后艙,發動機后方的發熱部件周圍有一定的流動速度分布。流場結果與之前 商業軟件仿真結果一致。后處理工具為 Ensight。
3.2 對比風量分析結果
對比 iconCFD 與現有商業軟件計算結果,換熱器模塊的風量統計見表格和直方圖。
4 結論
iconCFD 軟件的計算結果與實驗數據對比,能達到預期要求。與商業軟件對比,結果也非常吻合。使 用開源軟件進行數值仿真,并與實驗測試相結合,可以大幅縮短研發周期,降低研發成本。
iconCFD 有配套的網格前處理工具,但為了對比計算結果,本次計算我們采用相同的第三方軟件處理 的表面網格。iconCFD 開發了專門的面向汽車行業的前處理界面,模型設定過程流程化,簡單易用。在保 證仿真精度一致的前提下,開源軟件軟件本身是免費的,也沒有 license 數量的限制,只要硬件支持,不限 制并行核數,可以同時提交多算例大規模模型的并行計算。這充分體現出了開源軟件的優勢,可以更高效 得完成仿真計算。
本文來自:汽車CFD技術應用之家
展開 有限體積方法處理非結構網格-方法框架
同時,我們也可以看到很多的商業軟件,比如Fluent很容易可以將一個和真實場景的幾何離散成網格然后求解,結果還可以花花綠綠的展示出來,看起來就非常高端。
這期文章主要講講如何采用有限體積方法計算非結構網格上的偏微分方程,與其他文章不同的是這里網格和方程是獨立開的,而且處理3維的方程,代碼主要基于python的numpy。
要說3維和一維的方法差距確實有,而且很大,而且要說清楚非常難,這里先從簡答的說起。簡單就從數學物理方程講吧,大多數方程可以寫成如下的形式。
鑒于每一項都有不同的數值特性,將這四項進行離散,每一項都可以得到如下的離散格式,離散過程采用的就是有限體積法,這里先不去講。
有了上面的公式之后是不是就可以給出迭代更新的公式了呢,只需要在全部計算域上對每個網格計算一下這個值,然后重復個幾十或者一百步就可以得到穩定的值,這個過程就叫收斂。
但是,一般來說為了使得迭代過程更加平滑,不會因為更新產生過大的動蕩我們一般把上一步的值和更新的值做一個權重來更新網格的值,比如這里都是0.5,當然你也可以選擇0到1之間的其他值,并不影響,只要給出兩者之間的權重就可以了,如果后面部分權重太小的話迭代步數會需要很多,可能不劃算。
知道了怎么去更新之后,就來說說具體的計算過程。
公式2中C表示網格的中心,可以發現我們這里把各項都分解成為了三個部分,其中第一部分只需要用到當前網格中心的值,第二部分需要用到各個面上的值,第三部分需要用到梯度,這些東西就構成了一個網格體中的代數方程了,那么他們的系數怎么回去呢,這就需要結合具體是哪一項來進行解決了。
鑒于完整處理這四項工作量較大,我們以擴散項為例,因為這一項容易理解,要處理的也比較少。
展開 圓柱形水箱晃動CFD模擬
5.1 離散方法fvShemes設置
ddtSchemes //時間離散格式,該項目瞬態計算采用歐拉離散Euler
{
default Euler;
}
gradSchemes//梯度離散,采用高斯方法,線性插值,為二階離散
{
default Gauss linear;
}
divSchemess//散度離散
{
default Gauss linear;
div(rhoPhi,U) Gauss linearUpwind grad(U);
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss linear;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes//拉普拉斯項離散,擴散項及壓力方程離散均采用高斯理論線性插值,并帶有正交修正
{
default Gauss linear corrected;
}
interpolationSchemes//插值格式,默認線性插值
{
default linear;
}
snGradSchemes//梯度法向分量,默認帶有非正交修正
{
default corrected;
}
5.2 方程求解方法fvSolotion設置
solvers {
UFinal {
relTol 0.0;
preconditioner DILU;
tolerance 1e-05;
solver PBiCG;
展開