fluent-UDF-DEFINE_ADJUST宏
文章首發在公眾號,歡迎大家關注公眾號:CFD流
DEFINE macros是ANSYS fluent提供的預定義宏,必須用于定義你的UDF。DEFINE macros的定義包含在udf.h文件中。示例并非都是可以在ANSYS FLUENT中作為獨立udf執行的完整函數。示例僅用于演示定義宏的用法。
重要提示
?在你的源代碼中,你必須把所有的參數都放在同一行,將DEFINE語句分割成幾行會導致編譯錯誤。
?確保宏(如DEFINE_PROFILE)和參數的第一個括號之間沒有空格,因為這會在Windows中導致錯誤。
?不要在源代碼的注釋中包含DEFINE宏語句(比如DEFINE_PROFILE)。這將導致編譯錯誤。
DEFINE_ADJUST是一個通用的宏,可以用來調整或修改ANSYS FLUENT中沒有作為參數傳遞的變量。例如,你可以使用DEFINE_ADJUST來修改流動變量(例如,速度、壓力)和計算積分。你還可以使用它對一個域上的標量進行積分,并根據結果調整邊界條件。使用DEFINE_ADJUST定義的函數在每次迭代時執行,并在每次迭代開始時調用,然后才解出傳輸方程。
用法:DEFINE_ADJUST (name,d)
DEFINE_ADJUST有兩個參數:name和d。name是UDF的名字,d通過ANSYS FLUENT求解器傳遞到UDF。
domain*d 指向要在其上應用adjust函數的域的指針。域參數提供對網格中所有單元和面thread的訪問。對于多相流,求解器傳遞給函數的指針是混合域的。
函數返回值:void。
下面的UDF,名為my_adjust,使用DEFINE_ADJUST計算了整個域的湍流耗散。然后在控制臺中顯示此值。每個迭代調用一次UDF。它可以作為一個解釋或編譯UDF在ANSYS FLUENT中執行。
/
UDF for integrating turbulent dissipation and displaying it in the
console
*/
include "udf.h"
DEFINE_ADJUST(my_adjust,d)
{
Thread t;
/ *Integrate dissipation. */
real sum_diss=0.;
cell_t c;
thread_loop_c(t,d)
{
begin_c_loop(c,t)
sum_diss += C_D(c,t)*C_VOLUME(c,t);
end_c_loop(c,t)
}
printf("Volume integral of turbulent dissipation: %g\n", sum_diss);
}
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















