
發布
注冊
/
登錄DEFINE_CG_MOTION
關注創建者:匿名 創建時間:2021-08-09
DEFINE_CG_MOTION的視頻教程
fluent udf 之動網格DEFINE_CG_MOTION講解及自轉加公轉等實例講解
1、講解了DEFINE_CG_MOTION的含義; 2、講解了fluent設置和預覽動網格方法; 3、講解了剛體自轉加公轉的udf的編寫;
¥40 43分鐘 119播放
查看
DEFINE_CG_MOTION的實例教程
本案例選擇DEFINE_CG_MOTION進行定義,vel[1]代表y軸方向,omega[2]代表z軸旋轉方向,本案例設計naca0012翼型上下擺動72°,上下移動0.2m,相關的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 設置
本案例需要設置如下三個模塊的計算,其中包括背景網格區域、前景網格區域與fluent計算三個部分,具體設置如下圖:
3 SCDM 設置
3.1 導入幾何
整體幾何結構如下圖:此邊界參考相關文獻,來流入口與上下邊界距離翼型10C,出口邊界距離翼型20C。
3.2 網格設置
采用SCDM進行網格劃分,背景區域劃分為四邊形網格導出。前景網格劃分為三角形網格導出,并劃分相對應的邊界層網格。
背景網格如下圖所示:
前景網格如下圖所示:
4 FLUENT 設置
4.1 General設置與網格導入
首先導入背景網格,其次通過下圖所示的方法將前景導入。
由于本文涉及到NACA0012翼型運動,因此需要探討瞬態計算結果,此處的設置比較簡單,勾選為瞬態計算。
展開 本案例選擇DEFINE_CG_MOTION進行定義,omega[0]代表z軸旋轉方向,本案例設計翼型上下擺動18°,相關的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 設置
本案例需要設置如下三個模塊的計算,其中包括背景網格區域、前景網格區域與fluent計算三個部分,具體設置如下圖 :
3 SCDM 設置
3.1 導入幾何
整體幾何結構如下圖:撲翼機翼型采用NACA0012,具體的幾何結構如下圖,x軸正向為壓力出口,負軸位速度入口,撲翼機表面為壁面,其余面位對稱面。重疊網格區域為內部圓柱區域。
撲翼機運動翼型命名為naca,靜止區域命名為bird。
4 Fluent Meshing 設置
4.1 網格設置
采用 SCDM 進行網格劃分,背景網格與前景網格皆采用六面體網格劃分,并劃分相對應的邊界層網格。背景網格如下圖所示:
前景網格如下圖所示:
5 FLUENT 設置
5.1 General設置與網格導入
首先導入背景網格,其次通過下圖所示的方法將前景導入。
由于本文涉及到NACA0012翼型運動,因此需要探討瞬態計算結果,此處的設置比較簡單,勾選為瞬態計算。
展開 僅在一個方向上運動,因此選擇DEFINE_CG_MOTION進行定義,vel[0]代表x軸方向,相關的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 設置
本案例需要設置如下三個模塊的計算,其中包括動網格區域網格劃分、外域網格劃分與fluent計算三個部分,具體設置如下圖:
3 SCDM 設置
3.1 導入幾何
整體幾何結構如下圖:此邊界參考相關文獻,部分文獻左邊界為壓力入口。
局部細節圖如下,中間的長方體為動網格運動區域。
4 Fluent meshing 設置
采用Fluent meshing進行網格劃分,運動區域劃分為四面體網格導出為 FFF 1.1.msh,詳細的劃分方式在下一篇文章中介紹。外部靜止區域劃分為多面體網格導出為FFF 2.2.msh。
外部靜止區域網格如下圖所示:
運動區域網格如下圖所示:
5 FLUENT 設置
5.1 General設置與網格導入
首先導入FFF 1.1.msh網格,其次通過下圖所示的方法將FFF 2.2.msh導入。
由于本文涉及到列車運動,因此需要探討瞬態計算結果,此處的設置比較簡單,勾選為瞬態計算。
5.3 邊界條件設置
首先依據前文講述的幾何模型,按照下圖對邊界進行設置。
展開 3.2 材料設置
此處對材料進行設置,采用air作為流體計算材料,具體設置如下圖所示:
采用鑄鐵作為固體計算材料,具體設置如下圖所示 :
3.3 模型設置
此處選擇模型進行相關計算,具體設置如下圖所示:
3.4 UDF設置
此處對剎車盤運動的udf進行編寫,lc為旋轉域所需udf,lc1為平移域所需udf,heatersource為剎車盤的熱通量,具體設置如下圖所示:
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
展開 3.2 材料設置
此處對材料進行設置,采用air作為流體計算材料,具體設置如下圖所示:
3.3 模型設置
此處選擇模型進行相關計算,具體設置如下圖所示:
3.4 UDF設置
此處對剎車盤運動的udf進行編寫,lc為旋轉域所需udf,lc1為平移域所需udf,具體設置如下圖所示:
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中,具體設置如下圖所示:
3.5 interface設置
由于是多個域組成,因此需要通過interface將各個區域連接起來,具體設置如下圖:
3.6 動網格設置
本案例最重要的便是動網格的設置,具體設置如下圖:
其中紅色框勾選為lc,
展開 
DEFINE_CG_MOTION的相關專題、標簽、搜索
DEFINE_CG_MOTION的最新內容
3.3 模型設置
此處選擇模型進行相關計算,需要打開能力方程,具體設置如下圖所示:
3.4 UDF設置
此處對剎車盤運動的udf進行編寫,lc為旋轉域所需udf,heatersource為剎車盤的熱通量,具體設置如下圖所示:
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION
, 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
(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
本案例選擇DEFINE_CG_MOTION進行定義,omega[0]代表z軸旋轉方向,本案例設計翼型上下擺動18°,相關的UDF代碼如下:
C
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
DEFINE_CG_MOTION(pyj, dt, vel, omega, time, dtime)
本案例選擇DEFINE_CG_MOTION進行定義,vel[1]代表y軸方向,omega[2]代表z軸旋轉方向,本案例設計naca0012翼型上下擺動72°,上下移動0.2m,相關的UDF代碼如下:
#include "udf.h"#include "mem.h"#include "dynamesh_tools.h"DEFINE_CG_MOTION(naca, dt, vel, omega,
僅在一個方向上運動,因此選擇DEFINE_CG_MOTION進行定義,vel[0]代表x軸方向,相關的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
采用鑄鐵作為固體計算材料,具體設置如下圖所示:
3.3 模型設置
此處選擇模型進行相關計算,需要打開能力方程,具體設置如下圖所示:
3.4 UDF設置
此處對剎車盤運動的udf進行編寫,lc為旋轉域所需udf,heatersource為剎車盤的熱通量,具體設置如下圖所示:
#include "udf.h"#include "mem.h"#include "dynamesh_tools.h"DEFINE_CG_MOTION
UDF主要有3個宏來設置動網格的運動,即DEFINE_CG_MOTION、DEFINE_GEOM和DEFINE_GRID_MOTION,編寫好的UDF編譯成功后導入FLUENT即可實現所需運動。
文章來源:精準CAE部落
注:此處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
運動變形邊界說明
其中兩個齒輪面設置為剛體運動,運動形式由UDF控制,使用DEFINE_CG_MOTION宏定義;兩端面設置為在平面上的Deforming,需要注意的是,由于2.5D網格在網格更新時,是將一端面網格進行光順和重構,并將網格的變化拉伸到另一端,因此設置時一端勾選Remeshing,另一端不要勾選,否則會出現錯誤。
圖 13.
