在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → fluent udf中文帮助

fluent udf中文帮助

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.26M
  • 下载次数:39
  • 浏览次数:171
  • 发布时间:2020-11-04
  • 实例类别:一般编程问题
  • 发 布 人:robot666
  • 文件格式:.pdf
  • 所需积分:2
 

实例介绍

【实例简介】
fluent udf中文帮助本章简要地介绍了用户自定义函数(UDF)及其在 Fluent 中的用法。在 1.1 到 1.6 节中我 们会介绍一下什么是 UDF;如何使用 UDF,以及为什么要使用 UDF,
Makefile udf makefile udf2 DEF INE PROPERTY DEFINE DRIFT DI AM 基础 输运方程 单元()面,区域()和线( 操作 求解器数据 运仃 输运方程 求解器建立在有限容积法的基础上,这种方法将计算域离散为有限数目的控 制体或是单元。网格单元是 中基本的计算单元,这些单元的守恒特性必须保证。 也就是说普通输运方程,例如质量,动量,能量方程的积分形式可以应用到锊个单元: /pad+,p·dA=中 TODa+/,Sw A unsteady eonv画 ction diffusion generation 此处,是描述普通输运数量的变量( )根据所求解的输运 方程它可取不同的值。下面是在输运方程中可求解的的子集 E 守恒与否需要知道通过单元边界的通量。因此,需计算出单元和面上的属性值( 单元()面,区域()和线( 单元和单元面被组合为一些区域(),这些区域规定了计算域(例如,入口,出 口,壁面)的物理组成 )。当用户使用 的 时,用户 的 叮调用流体区域或是边界区域的计算变量( 需要获得适 当的变量,比如说是区域参考 )和单元,以便标定各个单元。 区域 )是一群单元或单元面的集合,它可以由模型和区域的物理特征(比如入 ∏,出∏,壁面,流伓区域)来标定。例如,·些被指定为面域( )的单元面可 以被指定为 类型,由此,速度也就可指定了。线( )是 据结构的内部名称,可被用来指定一个区域 结构可作为数据储存器米使用,这些 数据对于它所表示的单元和面来说是公用的( 操作 多数的任务需要在一个线的所有单元和面上重复执行。比如,定义一个自定义轮 廓函数( )则会对一个面线上 )的所有单元和面进 行循环。为了用户方使 向用户提供了一些循环宏工具( 来执行对单元,面,节点()和线()的重复操作例如,单元循环宏( )可以对给定单元线上的所有单元进行循环操作( )。而面循环宏( )则可调用所有给定 面线( )的面。 提供的循环工具请见 在某些情况下 需要对某个变量操作,而这个变量恰恰又不能直接被当作变量来 传递调用。比如,如果用户使用 宏来定义,求解器将不会向它传递 指针。这种情况下,用户函数需要用提供的宏来调用线指针( 见 求解器数据 通过 用户界面将函数(它已被编译和连接)连接到求解器上可实现调用求 解器变量。旦和求解器正确连接,无论何时,函数都可调用求解器数据。这些数据 将会被作为用户变量自动地传递给 注意,所有的求解器变量,不管是求解器传递给 的,还是传递给求解器的,都使用单位。 运行 将会在侦定时刻被 调用。但是,也可对它们进行异步执行,使用 宏,还可在需要时( )执行。详情请见 解释和编译的比较 编译和 的构建方式一样。脚木 被用来调用编译器来构建一 个当地目标代码库( )。目标代码库包含高级语言源代码的机器 语言翻译。代码库在 运行时由“动态加载”( )过程连接到 上。连接后,与共亨库的联系( )将会被保存 在用户的文件中这样,当 以后再读入文件时,此编译库将会与 自动连接。这些库是针对计算机的体系结构和·定版本的 使用的。所以,当 更新,或计算机操作系统改变,或是在不同类型的机器上运行时,这些库必须重 新构建 而解释 则是在运行吋,直接从语言源代码编译和装载( )。在 运行中,源代码被编译为中介的独立于物理 结构的使用预处理程序的机器代码( 被调用时,机器代码由內部仿真器( ),或注释器 )执行。注释器不具备标准编译器的所有功能;它不支持语言的某些原理 。所以,在使用 吋,有语言限制(见)。例如, 不能够通过废弃结构( )来获得 数据。要获得数据结 构,必须使用由 提供的预定义宏。另一个例子是 不能识别指 针数组。这些功能必须由 来执行。 编译后,用户的函数名称和内容将会被储存在文件中。函数将会在读入文 件时被自动编译。独立于物理结构的代码的外层( )叮能会导致执行错误( ),但却可使共亨不同的物理结构, 操作系统,和 版本。如果运行速度较慢,不用被调节就可以编译代码的形式( 运行 中的 和 请见 选择 或是 时,注意以下内容: 对其它平台是便捷的( 可作为( )来运行 不需编译器。 慢 需要较多的代码。 在使用语言上有限制。 不能与编译系统或用户库( )连接。 只能使用预定义宏来获得 结构中的数据。(见 和) 比 运行快 在使用语言上不存在限制 可用任何 编译器编译。 能调用以其他语言编写的函数 机器物理结构需要用户建立 的每个版本的共享库( 如果包含有注释器( )不能处理得语言元素,则不能作为 )运行 总的来说,当决定使用那种类型的时 使用 作为简单的函数 使用 作为复杂的函数,这些函数 对有较大要求(例如每次运行时,在每个单元上均须调用的属性 需要使用编译库 一个 例子 编辑代码,并且在用户的 模型中有效使用它,须遵循以卜七个基木步骤 定义用户模型。 编制语言源代码。 运行 读入,并设置文件。 编译或注释( )语言源代码。 在 中激活 开始计算。 分析计算结果,并与期望值比较。 在开始解决问题前,用户必须使用定义希望解决的问题()。例如,加入 用户希望使用来定义一个用户化的边界条件( )。用户 首先需要定义一系列数学方程来描述这个条件。 接下来用户需要将这些数学方程(概念设计 )用语言写成一个函 数 )。用户可用文本编辑器米完成这一步。以为后缀名米把这个文件保存在工作 路径下。 写完语言函数后,用户即可运行 并且读入或设置文件( )。对 C语言源代码进行注释,编译,和调试 ),并在 中 激活用户函数()。最后,运行计算(),分析结果并与期望值比较。( )。根据用户对结果的分析,可将上述整个过程重复几次。具体如下。 定义用户模型 生成和使用的第一步是定义用户的模型方程。 如图 所示的涡轮叶片。模拟叶片冑围的流玚使用了非结构化网格。计算域由底 端的周期性边界( )延伸到顶端的相同部分( ),速度入口在左边,压力出口在右边。 Irvine ua〔15512405危e893nde5) 文中对入口速度为常数分布和抛物线分布的流场进行了比较。分段线性的分布可由边 界场选项得到( ),而多项式分布则只能使用用户自定义函数得到。 进口速度为常数()的结果如图1.7.2和1.7.3所示。当流动沿着涡轮叶片 进行时,初始速度场被改变了。 了4101 2651 05 tces. 89 E.11电+01 Turbine vane〔1551cl,2405他e,的93nde引 假定现在要设涡轮叶片入∏速度不是常数值,其分布如下 2 un=20-20 00745 士 变量在入口中心处为0.0,在入口上部和下部则分别为 而入口中心处的 速度为 边界上为0。 用户可用描述这一分布,并将它应运到 模型中来解决这类问题。 编制语言源代码。 选定方程定义后,用户可用任意文本编辑器来书写C语言代码。以扩展名保存 源代码文件保存到工作路径下。关于的书写请参考 下面是一个怎样在 中应用方程的例子。 的功能由主要的 宏( )米定义。此处, 宏用来表示下面的代码旨在给 求解器捉供边界的轮廓信息。书中将在以后部分讨论其它的 宏 宏的第一个变量 用来定义速度入口面板中的函数。名称 可任意指定。在给定的边界区域上的所有单元面( )上将会使 用函数的这个方程。当用户在 用户界面选定作为边界条件时,将会自动定 义线()。下标由 应用程序自动定义。 中 被用来形 成对边界区域上所有单元面的循环( )。对于每 个面,面的质心( )的坐标可由 宏来获得。抛物线方程中用 到了坐标,速度值通过 宏来返回给面。 宏和 宏都是 提供的宏。详情请见 5 读入,并设置文件 建立后,用户开始设置 在工作路径下启动 读入(或设置)文件(如果文件以前设置过,请确认它是否被保存在了工作路 径 编详或注释( )语言源代码 这部分将例中的源代码作为 来编译。注意,这个例子不可应用于 的并行网络( )。完整的编译和连接请见 确认的文件(如果以前设置过)和语言源代码在工作路径卜。 用 面板编译例如, ud fexamp le Interpreted UDFS Source file rlame ample+C CPP Command name Stack size H Display Assembly Listing H Use Contributed CPP Compile cosp Help 在 下键入语言源代码文件例如, udfexample.c。 如果用户源代码不在目前工作路径下,则在编译 ,需在 面板中间如文件完整的路径。 在 栏里,选择预处理器。 省设置为 如果用户函数的局部变量数目大于 将会 导致堆栈溢出。这种情況下,应将 设置为比局部变量大的数 【实例截图】
【核心代码】

标签:

实例下载地址

fluent udf中文帮助

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警