- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
A Pera Global Company ? PERA China 概要 FLUENT UDF FLUENT 数据结构和宏 两个例子 UDF 简介 什么是UDF? UDF 是用户自己用C语言写的一个函数,可以和FLUENT动态链接 标准C 函数 三角函数,指数,控制块,Do循环,文件读入/输出等 预定义宏 允许获得流场变量,材料属性,单元几何信息及其他 为什么使用 UDFs? 标准的界面不能编程模拟所有需求: 定制边界条件,源项,反应速率,材料属性等 定制物理模型 用户提供的模型方程 调整函数 执行和需求函数 初始化 可以使用UDF的位置 User-Defined Properties User-Defined BCs User Defined INITIALIZE Segregated PBCS Exit Loop Repeat Check Convergence Update Properties Solve Turbulence Equation(s) Solve Species Solve Energy Initialize Begin Loop DBCS Solve Other Transport Equations as required Solver? Solve Mass Continuity; Update Velocity Solve U-Momentum Solve V-Momentum Solve W-Momentum Solve Mass Momentum Solve Mass, Momentum, Energy, Species User-defined ADJUST Source terms Source terms Source terms Source terms UDF 数据结构 (1) 在UDF中,体域和面域通过Thread数据类型获得 Thread 是 FLUENT 定义的数据类型 为了在thread (zone)中获得数据,我们需要提供正确的指针,并使用循环宏获得thread中的每个成员(cell or face) Fluid (cell thread or zone) Boundary (face thread or zone) Domain Cell Domain Cells Cell Thread face Thread Faces UDF 数据结构(2) cell_t 声明了识别单元的整型数据类型 face_t声明了识别面的整型数据类型 Type Variable Meaning of the declaration Domain *d; d is a pointer to domain thread Thread *t; t is a pointer to thread cell_t c; c is cell thread variable face_t f; f is a face thread variable Node *node; node is a pointer to a node. Boundary face-thread (boundary-face ensemble) Fluid cell-thread (control-volume ensemble) Internal face-thread (internal-face ensemble) associated with cell-threads Nodes UDF中的循环宏 几个经常用到的循环宏为: 对域d中所有单元thread循环:thread_loop_c(ct,d) { } 对域d中所有面thread循环:thread_loop_f(ft,d) { } 对thread t中所有单元循环:begin_c_loop(c, t) {…}end_c_loop (c,t) 对面thread中所有面循环begin_f_loop(f, f_thread){ … }end_f_loop(f, f_thread) d: a domain pointer ct, t: a cell thread pointer ft,f_thread: a face thread pointer c: a cell thread variable f: a face thread variable 例子 – 抛物线分布的速度入口 在二维弯管入口施加抛物线分布的速度 x 方向的速度定义为 需要通过宏获得入口的中心点, 通过另外一个宏赋予速度条件 第1步 – 准备源代码 DEFINE_P
文档评论(0)