FLUENT udf中文资料ch8
更新时间:2024-01-09 13:57:01 阅读量: 教育文库 文档下载
- fluent流体仿真软件推荐度:
- 相关推荐
第八章 在FLUENT中激活你的UDF
一旦你已经编译(并连接)了你的UDF,如第7章所述,你已经为在你的FLUENT模型中使用它做好了准备。根据你所使用的UDF,遵照以下各节中的指导。
? 8.1节 激活通用求解器UDF ? 8.2节 激活模型明确UDF ? 8.3节 激活多相UDF ? 8.4节 激活DPM UDF
8.1 激活通用求解器UDF
本节包括激活使用4.2节中宏的UDF的方法。 8.1.1 已计算值的调整
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了调整已计算值UDF,这一UDF在FLUENT中将成为可见的和可选择的。你将需要在User-Defined Function Hooks面板的Adjust Function下拉菜单(图8.1.1)中选择它。
调整函数(以DEFINE_ADJUST宏定义)在速度、压力及其它数量求解开始之前的一次迭代开始的时候调用。例如,它可以用于在一个区域内积分一个标量值,并根据这一结果调整边界条件。有关DEFINE_ADJUST宏的更多内容将4.2.1节。调整函数在什么地方适合求解器求解过程方面的信息见3.3节。 8.1.2 求解初始化
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了求解初始化UDF,这一UDF在FLUENT中将成为可见的和可选择的。你将需要在User-Defined Function Hooks面板的Initialization Function下拉菜单(图8.1.1)中选择它。
求解初始化UDF使用DEFINE_INIT宏定义。细节见4.2.2节。 8.1.3 用命令执行UDF
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了你的UDF,你可以在Execute UDF On Demand面板中选择它(图8.1.2),以在某个特定的时间执行这个UDF,而不是让FLUENT在整个计算中执行它。
点击Execute按纽让FLUENT立即执行它。
以命令执行的UDF用DEFINE_ON_COMMAND宏定义,更多细节见4.2.3节 8.1.4 从case和data文件中读出及写入
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了一个将定制片段从case 和data文件中读出或写入的UDF,这一UDF在FLUENT中将成为可见的和可选择的。你将需要在User-Defined Function Hooks面板(图8.1.1)中选择它。
读Case函数在你将一个case文件读入FLUENT时调用。它将指定从case文件读出的定制片段。
写Case函数在你从FLUENT写入一个 case文件时调用。它将指定写入case文件的定制片段。
读Data函数在你将一个data文件读入FLUENT时调用。它将指定从data文件读出的定制片段。
写Data函数在你从FLUENT写入一个 data文件时调用。它将指定写入data文件的定制片段。
上述4个函数用DEFINE_RW_FUCTION宏定义,见4.2.4节。 8.1.5 用户定义内存
你可以使用你的UDF将计算出的值存入内存,以便你以后能重新得到它,要么通过一个UDF或是在FLUENT中用于后处理。为了能访问这些内存,你需要指定在用户定义内存(User-Defined Memory)面板中指定用户定义内存单元数量(Number of User_Defined Memory Locations)(图8.1.3)。
宏C_UDMI或F_UDMI可以分别用于在你的UDF中访问一个单元或面中的用户定义内存位置。细节见5.2.4,5.3.2,6.7节。
已经存储在用户定义内存中的场值将在你下次写入一个时存入data文件。这些场同样也出现在FLUENT后处理面板中下拉列表的User Defined Memory…中。它们将被命名为udm-0,udm-1等,基于内存位置索引。内存位置的整个数量限制在500。
8.2 激活模型明确UDF
本节包括激活使用4.3节中宏的UDF的方法。 8.2.1 边界条件
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了求解边界条件UDF,这一UDF随之在FLUENT中将成为可见的和可选择的,你可以在适当的边界条件面板中选择它。例如,你的UDF定义了一个速度入口边界条件,然后你将在Veloctiy Inlet面板里适当的下拉列表中选择你的UDF名字(在你的C函数中已经定义,如inlet_x_velocity)。
如果你使用你的UDF指定一个单元区域中的一个固定值,你将需要打开Fixed Values选项,并在Fluid或Solid面板的适当下拉列表中选择你的UDF的名字。
边界条件UDF用DEFINE_PROFILE宏定义。细节见4.3.5节。 8.2.2 热流量
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了求解边界条件UDF,这一UDF随之在FLUENT中将成为可见的和可选择的,你将需要在User-Defined Function Hooks面板的Wall Heat Flux Function下拉列表(图8.1.1)中选择它。
热流量UDF用DEFINE_HEAT_FLUX宏定义。细节见4.3.3节。 8.2.3 Nox产生速率
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了Nox产生速率UDF,这一UDF随之在FLUENT中将成为可见的和可选择的,你将需要在NOx Model面板中 User_Defined Functions下的NOx Rate下拉列表中选择它,如下所示(图8.2.2)。
Nox产生速率UDF用DEFINE_NOX_RATE宏定义。细节见4.3.4节。 8.2.4 材料属性
一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了属性定义UDF,这一UDF随之在FLUENT中将成为可见的和可选择的,你将首先在Materials面板中 适当属性的下拉列表中选择user-defined(图8.2.3)。
然后你需要在User-Defined Functions面板中选择希望的UDF(如cell_viscosity)(图8.2.4)。
!如果你计划使用一个 UDF来定义密度,注意当密度变化增大时,求解收敛性将变得很差,指定一个可压缩定律(密度为压力的函数)或者多相行为(在空间变化的密度)可能会导致发散。建议你将UDF用于密度时限制在只有轻微密度变化的弱可压缩流动。
材料属性UDF用DEFINE_PROPERTY宏定义。细节见4.3.6节。对于用户定义标量或物质质量扩散率的UDF用DEFINE_DIFFUSIVITY宏定义。细节见4.3.2节。 8.2.5 预混燃烧源项
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的预混燃烧源项UDF,它将随之在FLUENT中是可见的和可选择的。你将需要在User-Defined Function Hooks面板中的Turbulent Premixed Source Function下拉列表中选择它。(图8.2.5)
湍流预混速度和源项UDF用DEFINE_TURB_PREMIX_SOURCE宏定义。更多细节见4.3.10。
8.2.6 反应速率
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的反应速率UDF,它将随之在FLUENT中是可见的和可选择的。你将需要在User-Defined Function Hooks面板中选择它。(图8.1.1)
你可以在Volume Reaction Rate Function或Surface Reaction Rate Function下拉列表中选择适当的UDF。
表面和容积反应速率UDF用DEFINE_SR_RATE和DEFINE_VR_RATE宏定义。更多细节见4.3.9节和4.3.14节。 8.2.7 源项
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的源项UDF,它将随之在FLUENT中是可见的和可选择的。
你将需要在Fluid或Solid面板中打开Source Terms选项,并在适当的下拉列表里选择你的UDF的名字(如cell_x_source)。(图8.2.6)
对于源项的UDF用DEFINE_SOURCE宏定义。更多细节见4.3.8节。
8.2.8 时间步进
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的用户时间步进UDF,它将随之在FLUENT中是可见的和可选择的。你将首先需要在Iterate面板中选择时间步进方法Time Stepping Method为Adaptive(图8.2.7)。
接着,在Adaptive Time Stepping下的User_Defined Time Step下拉列表中选择你的UDF的名字(如mydeltat)。
DEFINE_DELTAAT宏用于在时间依赖计算中自定义时间步长。细节见4.3.1节。 8.2.9 湍流粘性
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的湍流粘性UDF用于Spalart-Allmaras、k-e、k-w或LES湍流模型,它将随之在FLUENT中是可见的和可选择的。你将需要在Viscous Model面板中User-Defined Functions下的Turbulance Viscosity下拉列表中激活它(图8.2.8)。
对于湍流粘度的UDF用DEFINE_TURBULENT_VISCOSITY宏定义。更多细节见4.3.11节。
8.2.10 用户定义标量的通量
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的UDS通量UDF,它将随之在FLUENT中是可见的和可选择的。你将需要在User-Defined Scalars面板中激活它(图8.2.9)。
首先在User-Defined Scalars面板中指定Number of user-Defined Scales,并且在Flux Functions 下拉列表中选择适当的UDF。
用户定义标量通量UDF用DEFINE_UDS_FLUX宏定义。更多细节见4.3.12节。 8.2.11 用户定义非稳态标量项
一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的非稳态UDS项UDF,它将随之在FLUENT中是可见的和可选择的。你将需要在User-Defined Scalars面板中激活它(图8.2.9)。
首先指定Number of user-Defined Scales,然后在Unsteady Function 下拉列表中选择适当的UDF。注意只有已经在Slover面板中指定了非稳态计算后,这一列表才会出现。
用户定义标量非稳态项UDF用DEFINE_UDS_UNSTEATY宏定义。更多细节见4.3.12节。
8.3 激活多相UDF
本节包括激活使用4.4节中宏的UDF的方法。 8.3.1 气化速率
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的气化速率UDF,它将随之在FLUENT中成为可见的和可选择的。你将首先需要通过在Multiphase Model面板中选择Cavitation来使能相间质量输运。然后,在User-Defined Function Hooks面板中的Cavitation Mass Rate Function下拉列表中选择UDF的名字(图8.1.1)。
气化速率UDF以DEFINE_CAVITATION宏定义。更多细节见4.4.1节。 8.3.2 混合物模型的滑移速度
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的自定义滑移速度UDF,用于多相混合物模型,它将随之在FLUENT中成为可见的和可选择的。你将首先需要通过在Phase Interaction面板中Slip Velocity下的下拉列表里选择user-defined(图8.3.1)。
然后,在User-Defined Functions面板中选择希望的UDF(如slip_velocity)(图8.3.2)。
多相混合物模型的滑移速度UDF使用DEFINE_VECTOR_EXCHANGE_PROPERTY宏。更多细节见4.4.3节。 8.3.3 混合物模型的微粒直径
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的微粒或液滴直径UDF,用于多相混合物模型,它将随之在FLUENT中成为可见的和可选择的。你将首先需要通过在Secondary Phase面板中Diameter下拉列表里选择user-defined(图8.3.3)。然后,在User-Defined Function Hooks面板中的Cavitation Mass Rate Function下拉列表中选择UDF的名字(图8.1.1)。
然后,在User-Defined Functions面板中选择希望的UDF(如diameter)(图8.3.4)。
DEFINE_PROPERTY宏用于对微粒或液滴直径提供一种新定义。更多细节见4.3.6节。 8.3.4 欧拉模型的拖拉和提升系数
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的拖拉和提升系数UDF,用于欧拉多相模型,它将随之在FLUENT中成为可见的和可选择的。你将首先需要通过在Phase Interaction面板中Drag or Lift区域里的Drag Coefficient或Lift Coefficient下拉列表中选择user-defined(图8.3.5)。
然后,在User-Defined Functions面板中选择希望的UDF(图8.3.4)。
用于多相欧拉模型的拖拉和提升系数UDF用DEFINE_EXCHANGE_PROPERTY宏定义。更多细节见4.4.2节。
8.4 激活DPM UDF
本节包括激活中使用4.5节中宏的UDF的方法。 8.4.1 DPM体积力
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相体积力UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Discrete Phase Model面板中User-Defined Function下的Body Force下拉列表中选择UDF的名字(图8.4.1)。
用于DPM的体积力UDF以DEFINE_DPM_BODY_FORCE宏定义。更多细节见4.5.1节。
8.4.2 DPM的拖拉系数
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相拖拉系数UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Discrete Phase Model面板中Drag Parameters下的Drag Law下拉列表中选择UDF的名字(图8.4.1)。
DPM的拖拉系数UDF以DEFINE_DPM_BODY_DRAG宏定义。更多细节见4.5.2节。 8.4.3 DPM的腐蚀和增长速率
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相DPM的腐蚀和增长速率UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Discrete Phase Model 面板中User-Defined Function下的Erosion/Accretion下拉列表中选择UDF的名字(图8.4.1)。
DPM的腐蚀和增长速率UDF以DEFINE_DPM_EROSION宏定义。更多细节见4.5.3节。
8.4.3 DPM初始化
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相初始化UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Set Injection Properties面板中的UDF区域内,User-Defined Functions下的Initialization下拉列表中选择UDF的
名字(图8.4.2)
DPM的初始化UDF以DEFINE_DPM_INJECTION_INIT宏定义。更多细节见4.5.4节。 8.4.5 用户DPM定律
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相用户定律或转换UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Custom Laws面板中的适当下拉列表里选择UDF的名字(图8.4.3)。为打开Custom Laws面板,需要使能Set Injection Properties面板中Laws下的Custom选项。
在六种微粒定律左边的下拉列表里,你都可以针对用户定律选择适当的微粒定律UDF。第7个下拉列表标记为Switching,能用于改变使用的用户定律。你可以通过在这一下拉列表中选择一个UDF来定制FLUENT在定律之间转换的方式。
DPM的用户定律UDF用DEFINE_DPM_LAW宏定义。你可以使用DEFINE_DPM_SWITCH宏来修改定律之间转换的标准。更多细节见4.5.5节和4.5.10节。 8.4.5 DPM输出
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相输出UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Sample Trajectories面板中User-Defined Functions下的Output下拉列表中选择这一UDF的名字(图8.4.4)。
DPM的输出UDF用DEFINE_DPM_OUTPUT宏定义。更多细节见4.5.6节。 8.4.5 DPM材料属性
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相属性UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Materials面板中适当的属性的下拉列表中选择这一UDF的名字(图8.2.3)。
然后,在User-Defined Functions面板中选择希望的UDF。
DPM的属性UDF用DEFINE_DPM_PROPERTY宏定义。更多细节见4.5.7节。 8.4.8 DPM标量更新
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相标量更新UDF,它将随之在FLUENT中成为可见的和可选择的。你将需要在Discrete Phase Model面板中User-Defined Functions下的Scalar Update下拉列表中选择这一UDF的名字(图8.4.1)你还需要指定Number of Scalars。
DPM标量更新UDF用DEFINE_DPM_SCALAR_UPDATE宏定义。更多细节见4.5.8节。
8.4.8 DPM源项
一旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的离散相源项UDF,
它将随之在FLUENT中成为可见的和可选择的。
你将需要在Fluid面板中打开Source Terms选项,并在适当的下拉列表中选择这一UDF的名字(如cell_x_source)(图8.2.6)。
DPM的源项UDF用DEFINE_DPM_SOURCE宏定义。更多细节见4.5.9节。
正在阅读:
FLUENT udf中文资料ch801-09
基于物联网的智慧校园建设与发展研究06-02
机械制造技术基础课后答案 - 图文09-18
(采暖)分部分项工程量清单计价表08-28
第一节 公共关系调研08-18
同济大学朱慈勉 结构力学 第10章 结构动..习题答案04-30
08回风巷拆除皮带、溜子大件并装车01-25
2019年整理--基层党员个人年终总结09-20
管道水头损失计算04-01
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 中文
- FLUENT
- 资料
- udf
- ch8
- 寻梦 对话 生涯人物访谈报告(范例)
- 宜兴市公交线路走向及站点设置
- 《国际社会的主要成员》公开课教学设计
- 浅析高空抛物侵权责任
- 幼儿园区域性体育活动的有效开展研究报告
- 修订版,苏教版五年级下册科学教案(1)
- 一年级下语文教学设计(B)-识字4-苏教版 小学学科网
- 金隅水泥管理手册 - 图文
- 武术学院无纸化考试题(总)
- “十三五”重点项目-线肌电图仪项目可行性研究报告
- 天津职业技术师范大学考察3+4本科报告
- 课程设计范例
- 药剂学 复习 知识总结
- 《濒危野生动植物种国际贸易公约》(CITES)附录I、附录II和附录III
- 2013职称英语押题第1讲:词汇选项(一)
- 审计学知识点整理
- 关于征集教学“六技术”校本研修学习材料的通知(卢定军)
- 关于违反退耕还林政策处罚条例
- Java仿千千静听音乐播放器源代码
- 2018-2024年中国氨基酸市场调查与发展前景报告(目录) - 图文