
發(fā)布
注冊
/
登錄DEFINE_CG_MOTION的案例
Fluent 重疊網(wǎng)格+UDF NACA0012翼型擺動氣動仿真(一)
本案例選擇DEFINE_CG_MOTION進行定義,vel[1]代表y軸方向,omega[2]代表z軸旋轉(zhuǎn)方向,本案例設(shè)計naca0012翼型上下擺動72°,上下移動0.2m,相關(guān)的UDF代碼如下:
#include "udf.h"#include "mem.h"#include "dynamesh_tools.h"DEFINE_CG_MOTION(naca, dt, vel, omega, time, dtime){ NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[1] = 0.2*cos(2*3.14*time); omega[2]=1.256*cos(2*3.14*time); }
2 workbench 設(shè)置
本案例需要設(shè)置如下三個模塊的計算,其中包括背景網(wǎng)格區(qū)域、前景網(wǎng)格區(qū)域與fluent計算三個部分,具體設(shè)置如下圖:
3 SCDM 設(shè)置
3.1 導入幾何
整體幾何結(jié)構(gòu)如下圖:此邊界參考相關(guān)文獻,來流入口與上下邊界距離翼型10C,出口邊界距離翼型20C。
3.2 網(wǎng)格設(shè)置
采用SCDM進行網(wǎng)格劃分,背景區(qū)域劃分為四邊形網(wǎng)格導出。前景網(wǎng)格劃分為三角形網(wǎng)格導出,并劃分相對應(yīng)的邊界層網(wǎng)格。
背景網(wǎng)格如下圖所示:
前景網(wǎng)格如下圖所示:
4 FLUENT 設(shè)置
4.1 General設(shè)置與網(wǎng)格導入
首先導入背景網(wǎng)格,其次通過下圖所示的方法將前景導入。
由于本文涉及到NACA0012翼型運動,因此需要探討瞬態(tài)計算結(jié)果,此處的設(shè)置比較簡單,勾選為瞬態(tài)計算。
展開 Fluent實用案例 | 重疊網(wǎng)格UDF撲翼機氣動仿真
本案例選擇DEFINE_CG_MOTION進行定義,omega[0]代表z軸旋轉(zhuǎn)方向,本案例設(shè)計翼型上下擺動18°,相關(guān)的UDF代碼如下:
C
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION(pyj, dt, vel, omega, time, dtime)
{
NV_S(vel, =, 0.0);
NV_S(omega, =, 0.0);
omega[0]=0.314*cos(2*3.14*time);
}
2 workbench 設(shè)置
本案例需要設(shè)置如下三個模塊的計算,其中包括背景網(wǎng)格區(qū)域、前景網(wǎng)格區(qū)域與fluent計算三個部分,具體設(shè)置如下圖 :
3 SCDM 設(shè)置
3.1 導入幾何
整體幾何結(jié)構(gòu)如下圖:撲翼機翼型采用NACA0012,具體的幾何結(jié)構(gòu)如下圖,x軸正向為壓力出口,負軸位速度入口,撲翼機表面為壁面,其余面位對稱面。重疊網(wǎng)格區(qū)域為內(nèi)部圓柱區(qū)域。
撲翼機運動翼型命名為naca,靜止區(qū)域命名為bird。
4 Fluent Meshing 設(shè)置
4.1 網(wǎng)格設(shè)置
采用 SCDM 進行網(wǎng)格劃分,背景網(wǎng)格與前景網(wǎng)格皆采用六面體網(wǎng)格劃分,并劃分相對應(yīng)的邊界層網(wǎng)格。背景網(wǎng)格如下圖所示:
前景網(wǎng)格如下圖所示:
5 FLUENT 設(shè)置
5.1 General設(shè)置與網(wǎng)格導入
首先導入背景網(wǎng)格,其次通過下圖所示的方法將前景導入。
由于本文涉及到NACA0012翼型運動,因此需要探討瞬態(tài)計算結(jié)果,此處的設(shè)置比較簡單,勾選為瞬態(tài)計算。
展開 Fluent 動網(wǎng)格+UDF 高速列車橫風影響下動態(tài)氣動仿真(一)
僅在一個方向上運動,因此選擇DEFINE_CG_MOTION進行定義,vel[0]代表x軸方向,相關(guān)的UDF代碼如下:
#include"udf.h"#include "dynamesh_tools.h"DEFINE_CG_MOTION(piston, dt, vel, omega, time, dtime){ NV_S (vel, =, 0.0); NV_S (omega, =, 0.0); vel[0]=83; }
2 workbench 設(shè)置
本案例需要設(shè)置如下三個模塊的計算,其中包括動網(wǎng)格區(qū)域網(wǎng)格劃分、外域網(wǎng)格劃分與fluent計算三個部分,具體設(shè)置如下圖:
3 SCDM 設(shè)置
3.1 導入幾何
整體幾何結(jié)構(gòu)如下圖:此邊界參考相關(guān)文獻,部分文獻左邊界為壓力入口。
局部細節(jié)圖如下,中間的長方體為動網(wǎng)格運動區(qū)域。
4 Fluent meshing 設(shè)置
采用Fluent meshing進行網(wǎng)格劃分,運動區(qū)域劃分為四面體網(wǎng)格導出為 FFF 1.1.msh,詳細的劃分方式在下一篇文章中介紹。外部靜止區(qū)域劃分為多面體網(wǎng)格導出為FFF 2.2.msh。
外部靜止區(qū)域網(wǎng)格如下圖所示:
運動區(qū)域網(wǎng)格如下圖所示:
5 FLUENT 設(shè)置
5.1 General設(shè)置與網(wǎng)格導入
首先導入FFF 1.1.msh網(wǎng)格,其次通過下圖所示的方法將FFF 2.2.msh導入。
由于本文涉及到列車運動,因此需要探討瞬態(tài)計算結(jié)果,此處的設(shè)置比較簡單,勾選為瞬態(tài)計算。
5.3 邊界條件設(shè)置
首先依據(jù)前文講述的幾何模型,按照下圖對邊界進行設(shè)置。
展開 33 Fluent實用案例 | 動網(wǎng)格高鐵制動盤制動過程散熱仿真
3.2 材料設(shè)置
此處對材料進行設(shè)置,采用air作為流體計算材料,具體設(shè)置如下圖所示:
采用鑄鐵作為固體計算材料,具體設(shè)置如下圖所示 :
3.3 模型設(shè)置
此處選擇模型進行相關(guān)計算,具體設(shè)置如下圖所示:
3.4 UDF設(shè)置
此處對剎車盤運動的udf進行編寫,lc為旋轉(zhuǎn)域所需udf,lc1為平移域所需udf,heatersource為剎車盤的熱通量,具體設(shè)置如下圖所示:
C
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION(lc, dt, vel, omega, time, dtime)
{
real t=CURRENT_TIME;
omega[0]=0;
omega[1]=0;
omega[2]=-1*(100-t)/0.4;
vel[0]=(100-t);
vel[1]=0;
vel[2]=0;
}
DEFINE_CG_MOTION(lc1, dt, vel, omega, time, dtime)
{
real t=CURRENT_TIME;
vel[0]=(100-t);
vel[1]=0;
vel[2]=0;
}
DEFINE_PROFILE(heatersource, thread, position)
{
face_t f;
real x[3];
real eff = 0.85;
real
展開 
32 Fluent實用案例 | 動網(wǎng)格高鐵制動盤制動過程仿真
3.2 材料設(shè)置
此處對材料進行設(shè)置,采用air作為流體計算材料,具體設(shè)置如下圖所示:
3.3 模型設(shè)置
此處選擇模型進行相關(guān)計算,具體設(shè)置如下圖所示:
3.4 UDF設(shè)置
此處對剎車盤運動的udf進行編寫,lc為旋轉(zhuǎn)域所需udf,lc1為平移域所需udf,具體設(shè)置如下圖所示:
C
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION(lc, dt, vel, omega, time, dtime)
{
real t=CURRENT_TIME;
omega[0]=0; omega[1]=0;
omega[2]=-1*(100-5*t)/0.4;
vel[0]=(100-5*t);
vel[1]=0;
vel[2]=0;
}
DEFINE_CG_MOTION(lc1, dt, vel, omega, time, dtime)
{
real t=CURRENT_TIME;
vel[0]=(100-5*t);
vel[1]=0;
vel[2]=0;
}
此處將UDF導入到fluent中,具體設(shè)置如下圖所示:
3.5 interface設(shè)置
由于是多個域組成,因此需要通過interface將各個區(qū)域連接起來,具體設(shè)置如下圖:
3.6 動網(wǎng)格設(shè)置
本案例最重要的便是動網(wǎng)格的設(shè)置,具體設(shè)置如下圖:
其中紅色框勾選為lc,
展開 DYNAMIC MESH動網(wǎng)格技術(shù)
DEFINE_CG_MOTION(piston,dt,vel,omega,time,dtime)
{ Thread *t; face_t f; vel[0] = 10; }
這個是最簡單的,也是最常用的,就是物體的x方向的移動速度是10m/s,vel[]就是速度,括號里可定義三個方向,0,1,2,分別對應(yīng)x,y,z,Thread *t是什么意思呢?就是告訴fluent你的哪個邊界是移動的.大家都知道邊界都有自己的id值,這個就是用來反饋的.到這里設(shè)置就差不多了,接下來就是在計算前看看網(wǎng)格的移動是否正常,首先初始化,然后solver->mesh motion,點擊apply,如果你看到你的網(wǎng)格移動了,恭喜,你的設(shè)置成功了,把那個簡單的udf再給大家好好說說,這個在define-》user define里面,不過有寫宏用編譯型,有些需要用解釋型.這個動網(wǎng)格只能用編譯形,可以用記事本編寫UDF,但是編譯形的宏一定要用c編譯器,解釋性的宏就不用裝c編譯器了,解釋型可以用文本編譯,編譯型要用C.
展開 Fluent 滑移網(wǎng)格+高鐵制動盤制動過程散熱仿真(一)
3.2 材料設(shè)置
此處對材料進行設(shè)置,采用air作為流體計算材料,具體設(shè)置如下圖所示:
采用鑄鐵作為固體計算材料,具體設(shè)置如下圖所示:
3.3 模型設(shè)置
此處選擇模型進行相關(guān)計算,需要打開能力方程,具體設(shè)置如下圖所示:
3.4 UDF設(shè)置
此處對剎車盤運動的udf進行編寫,lc為旋轉(zhuǎn)域所需udf,heatersource為剎車盤的熱通量,具體設(shè)置如下圖所示:
#include "udf.h"#include "mem.h"#include "dynamesh_tools.h"DEFINE_CG_MOTION(lc, dt, vel, omega, time, dtime){ real t=CURRENT_TIME; omega[0]=0; omega[1]=0; omega[2]=-1*(100-5*t)/0.4; }DEFINE_PROFILE(heatersource, thread, position) { face_t f; real x[3]; real eff = 0.8; real u = 0.3; real F = 15000; real s = 0.03; real w; real v = 100; real a = -5; w = 60 * 3.14 / 180.0; real tan_w = tan(w); begin_f_loop(f, thread) { F_CENTROID(x, f, thread); real t = CURRENT_TIME;
展開 FLUENT 動網(wǎng)格模型(下)
UDF主要有3個宏來設(shè)置動網(wǎng)格的運動,即DEFINE_CG_MOTION、DEFINE_GEOM和DEFINE_GRID_MOTION,編寫好的UDF編譯成功后導入FLUENT即可實現(xiàn)所需運動。
文章來源:精準CAE部落
13年實戰(zhàn)經(jīng)驗大牛當面授課 ,F(xiàn)luent動網(wǎng)格進階培訓
1.2求解運動問題的幾種方法
1.2.1 參考坐標系(fram motion/mrf)
1.2.2 滑移網(wǎng)格 (moving mesh)
1.2.3 動網(wǎng)格 (dynamic mesh)
1.2.4 三種方法的區(qū)別和適用范圍
2.定義運動的方式
2.1 profile簡介
2.2 udf簡介
2.3動網(wǎng)格有關(guān)的宏簡介
2.3.1 DEFINE_ZONE_MOTION
2.3.2DEFINE_CG_MOTION
2.3.3DEFINE_DYNAMIC_ZONE_PROPERTY
2.3.4DEFINE_GEOM
2.3.5DEFINE_GRID_MOTION
2.3.6DEFINE_SDOF_PROPERTIES
3.動網(wǎng)格網(wǎng)格更新方式
3.1smoothing
3.1.1smoothing適用范圍
3.1.2smoothing 參數(shù)設(shè)定
3.2layring
3.2.1layring 適用范圍
3.2.2layring 參數(shù)設(shè)定
3.3remesh
3.3.1remeshing適用范圍
3.3.2remeshing參數(shù)設(shè)定
3.3.3size function
4.動網(wǎng)格其他設(shè)置
4.1in-cylinder(活塞)
4.2six dof(六自由度)
5.動網(wǎng)格區(qū)域運動屬性設(shè)置
5.1stationary(靜止)
5.2rigid body(剛體)
5.3deforming(變形)
5.4uder-definde(自定義)
6.動網(wǎng)格預覽
7.動網(wǎng)格問題解決流程
8.frame motion算例
9.moving mesh算例
10.smoothing算例
11.layring 算例
12.remeshing算例1—剛體運動
13.remeshing算例2—變形運動
14.remshing算例3—2.5d運動
15.remeshing算例4—6dof運動
展開 34 Fluent實用案例 | 滑移網(wǎng)格高鐵制動盤制動過程散熱仿真
3.2 材料設(shè)置
此處對材料進行設(shè)置,采用air作為流體計算材料,具體設(shè)置如下圖所示:
采用鑄鐵作為固體計算材料,具體設(shè)置如下圖所示 :
3.3 模型設(shè)置
此處選擇模型進行相關(guān)計算,需要打開能力方程,具體設(shè)置如下圖所示:
3.4 UDF設(shè)置
此處對剎車盤運動的udf進行編寫,lc為旋轉(zhuǎn)域所需udf,heatersource為剎車盤的熱通量,具體設(shè)置如下圖所示:
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION(lc, dt, vel, omega, time, dtime)
{
real t=CURRENT_TIME;
omega[0]=0;
omega[1]=0;
omega[2]=-1*(100-5*t)/0.4;
}
DEFINE_PROFILE(heatersource, thread, position)
{
face_t f;
real x[3];
real eff = 0.8;
real u = 0.3;
real F = 15000;
real s = 0.03;
real w;
real v = 100;
real a = -5;
w = 60 * 3.14 / 180.0;
real tan_w = tan(w);
begin_f_loop(f, thread)
{
F_CENTROID
展開 技術(shù)講解 | 內(nèi)嚙合齒輪泵瞬態(tài)流場仿真
運動變形邊界說明
其中兩個齒輪面設(shè)置為剛體運動,運動形式由UDF控制,使用DEFINE_CG_MOTION宏定義;兩端面設(shè)置為在平面上的Deforming,需要注意的是,由于2.5D網(wǎng)格在網(wǎng)格更新時,是將一端面網(wǎng)格進行光順和重構(gòu),并將網(wǎng)格的變化拉伸到另一端,因此設(shè)置時一端勾選Remeshing,另一端不要勾選,否則會出現(xiàn)錯誤。
圖 13. 變形邊界的設(shè)置
03 計算及結(jié)果分析
1)選擇時間步長
齒輪泵流場計算為瞬態(tài)計算,時間步長是一個很重要的參數(shù),在選擇時間步長時遵循的一個基本原則是一定要保證能夠解析時間相關(guān)的特征,同時要確保求解的穩(wěn)定性。
對于一般問題,可以采用庫朗數(shù)來評估一個初始時間步長,即一個時間步內(nèi)流體通過單元的數(shù)量,一般取值范圍為1-10,再結(jié)合求解的穩(wěn)定性進行調(diào)整。
2)計算結(jié)果分析
①截面壓力場分布:
圖 15. 壓力變化
從壓力分布可以看到泵內(nèi)油壓建立和釋放的過程,月牙板兩側(cè)壓力從進油口到出油口逐漸增大。由于輪齒進入嚙合時,內(nèi)部流體相互擠壓,最大壓力出現(xiàn)在齒輪嚙合處;最小壓力出現(xiàn)在吸油腔,是由于脫離嚙合時吸油腔體積增大形成了局部真空。
②出口瞬時流量變化:
圖 16. 流量脈動曲線
可以看到,由于結(jié)構(gòu)本身特點,齒輪泵的流量呈現(xiàn)周期性的脈動變化。
泵的容積效率是泵的實際流量除以泵的理論流量,表示的是泵抵抗泄漏的能力。
展開 
【12月26-29日 北京】Fluent動網(wǎng)格技術(shù)及UDF二次開發(fā)技術(shù)專題
② DEFINE_GEOM
③ DEFINE_GRID_MOTION
工程實例:基于UDF的二維機翼強迫振動
10.振動方程數(shù)值解法
1、增量形式的振動方程
2、龍格-庫塔法求解振動方程的UDF開發(fā)
工程實例:基于UDF的二維機翼流固耦合計算
11.輔助功能及使用技巧
1、用Events功能改變邊界條件 2、定常問題求解
3、非定常計算技巧
① NITA方法加快計算速度 ② ITA的迭代控制
③ Patch功能應(yīng)用
工程實例:某藝術(shù)館的風壓模擬
12.Workbench流固耦合計算
1、耦合分析系統(tǒng) 2、計算模型與網(wǎng)格
3、計算設(shè)置
工程實例:探針變形計算 工程實例:橡膠板的變形計算
備注
1、開課前老師會針對學員反饋的技術(shù)問題進行分析,對共性問題在課堂中老師會與學員共同分析探討、個性問題將在課下單獨交流。
展開 內(nèi)嚙合齒輪泵瞬態(tài)流場仿真
運動變形邊界說明
其中兩個齒輪面設(shè)置為剛體運動,運動形式由UDF控制,使用DEFINE_CG_MOTION宏定義;兩端面設(shè)置為在平面上的Deforming,需要注意的是,由于2.5D網(wǎng)格在網(wǎng)格更新時,是將一端面網(wǎng)格進行光順和重構(gòu),并將網(wǎng)格的變化拉伸到另一端,因此設(shè)置時一端勾選Remeshing,另一端不要勾選,否則會出現(xiàn)錯誤。
圖 13. 變形邊界的設(shè)置
計算及結(jié)果分析
1)選擇時間步長
齒輪泵流場計算為瞬態(tài)計算,時間步長是一個很重要的參數(shù),在選擇時間步長時遵循的一個基本原則是一定要保證能夠解析時間相關(guān)的特征,同時要確保求解的穩(wěn)定性。
對于一般問題,可以采用庫朗數(shù)來評估一個初始時間步長,即一個時間步內(nèi)流體通過單元的數(shù)量,一般取值范圍為1-10,再結(jié)合求解的穩(wěn)定性進行調(diào)整。
2)計算結(jié)果分析
截面壓力場分布:
圖 14. 壓力變化
從壓力分布可以看到泵內(nèi)油壓建立和釋放的過程,月牙板兩側(cè)壓力從進油口到出油口逐漸增大。由于輪齒進入嚙合時,內(nèi)部流體相互擠壓,最大壓力出現(xiàn)在齒輪嚙合處;最小壓力出現(xiàn)在吸油腔,是由于脫離嚙合時吸油腔體積增大形成了局部真空。
出口瞬時流量變化
圖 15. 流量脈動曲線
可以看到,由于結(jié)構(gòu)本身特點,齒輪泵的流量呈現(xiàn)周期性的脈動變化。
泵的容積效率是泵的實際流量除以泵的理論流量,表示的是泵抵抗泄漏的能力。
展開 ANSYS Fluent 內(nèi)嚙合齒輪泵瞬態(tài)流場仿真
運動變形邊界說明
其中兩個齒輪面設(shè)置為剛體運動,運動形式由UDF控制,使用DEFINE_CG_MOTION宏定義;兩端面設(shè)置為在平面上的Deforming,需要注意的是,由于2.5D網(wǎng)格在網(wǎng)格更新時,是將一端面網(wǎng)格進行光順和重構(gòu),并將網(wǎng)格的變化拉伸到另一端,因此設(shè)置時一端勾選Remeshing,另一端不要勾選,否則會出現(xiàn)錯誤。
圖 13. 變形邊界的設(shè)置
計算及結(jié)果分析
1)選擇時間步長
齒輪泵流場計算為瞬態(tài)計算,時間步長是一個很重要的參數(shù),在選擇時間步長時遵循的一個基本原則是一定要保證能夠解析時間相關(guān)的特征,同時要確保求解的穩(wěn)定性。
對于一般問題,可以采用庫朗數(shù)來評估一個初始時間步長,即一個時間步內(nèi)流體通過單元的數(shù)量,一般取值范圍為1-10,再結(jié)合求解的穩(wěn)定性進行調(diào)整。
2)計算結(jié)果分析
截面壓力場分布:
圖 14. 壓力變化
從壓力分布可以看到泵內(nèi)油壓建立和釋放的過程,月牙板兩側(cè)壓力從進油口到出油口逐漸增大。由于輪齒進入嚙合時,內(nèi)部流體相互擠壓,最大壓力出現(xiàn)在齒輪嚙合處;最小壓力出現(xiàn)在吸油腔,是由于脫離嚙合時吸油腔體積增大形成了局部真空。
出口瞬時流量變化
圖 15. 流量脈動曲線
可以看到,由于結(jié)構(gòu)本身特點,齒輪泵的流量呈現(xiàn)周期性的脈動變化。
泵的容積效率是泵的實際流量除以泵的理論流量,表示的是泵抵抗泄漏的能力。
展開 二十一、動網(wǎng)格Layering方法及實例
注:此處UDF使用DEFINE_CG_MOTION宏編寫,主要語句:vel[2] = -0.01,表示z方向速度為-0.01m/s</span></p><p><strong style="color: rgb(0, 0, 0);"> </strong></p><p><strong style="color: rgb(0, 0, 0);"> </strong></p><p><span style="background-color: rgb(0, 255, 255); color: rgb(0, 0, 0);">Meshing Options:</span></p><p><strong style="color: rgb(0, 0, 0);"> </strong></p><p class="ql-align-center"><img src="https://mmbiz.qpic.cn/mmbiz_png/8tJMdLVYZyib1Hn4mPOshm0qzCyo8icRiaU9Dre5C0wwYm8ZfgYUeEfGrpUT9ouK4ypN0yAUfLNI3rGZuicWvlurDw/640?wx_fmt=png"></p><p><br></p><p><span style="color: rgb(0, 0, 0);">Cell Height:即公式</span><img src="https://mmbiz.qpic.cn/mmbiz_png/8tJMdLVYZyib1Hn4mPOshm0qzCyo8icRiaUaIibcbtEFe1XnFCPPJ2vJHKpib1icvO08g55tzia9jvibkaRTUsb2Eacrkw/640?
展開