Fluent UDF【11】:?jiǎn)卧獢?shù)據(jù)訪問(wèn)宏
2017-06-11 by:CAE仿真在線 來(lái)源:互聯(lián)網(wǎng)
自己選的主題,哭著也要更新完。
單元數(shù)據(jù)要比節(jié)點(diǎn)數(shù)據(jù)復(fù)雜得多。與節(jié)點(diǎn)數(shù)據(jù)僅僅存儲(chǔ)節(jié)點(diǎn)坐標(biāo)不同,單元數(shù)據(jù)中不僅包含單元中心節(jié)點(diǎn)等,還包含有各種物理量數(shù)據(jù)。單元數(shù)據(jù)訪問(wèn)宏返回網(wǎng)格單元內(nèi)的信息。大部分的單元宏在頭文件metric.h 中定義,這類(lèi)的宏均以C_作為前綴。
宏C_CENTROID用于獲取網(wǎng)格單元中心坐標(biāo)。
-
宏調(diào)用形式:C_CENTROID(x,c,t)
-
宏參數(shù):real x[ND_ND], cell_t c, Thread *t
-
數(shù)據(jù)返回:以參數(shù)x傳址調(diào)用返回
該宏以參數(shù)作為返回值,因此需要事先通過(guò)real x[ND_ND]定義參數(shù)x。程序片段如:
{ cell_t c; real x[ND_ND]; real y; thread_loop_c(t,d) { begin_c_loop_all(c,t) { C_CENTROID(x,c,t); y = x[1]; ... } } }
C_VOLUME宏用于獲取網(wǎng)格單元體積。
-
宏調(diào)用形式:C_VOLUME(c,t)
-
宏參數(shù):cell_t c, Thread *t
-
數(shù)據(jù)返回:返回real值
{ real vol; vol = C_VOLUME(c,t); }
C_NNODES宏用于獲取單元體內(nèi)節(jié)點(diǎn)數(shù)量。
-
調(diào)用形式:C_NNODE(c,t)
-
參數(shù):cell_t c, Thread *t
-
數(shù)據(jù)返回:返回int類(lèi)型的節(jié)點(diǎn)數(shù)量
C_NNODES宏用于獲取單元體內(nèi)網(wǎng)格面的數(shù)量。
-
調(diào)用形式:C_NFACES(c,t)
-
參數(shù):cell_t c, Thread *t
-
數(shù)據(jù)返回:返回int類(lèi)型的網(wǎng)格面數(shù)量
可以通過(guò)宏訪問(wèn)網(wǎng)格單元內(nèi)的物理量參數(shù),如獲取密度、壓力、速度等。這些宏在頭文件mem.h中定義。
宏 | 參數(shù) | 返回值 |
C_R(c,t) |
cell_t c, Thread *t |
密度 |
C_P(c,t) |
cell_t c, Thread *t |
壓力 |
C_U(c,t) |
cell_t c, Thread *t |
u速度 |
C_V(c,t) |
cell_t c, Thread *t |
v速度 |
C_W(c,t) |
cell_t c, Thread *t |
w速度 |
C_T(c,t) |
cell_t c, Thread *t |
溫度 |
C_H(c,t) |
cell_t c, Thread *t |
焓 |
C_K(c,t) |
cell_t c, Thread *t |
湍動(dòng)能 |
C_NUT(c,t) |
cell_t c, Thread *t |
湍流粘度 |
C_D(c,t) |
cell_t c, Thread *t |
湍動(dòng)能耗散率 |
C_O(c,t) |
cell_t c, Thread *t |
比耗散率 |
C_YI(c,t,i) |
cell_t c, Thread *t,int i |
組分質(zhì)量分?jǐn)?shù) |
C_IGNITE(c,t) |
cell_t c, Thread *t |
點(diǎn)火質(zhì)量分?jǐn)?shù) |
C_PREMIXC_T(c,t) |
cell t c, Thread *t |
預(yù)混燃燒溫度 |
C_STORAGE_R(c,t,nv) |
cell_t c, Thread *t, real nv |
變量nv的值 |
計(jì)算單元內(nèi)部物理量的梯度的宏,通常以_G為后綴,如計(jì)算溫度梯度C_T_G。
注意:梯度變量?jī)H在相關(guān)變量被求解后才可用。
如:當(dāng)定義了能量源項(xiàng)后,UDF中能夠利用宏C_T_G訪問(wèn)單元溫度,然而卻不能使用C_U_G宏訪問(wèn)x方向速度梯度。主要 原因在于求解器為了考慮計(jì)算效率,在求解時(shí)從內(nèi)存中去除了不被使用的數(shù)據(jù)。如果一定要保留這些梯度數(shù)據(jù),可以使用TUI命令solve/set/expert,之后在系統(tǒng)提示Keep temporary solver memory from being freed?后輸入yes。這樣的話所有的梯度數(shù)據(jù)都會(huì)被保留,但是計(jì)算過(guò)程中會(huì)消耗更多的內(nèi)存。
可以使用此方式調(diào)用梯度宏:
/*返回x方向溫度梯度*/ real xtG = C_T_G(c,t)[0];
梯度訪問(wèn)宏包括:
宏 | 宏參數(shù) | 返回值 |
C_P_G(c,t) |
cell_t c, Thread *t |
壓力梯度向量 |
C_U_G(c,t) |
cell_t c, Thread *t |
u速度梯度向量 |
C_V_G(c,t) |
cell_t c, Thread *t |
v速度梯度向量 |
C_W_G(c,t) |
cell_t c, Thread *t |
w速度梯度向量 |
C_T_G(c,t) |
cell_t c, Thread *t |
溫度梯度向量 |
C_H_G(c,t) |
cell_t c, Thread *t |
焓梯度向量 |
C_NUT_G(c,t) |
cell_t c, Thread *t |
湍流粘度梯度向量 |
C_K_G(c,t) |
cell_t c, Thread *t |
湍動(dòng)能梯度向量 |
C_D_G(c,t) |
cell_t c, Thread *t |
湍動(dòng)能耗散率梯度向量 |
C_O_G(c,t) |
cell_t c, Thread *t |
比耗散率梯度向量 |
C_YI_G(c,t,i) |
cell_t c, Thread *t,int i |
組分質(zhì)量分?jǐn)?shù)梯度向量 |
注意:C_P_G只能用于壓力基求解器。C_YI_G只能用于密度基求解器,若要在壓力基中使用此宏C_YI_G,則需要設(shè)置’species/save-gradients?為#t
相關(guān)標(biāo)簽搜索:Fluent UDF【11】:?jiǎn)卧獢?shù)據(jù)訪問(wèn)宏 Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學(xué)反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析