Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf

Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf

ID:50166147

大小:410.82 KB

页数:18页

时间:2020-03-04

Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第1页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第2页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第3页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第4页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第5页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第6页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第7页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第8页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第9页
Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf_第10页
资源描述:

《Fluent 用户自定义函数UDF技巧,并行计算,UDFs处理.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、FluentUDFs本章包含了FLUENT中如何写UDFs的概述。3.1概述3.2写解释式UDFs的限制3.3FLUENT中UDFs求解过程的顺序3.4FLUENT网格拓扑3.5FLUENT数据类型3.6使用DEFINEMacros定义你的UDF3.7在你的UDF源文件中包含udf.h文件3.8定义你的函数中的变量3.9函数体3.10UDF任务3.11为多相流应用写UDFs3.12在并行中使用你的UDF3.1概述(Introduction)在你开始编写将挂到FLUENT代码以增强其标准特征的UDF之前,你

2、必须知道几个基本的要求。首先,UDFs必须用C语言编写。它们必须使用FLUENT提供的DEFINEmacros来定义。UDFs必须含有包含于源代码开始指示的udf.h文件;它允许为DEFINEmacros和包含在编译过程的其它FLUENT提供的函数定义。UDFs只使用预先确定的宏和函数从FLUENT求解器访问数据。通过UDF传递到求解器的任何值或从求解器返回到UDF的,都指定为国际(SI)单位。总之,当写UDF时,你必须记住下面的FLUENT要求。UDFs:1.采用C语言编写。2.必须为udf.h文件有一

3、个包含声明。3.使用Fluent.Inc提供的DEFINEmacros来定义。4.使用Fluent.Inc提供的预定义宏和函数来访问FLUENT求解器数据。5.必须使返回到FLUENT求解器的所有值指定为国际单位。3.2写解释式UDFs的限制(RestrictiononWritingInterpretedUDFs)无论UDFs在FLUENT中以解释还是编译方式执行,用户定义C函数(说明在Section3.1中)的基本要求是相同的,但还是有一些影响解释式UDFs的重大编程限制。FLUENT解释程序不支持所有

4、的C语言编程原理。解释式UDFs不能包含以下C语言编程原理的任何一个:1.goto语句。2.非ANSI-C原型语法3.直接的数据结构查询(directdatastructurereferences)4.局部结构的声明5.联合(unions)6.指向函数的指针(pointerstofunctions)7.函数数组。在访问FLUENT求解器数据的方式上解释式UDFs也有限制。解释式UDFs不能直接访问存储在FLUENT结构中的数据。它们只能通过使用Fluent提供的宏间接地访问这些数据。另一方面,编译式UDF

5、s没有任何C编程语言或其它注意的求解器数据结构的限制。3.3FLUENT求解过程中UDFs的先后顺序(SequencingofUDFsintheFLUENTSolutionProcess)当你开始写UDF代码的过程时(依赖于你写的UDF的类型),理解FLUENT求解过程中UDFs调用的内容或许是重要的。求解器中包含连接你写的用户定义函数的call-outs。知道FLUENT求解过程中迭代之内函数调用的先后顺序能帮助你在给定的任意时间内确定那些数据是当前的和有效的。分离式求解器在分离式求解器求解过程中(Fi

6、gure3.3.1),用户定义的初始化函数(使用DEFINE_INIT定义的)在迭代循环开始之前执行。然后迭代循环开始执行用户定义的调整函数(使用DEFINE_ADJUST定义的)。接着,求解守恒方程,顺序是从动量方程和后来的压力修正方程到与特定计算相关的附加标量方程。守恒方程之后,属性被更新(包含用户定义属性)。这样,如果你的模型涉及到气体定律,这时,密度将随更新的温度(和压力and/or物质质量分数)而被更新。进行收敛或者附加要求的迭代的检查,循环或者继续或停止。Figure3.3.1:Solutio

7、nProcedurefortheSegregatedSolver耦合求解器在耦合求解器求解过程中(Figure3.3.2),用户定义的初始化函数(使用DEFINE_INIT定义的)在迭代循环开始之前执行。然后,迭代循环开始执行用户定义的调整函数(使用DEFINE_ADJUST定义的)。接着,FLUENT求解连续、动量和(适合的地方)能量的控制方程和同时地一套物质输运或矢量方程。其余的求解步骤与分离式求解器相同(Figure3.3.1)。Figure3.3.2:SolutionProcedureforthe

8、CoupledSolver3.4FLUENT网格拓扑在我们开始讨论FLUENT特殊的数据类型之前,你必须理解网格拓扑学的术语因为FLUENT数据类型是为这些实体定义的。下面是显示在Figure3.4.1中的网格实体的定义。单元(cell)区域被分割成的控制容积单元中心(cellcenter)FLUENT中场数据存储的地方面(face)单元(2Dor3D)的边界边(edge)面(3D)的边界节点(node)网格点单元线索(cel

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。