| 查看: 1192 | 回复: 0 | |||
[交流]
fluent-UDF-DEFINE_INIT宏
|
|
DEFINE_INIT是一个通用的宏,你可以使用它为求解方案指定一组初始值。DEFINE_INIT实现了与patch相同的效果,但是使用了不同的方法,即使用UDF。每次初始化都执行一次DEFINE_INIT函数,并在求解程序执行默认初始化之后立即调用该函数。由于它是在流场初始化后调用的,所以通常用于设置流场的初始值。 DEFINE_INIT(name, d) DEFINE_INIT有两个参数:name和d。name为UDF的名称,d是从ANSYS FLUENT求解器传递到UDF的值。 Domain *d:指向要在其上应用初始化函数的域的指针。域参数提供对网格中所有单元格和面线程的访问。对于多相流,求解器传递给函数的指针是混合级域。 下面的UDF名为my_init_func,用于初始化流场变量 它只在解决方案过程开始时执行一次,该函数既可以在ANSYS FLUENT中解释执行也可以编译执行。UDF源代码如下: /*********************************************************************** UDF for initializing flow field variables ************************************************************************/ #include "udf.h" DEFINE_INIT(my_init_func,d) { cell_t c; Thread *t; real xc[ND_ND]; /* loop over all cell threads in the domain */ thread_loop_c(t,d) { /* loop over all cells */ begin_c_loop_all(c,t) { C_CENTROID(xc,c,t); if (sqrt(ND_SUM(pow(xc[0],2.),pow(xc[1],2.),pow(xc[2],2.))) < 0.25) C_T(c,t) = 400.; else C_T(c,t) = 300.; } end_c_loop_all(c,t) } } 宏ND_SUM(a,b,c)计算前两个参数(2D)或所有三个参数(3D)的和。 |
» 猜你喜欢
材料与化工(0856)304求B区调剂
已经有11人回复
211本,11408一志愿中科院277分,曾在中科院自动化所实习
已经有3人回复
297求调剂
已经有4人回复
【0703化学调剂】-一志愿华中师范大学-六级475
已经有5人回复
282 求调剂
已经有3人回复
材料080500调剂求收留
已经有3人回复
331求调剂(0703有机化学
已经有6人回复
308 085701 四六级已过求调剂
已经有14人回复
297一志愿上交085600求调剂
已经有3人回复
学硕285求调剂
已经有46人回复













回复此楼