《fluent UDF第八章 在FLUENT中激活你的UDF.docx》由会员分享,可在线阅读,更多相关《fluent UDF第八章 在FLUENT中激活你的UDF.docx(11页珍藏版)》请在三一办公上搜索。
1、第八章 在FLUENT中激活你的UDF一旦你已经编译(并连接)了你的UDF,如第7章所述 根据你所使用的UDF,遵照以下各节中的指导。你已经为在你的FLUENT模型中使用它做好了准备。8.1节激活通用求解器UDF8.2节激活模型明确UDF8.3节激活多相UDF8.4节激活DPM UDFUser- Defined Function Hooks0KCancelHelp8.1激活通用求解器UDF本节包括激活使用4.2节中宏的UDF的方法。8.1.1已计算值的调整一旦你已经使用7.2节和7.3节中概括的方法之一编 译(并连接)了调整已计算值 UDF,这一 UDF在 FLUENT 中将成为可见的和可选择
2、的。你将需要在 User-Defined Function Hooks 面板的 Adjust Function 下拉菜单(图8.1.1)中选择它。DefineUser-Defined |Function Hooks.调整函数(以DEFINE_ADJUST宏定义)在速度、 压力及其它数量求解开始之前的一次迭代开始的时候调 用。例如,它可以用于在一个区域内积分一个标量值,并根 据这一结果调整边界条件。有关DEFINE_ADJUST宏的更 多内容将4.2.1节。调整函数在什么地方适合求解器求解过 程方面的信息见3.3节。8.1.2求解初始化一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接
3、)了求解初始化UDF,这一 UDF在FLUENT中将 成为可见的和可选择的。你将需要在User-Defined FunctionFi.却 ie X. I. I: I ic User-Def in ed Function Hooks IExecute On DemandExecuteCloseHelpFunction updateFiMiiu! & 1.2: r lb Execute On DemandHooks面板的Initialization Function下拉菜单(图8.1.1)中选择它。求解初始化UDF使用DEFINE_INIT宏定义。细节见4.2.2节。8.1.3用命令执行UDF一旦
4、你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了你的UDF,你可以在Execute UDF On Demand 面板中选择它(图8.1.2),以在某个特定的时间执行这个UDF,而不是让FLUENT在整个计算中执行它。Define User-Defined Execute On Demand.点击Execute按纽让FLUENT立即执行它。以命令执行的UDF用DEFINE_ON_COMMAND宏定义,更多细节见4.2.3节8.1.4从case和data文件中读出及写入一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了一个将定制片段从case和data文件中 读出或写入的
5、UDF,这一 UDF在FLUENT中将成为可见的和可选择的。你将需要在User-Defined Function Hooks 面板(图8.1.1)中选择它。Define User-Defined Function Hooks读Case函数在你将一个case文件读入FLUENT时调用。它将指定从case文件读出的定制片段。 写Case函数在你从FLUENT写入一个case文件时调用。它将指定写入case文件的定制片段。 读Data函数在你将一个data文件读入FLUENT时调用。它将指定从data文件读出的定制片段。 写Data函数在你从FLUENT写入一个data文件时调用。它将指定写入dat
6、a文件的定制片段。上述4个函数用DEFINE_RW_FUCTION宏定义,见4.2.4节。8.1.5用户定义内存你可以使用你的UDF将计算出的值存入 内存,以便你以后能重新得到它,要么通过一 个UDF或是在FLUENT中用于后处理。为了 能访问这些内存,你需要指定在用户定义内存(User-Defined Memory)面板中指定用户定 义内存单元数量(Number of User_DefinedMemory Locations)(图 8.1.3)。| Define | Us/r-Defiriwd Memory.宏C_UDMI或F_UDMI可以分别用于在你的UDF中访问一个单元或面中的用户定义内
7、存位置。细节见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边界条件Zone Namevelocity-iniet-11Velocity InletVelocity SpeciFication Method ComponentsReference Frame Absolut
8、eX-Velocity (m/s) oV-Velocity oOutflovj Gauge Pressure (pascal) 90000?igure 8.2.1: Tin? Velocity Inlet niel一旦你已经使用7.2节和7.3节中概括的方法之一编译(并连接)了求解边界条件UDF,这一 UDF随之在 FLUENT中将成为可见的和可选择的,你可以在适当的边界条件面板中选择它。例如,你的UDF定义了一个速然后你需要在 User-DefinedFunctions 面板中选择希望的 UDF(如 cell_viscosity)(图 8.2.4)。度入口边界条件,然后你将在Veloctiy
9、 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 Hea
10、t Flux Function 下拉列表(图8.1.1)中选择它。|Funct i o n Hooks.热流量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)。| D-fini | Mod永 | PolluMnRNOx.Nox产生速率UDF用DEFINE_NOX_R
11、ATE宏定义。细节见4.3.4节。8.2.4材料属性一旦你已经使用7.2节和7.3节中概括 的方法之一编译(并连接)了属性定义 UDF,这一 UDF随之在FLUENT中将 成为可见的和可选择的,你将首先在 Materials面板中适当属性的下拉列表 中选择 user-defined (图 8.2.3)。User-Defined Function Hooks!如果你计划使用一个UDF来定义密度,注意当密 度变化增大时,求解收敛性将变得很差,指定一个可压 缩定律(密度为压力的函数)或者多相行为(在空间变 化的密度)可能会导致发散。建议你将UDF用于密度 时限制在只有轻微密度变化的弱可压缩流动。材料
12、属性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)| D#in | Us日r-D日fined Function HoolIni
13、tialization FunctionAdjust FunctionI Turbulent Premixed Source FunctionRead Case FunctionWrite Case FunctionRead Data FunctionWrite Data Function祀 The User-Defined Function Hooks I湍流预混速度和源项UDF用DEFINE_TURB_PREMIX_SOURCE宏定义。更多细节见4.3.10。8.2.6反应速率一旦你采用7.2节和7.3节中概括的方法之一编译(并连接)了你的反应速率UDF,它将随之在FLUENT中是可见的和
14、可选择的。你将需要在User-Defined Function Hooks面板中选择它。(图8.1.1)Define -User-Defined Function Hooks你可以在 Volume Reaction Rate Function 或 Surface Reaction Rate Function下拉列表中选择适当的 UDFo表面和容积反应速率UDF用 DEFINE_SR_RATE和DEFINE_VR_RATE宏定义。更多 细节见4.3.9节和4.3.14节。8.2.7源项一旦你采用7.2节和7.3节中概 括的方法之一编译(并连接)了你 的源项UDF,它将随之在FLUENT 中是可见
15、的和可选择的。你将需要在Fluid或Solid面板 中打开Source Terms选项,并在适 当的下拉列表里选择你的UDF的名 字(如 cell_x_source)。(图 8.2.6)对于源项的 UDF 用 DEFINE_SOURCE宏定义。更多细 节见4.3.8节。Zone NameFluid-eMaterial Name liquidSource Term?HuidIIconstantudr cell x sourceconstantFixed ValuesIT- -TITIrlPvrvu? ZoneFire 8.2.6: TX Fluid 侦i】MIterateTimeAdaptive
16、 Time SteppingFigure 8:2.7. The Iterate IuielViscous ModelModelModel ConstantsFime 828: The Viscous Model Pane-18.2.8时间步进一旦你采用7.2节和 7.3节中概括的方法之 一编译(并连接)了你 的用户时间步进UDF, 它将随之在FLUENT 中是可见的和可选择 的。你将首先需要在 Iterate面板中选择时间 步进方法 Time Stepping Method 为 Adaptive (图 8.2.7)。| S口屁 |Iterate.接着,在 Adaptive Time Stepp
17、ing 下的 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
18、.8)。| 喝睥 | Modsk|Viscous.对于湍流粘度的UDF用 DEFINE_TURBULENT_VISCOSI TY宏定义。更多细节见4.3.11节。 8.2.10用户定义标量的通量一旦你采用7.2节和7.3节中概 括的方法之一编译(并连接)了你 的UDS通量 UDF,它将随之在 FLUENT中是可见的和可选择的。 你将需要在 User-Defined Scalars 面 板中激活它(图8.2.9)。Define User-Defined Scalars.首先在 User-Defined Scalars 面板中指定 Number of user-Defined Scales,并且在
19、 Flux Functions 下拉列表中选择适当的UDFo用户定义标量通量UDF用DEFINE_UDS_FLUX宏定义。更多细节见4.3.12节。8.2.11用户定义非稳态标量项一旦你采用7.2节和7.3节中概括的方法之一编译(并连接) 了你的非稳态UDS项UDF,它将随之在FLUENT中是可见的和 可选择的。你将需要在User-Defined Scalars面板中激活它(图 8.2.9)oDifine ULer-Defined Sea lars.首先指定 Number of user-Defined Scales,然后在 Unsteady Function下拉列表中选择适当的UDF。注意只
20、有已经在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
21、Function 下拉列表中选择 UDF 的名字(图 8.1.1)。SfinE -i- User-Defined | -kFunction Hooks.8.3.2混合物模型的滑移速度一旦你已经运用7.2节和7.3 节中概括的方法之一编译(并连 接)了你的自定义滑移速度 UDF,用于多相混合物模型,它 将随之在FLUENT中成为可见 的和可选择的。你将首先需要通 过在 Phase Interaction 面板中 Slip Velocity下的下拉列表里选 择 user-defined(图 8.3.1)。Wine Phases.ph as ?UMT-dcnncdrj miu&er_derineci
22、才|3*-七uxr-dcnnHiuser-defLnedPhase toileracllariSlip Valtcitv然后,在 User-Defined Functions面板中 选择希望 的 UDF (如 slip_velocity )(图 8.3.2)。OK.一一HeltFigure 8.3.1: The Phase Interaction Panel气化速率UDF以DEFINE_CAVITATION宏定义。更多细节见4.4.1节。多相混合物模型的滑移速度UDF使用DEFINE_VECTOR_EXCHANGE_PROPERTY宏。更多细节见4.4.3 节。8.3.3混合物模型的微粒直径一
23、旦你已经运用7.2节和7.3节中概括的方法之一编译(并连接)了你的微粒或液滴直径UDF,用于多相混 合物模型,它将随之在FLUENT中成为可见的和可选择的。你将首先需要通过在Secondary Phase面板中Diameter然后,在 User-Defined Functions面板中选择希望的 UDF (如 diameter)(图 8.3.4)。DEFINE_PROPERTY宏用于对微粒 或液滴直径提供一种新定义。更多细节见 4.3.6 节。8.3.4欧拉模型的拖拉和提升系数一旦你已经运用7.2节和7.3节中概括 的方法之一编译(并连接)了你的拖拉和 提升系数UDF,用于欧拉多相模型,它将
24、随之在FLUENT中成为可见的和可选择 的。你将首先需要通过在Phase Interaction面板中Drag or Lift区域里的 Drag Coefficient 或 Lift Coefficient 下拉列 表中选择 user-defined(图 8.3.5)。Wine Phases.然后,在 User-Defined Functions 面板中选择希望的UDF(图8.3.4)。Figure? 8.3.5: The Phase Interaction FanEPhase kiteracuoniMcr-delincdt| Edit.J VirtwnJ MaimDrag LiH 俯*:泌s
25、Drag Co?rfKientOK1用于多相欧拉模型的拖拉和提升系数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)。| D#iriE | 机血k |Discr
26、ete Phase.用于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)。| Define| Modek |Discrete Phase.DPM的拖拉系数UDF以 DEFINE_DPM_BODY_DRAG 宏定 义。更多
27、细节见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)。| D-fme | Mods | Di$DPM的腐蚀和增长速率UDF以 DEFINE_DPM_EROSION 宏定义。 更多细节见4.5.3节。8.4.3 DPM初始化Discrete Phase
28、 ModelInterajctianTracking PeurameteirsBodv Farcebod_Fon:eSourcenoneErosionyAccretionnoneScalar UpdatenoneNumber or ScalarsUser-Defined FunctionsParaJIelFigi 8. L1: The Discrete Phase Model Panel一旦你已经运用7.2节和7.3节中 概括的方法之一编译(并连接)了你 的离散相初始化UDF,它将随之在 FLUENT中成为可见的和可选择的。 你将需要在 Set Injection Properties 面板中
29、的UDF区域内,User-Defined Functions 下的 Initialization 下拉列表 中选择UDF的名字(图8.4.2)Define-Injections.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 I
30、njection Properties 面板中 Laws 下的 Custom 选项。DefineInjections.在六种微粒定律左边 的下拉列表里,你都可以 针对用户定律选择适当的 微粒定律UDF。第7个下 拉列表标记为Switching, 能用于改变使用的用户定 律。你可以通过在这一下 拉列表中选择一个UDF 来定制FLUENT在定律之 间转换的方式。DPM的用户定律UDF 用 DEFINE_DPM_LAW 宏定义。你可以使用 DEFINE_DPM_SWITC H宏来修改定律之间转换 的标准。更多细节见4.5.5 节和4.5.10节。8.4.5 DPM 输出一旦你已经运用 7.2 节和7
31、.3节中概括的方法 之一编译(并连接)了你 的离散相输出UDF,它将 随之在FLUENT中成为可 见的和可选择的。你将需 要在 Sample Trajectories 面板中 User-Defined Functions 下的 Output 下 拉列表中选择这一 UDF 的名字(图8.4.4)。Report DiscreteSampleDPM的输出UDF用DEFINE_DPM_OUTPUT宏定义。更 多细节见4.5.6节。8.4.5 DPM材料属性一旦你已经运用7.2节和7.3节中概括的方法之一编译(并 连接)了你的离散相属性UDF,它将随之在FLUENT中成为可 见的和可选择的。你将需要在M
32、aterials面板中适当的属性的下 拉列表中选择这一 UDF的名字(图8.2.3)。Dsf 睥Materials.然后,在User-Defined Functions面板中选择希望的UDF。DPM 的属性 UDF 用 DEFINE_DPM_PROPERTY宏定义。 更多细节见4.5.7节。8.4.8 DPM标量更新一旦你已经运用7.2节和7.3节中概括的方法之一编译(并 连接)了你的离散相标量更新UDF,它将随之在FLUENT中成Qistom LawsFirst LawSecond LawThird LauFourth LaviFiHh LawSixth LawSviitchingjnc &
33、 I3: The Custom Laws l;iiiSample TrajectoriesBoundariesAppend Filesair-inlet axis-5 fuel-inlet int&rior-4 nozzle outer-v/aJI pressure-outlet-9为可见的和可选择的。你将需要在Discrete Phase Model面板中User-Defined Functions下的Scalar Update下拉 列表中选择这一 UDF的名字(图8.4.1)你还需要指定Number of Scalars。| D,fin寻 |Discrete Phase.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节。8.1.: The Sample Tr-ajectories ;iiil
链接地址:https://www.31ppt.com/p-4884578.html