Fluent UDF【13】:循環(huán)操作宏
2017-06-11 by:CAE仿真在線 來源:互聯(lián)網(wǎng)
UDF使用過程中,經(jīng)常要通過循環(huán)遍歷的方式對數(shù)據(jù)進行操作,如設置邊界條件時,需要給每一個邊界網(wǎng)格面賦值,此時需要通過逐層循環(huán)的方式訪問每一個邊界網(wǎng)格面。Fluent UDF中提供了眾多循環(huán)來實現(xiàn)此功能。這些宏包括:
-
區(qū)域中單元循環(huán)thread_loop_c
-
區(qū)域中網(wǎng)格面循環(huán)thread_loop_f
-
單元中單元循環(huán)begin...end_c_loop
-
面中面循環(huán)begin...end_f_loop
-
單元中面循環(huán)c_face_loop
-
單元中的節(jié)點循環(huán)c_node_loop
-
單元面中的節(jié)點循環(huán)f_node_loop
利用thread_loop_c在指定domain中遍歷所有的網(wǎng)格單元(cell)。使用方式非常簡單,如下:
Domain *domain; Thread *c_thread; thread_loop_c(c_thread,domain) { /*對單元進行操作*/ ... }利用宏thread_loop_f來遍歷domain中的所有網(wǎng)格面(face)。與遍歷網(wǎng)格單元類似的使用。如:
Thread *f_thread; Domain *domain; thread_loop_f(f_thread,domain) { /*對網(wǎng)格面進行操作*/ }使用宏begin_c_loop及end_c_loop對所給定的網(wǎng)格單元集合中的所有單元進行遍歷。
使用方式:
cell_t c; Thread *c_thread; begin_c_loop(c, c_thread) { } end_c_loop(c, c_thread)例如下面程序計算c_thread中的所有單元的溫度和:
begin_c_loop(c, c_thread) { temp += C_T(c, c_thread); } end_c_loop(c, c_thread)利用宏begin_f_loop與end_f_loop來遍歷給定face集合中的所有網(wǎng)格面。
使用方式:
face_t f; Thread *f_thread; begin_f_loop(f, f_thread) { } end_f_loop(f, f_thread)以下例程計算給定網(wǎng)格幾何f_thread上的所有網(wǎng)格面上溫度總和。
begin_f_loop(f, f_thread) { temp += F_T(f, f_thread); } end_f_loop(f, f_thread)利用宏c_face_loop來實現(xiàn)遍歷網(wǎng)格單元上的所有網(wǎng)格面。如:
cell_t c; Thread *t; face_t f; Thread *tf;int n; c_face_loop(c, t, n) { f = C_FACE(c,t,n); tf = C_FACE_THREAD(c,t,n); }利用宏c_node_loop來實現(xiàn)遍歷網(wǎng)格單元中的所有網(wǎng)格節(jié)點。
cell_t c; Thread *t; int n; Node *node; c_node_loop(c,t,n) { node = C_NODE(c,t,n); }利用宏f_node_loop來實現(xiàn)此目的。
face_t f; Thread *t; int n; Node *node; f_node_loop(f,t,n) { node = F_NODE(f,t,n); }
相關(guān)標簽搜索:Fluent UDF【13】:循環(huán)操作宏 Fluent培訓 Fluent流體培訓 Fluent軟件培訓 fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學反應 fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析