失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > fluent udf manual中的velocity例子

fluent udf manual中的velocity例子

时间:2021-11-19 16:49:02

相关推荐

fluent udf manual中的velocity例子

ANSYS fluent udf帮助文件里自带了个关于入口速度的udf控制例子,其模型如下:

帮助中自带例子模型的坐标轴如上图所示,其对应的udf代码如下:

#include "udf.h"

DEFINE_PROFILE(inlet_x_velocity, thread, position)参数为 UDF name,Thread *t, inti

{

realx[ND_ND];

realy,h;

face_tf;

h=0.016;h为入口通道宽度

begin_f_loop(f,thread)

{

F_CENTROID(x, f,thread);参数为x[ND_ND],face_tf,Thread *t

y=2*(x[1]-0.5*h)/h;x[1]对应点的y坐标

F_PROFILE(f, thread,position)=0.1*(1.0-y*y);这行和上一行合起来为抛物线方程

}

end_f_loop(f,thread)

}

EX1*********************************************

知道了udf 代码的具体含义,我们就可以自己尝试改变一下模型。我们先简单的将模型的坐标轴位置平移,以便更好地理解udf代码的编写。

如图所示,如若模型的坐标轴位置变换到如图位置,此时要改变的是抛物线方程。修改后的代码如下:

#include "udf.h"

DEFINE_PROFILE(inlet_x_velocity, thread, position)

{

realx[ND_ND];

realy,h;

face_tf;

h=0.016;

begin_f_loop(f,thread)

{

F_CENTROID(x, f, thread);

y=2*(x[1]+0.5*h)/h; 这个地方需要修改一下,根据抛物线方程来修改

F_PROFILE(f, thread,position)=0.1*(1.0-y*y);

}

end_f_loop(f,thread)

}

在fluent中打开模型,interpreted或者compiled编辑好的.c文件,求解结果如下所示:

EX2******************************************************

再次改变模型位置,如下图所示,改变xy轴方向

修改代码如下:

#include "udf.h"

DEFINE_PROFILE(inlet_y_velocity, thread,position) 图中入口速度为y方向,名称改为y方向,不改也没关系

{

realx[ND_ND];

realy,h;

face_tf;

h=0.016;

begin_f_loop(f,thread)

{

F_CENTROID(x, f, thread);

y=2*x[0]/h;

要修改的就是这个地方,第一,根据抛物线方程修改方程,第二,点的坐标取x[0],也即点的x轴坐标

F_PROFILE(f, thread,position)=0.1*(1.0-y*y);

}

end_f_loop(f,thread)

}

求解结果如下图:

可以看出,这样修改代码之后,和前面的EX1还有HELP文件里的例子结果就一样了。

以上的摸索,是为了方便大家更好地理解 fluent udf编程,改天我在分享最简单的三维模型该如何编写udf。

如有错误的地方,欢迎批评指正。

如果觉得《fluent udf manual中的velocity例子》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。