欢迎来到天天文库
浏览记录
ID:26599987
大小:736.35 KB
页数:23页
时间:2018-11-27
《用户自定义函数 fluent 入门培训》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用户自定义函数FLUENT入门培训简介什么是用户自定义函数(UDF)?用户自定义函数,或UDF,是用户自编的程序,它可以动态的连接到Fluent求解器上来提高求解器性能。标准C语言的库函数Trigonometric,exponential,controlblocks,do-loops,filei/o等。预定义宏通过这些预定义宏,可以获得Fluent求解器得到的数据。为什么要使用UDF?标准界面及功能并不能满足每个用户的需要。定制边界条件,定义材料属性,定义表面和体积反应率,定义FLUENT输运方程中的源项,用户自定义标量输运方程(UDS)中的源项扩散率函数等等。在每次迭
2、代的基础上调节计算值(需要时)UDF的异步执行方案的初始化。用户介入FLUENT求解器User-DefinedPropertiesUser-DefinedBCsUserDefinedINITIALIZESegregatedPBCSExitLoopRepeatCheckConvergenceUpdatePropertiesSolveTurbulenceEquation(s)SolveSpeciesSolveEnergyInitializeBeginLoopDBCSSolveOtherTransportEquationsasrequiredSolver?SolveMassC
3、ontinuity;UpdateVelocitySolveU-MomentumSolveV-MomentumSolveW-MomentumSolveMass&MomentumSolveMass,Momentum,Energy,SpeciesUser-definedADJUSTSourcetermsSourcetermsSourcetermsSourcetermsUDF基础单元和单元面被组合为一些区域(zones),这些区域规定了计算域(例如,边界条件、源项)在UDF中,域(zones)用线(threads)来联系。循环宏(loopingmacro)对线上的所有单元进行操
4、作。例如:用面循环宏访问面域3(zone3)(入口)上的563个面。每个面的位置都通过对空间上的设置来计算表示在用户操作界面中,可以自动调用UDF中定义的求解器变量所有的求解器变量,都使用SI单位。运行UDF在FLUENT中运行UDF基础步骤如下:创建包涵UDF源代码的文件打开fluent,读入case/data文件解释或者编译UDF在FLUENT中激活UDF在计算平台(Iteratepanel)中设置UDF的更新频率开始计算例题-抛物线入流速度条件二维弯管中,我们来定义一个抛物线入流速度条件x方向上的速度用下面公式定义第一步--准备源代码函数inlet_x_veloc
5、ity通过DEFINE_PROFILE宏来定义所有UDF中的宏都使用DEFINE_开头。inlet_x_velocity将会在用户操作界面中选择定义。在DEFINE_PROFILE中,通过thread和nv分别对域和变量定义。宏begin_f_loop能循环指向线上所有的面fF_CENTROID宏表示单元x[]方向的向量F_PROFILE宏代表面f上的速度分量#include"udf.h“DEFINE_PROFILE(inlet_x_velocity,thread,nv){floatx[3];/*Positionvector*/floaty;face_tf;begin_
6、f_loop(f,thread){F_CENTROID(x,f,thread);y=x[1];F_PROFILE(f,thread,nv)=20.*(1.-y*y/(.0745*.0745));}end_f_loop(f,thread)}第三步--解释或编译UDF解释UDF把UDF源代码文件输入SourceFileName列表中。点击Interpret。FLUENT控制面板中将会显示汇编语言代码。编译UDF把UDF源代码文件输入SourceFiles列表中。点击Build,创建UDF库函数。点击Load,读取UDF库函数。如果需要还能清除(unload)库函数Defin
7、eUser-DefinedFunctionsInterpreted…DefineUser-DefinedFunctionsCompiled…DefineUser-DefinedFunctionsManage…比较解释和编译的UDF既可以运行时通过读入和解释来调用函数,也可以通过使用FLUENT中的编译器把函数编译到一个公共的函数库。比较解释和编译代码解释解释的程序只是保存在电脑内存中。按“一个接一个”的基本顺序运行代码。优势--不需要第三方编译器。劣势--运行慢,占内存。编译(详细内容请参阅FLUENT用户手册中的介绍)UDF代码被一次性
此文档下载收益归作者所有