欢迎来到天天文库
浏览记录
ID:57013142
大小:678.56 KB
页数:37页
时间:2020-07-30
《Fluent udf 第10章 应用举例.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第10章应用举例第10章应用举例本章包含了FLUENT中UDFs的应用例子。10.1边界条件10.2源项10.3物理属性10.4反应速率(ReactingRates)10.5用户定义标量(User_DefinedScalars)10.1边界条件这部分包含了边界条件UDFs的两个应用。两个在FLUENT中都是作为解释式UDFs被执行的。10.1.1涡轮叶片的抛物线速度入口分布要考虑的涡轮叶片显示在Figure10.1.1中。非结构化网格用于模拟叶片周围的流场。区域从底部周期性边界延伸到顶部周期性边界,
2、左边是速度入口,右边是压力出口。Figure10.1.1:TheGridfortheTurbineVaneExample常数x速度应用于入口的流场与抛物线x速度应用于入口的流场作了比较。当采用分段第10章应用举例线性分布的型线的应用是有效的对边界型线选择,多项式的详细说明只能通过用户定义函数来完成。常数速度应用于流场入口的结果显示在Figure10.1.2和Figure10.1.3中。当流动移动到涡轮叶片周围时初始常速度场被扭曲。Figure10.1.2:VelocityMagnitudeConto
3、ursforaConstantInletxVelocityFigure10.1.3:VelocityVectorsforaConstantInletxVelocity现在入口x速度将用以下型线描述:第10章应用举例这里变量y在人口中心是0.0,在顶部和底部其值分别延伸到±0.0745。这样x速度在入口中心为20m/sec,在边缘为0。UDF用于传入入口上的这个抛物线分布。C源代码(vprofile.c)显示如下。函数使用了Section5.3中描述的Fluent提供的求解器函数。/*********
4、**************************************************************//*vprofile.c*//*UDFforspecifyingsteady-statevelocityprofileboundarycondition*//***********************************************************************/#include"udf.h"DEFINE_PROFILE(inlet_x_
5、velocity,thread,position){realx[ND_ND];/*thiswillholdthepositionvector*/realy;face_tf;begin_f_loop(f,thread){F_CENTROID(x,f,thread);y=x[1];F_PROFILE(f,thread,position)=20.-y*y/(.0745*.0745)*20.;}end_f_loop(f,thread)}函数,被命名为inlet_x_velocity,使用了DEFINE_PR
6、OFILE定义并且有两个自变量:thread和position。Thread是一个指向面的thread的指针,position是一个整数,它是每个循环(loop)内为变量设置的数值标签。第10章应用举例函数通过声名变量f作为face_t的数据类型。一维数组x和变量y被定义为real数据类型。循环宏用于循环区域内每个面来创建型线,或数据数组。每个循环内,F_CENTROIDS为带指标f的面输出面质心(数组x)的值,指标f在被thread指向的线(thread)上。存储在x[1]中的y坐标用于为变量y赋
7、值,然后用于计算x速度。这个值接着被分配到F_PROFILE,使用整数position(在你从VelocityInlet面板中选择的UDF作为x速度的边界条件的基础上通过求解器传递给它)来设置内存中x速度面值。为了在FLUENT中使用这个解释式UDF,你必须首先编译它。DefineUser-DefinedFunctionsInterpreted...在InterpretedUDFs面板中,在SourceFileName区域命名你的函数。如果必要,在CPPCommandName区域输入你的C预处理程序
8、类型和在StackSize下输入堆栈大小。打开DisplayAssemblyListing在你的控制台窗口中能看到汇编列表,当函数编译时。点击Compile然后Close面板。为了选择这个用户定义函数作为所选区域的速度边界条件,打开VelocityInlet面板。第10章应用举例在X-Velocity下拉列表下,选择udfinlet_x_velocity,这个名字在上面已经命名给函数。这个函数将被使用,而不是出现在X-Velocity区域的0值(在这个例子中)。点OK
此文档下载收益归作者所有