fluent学习经验总汇

合集下载

(完整版)学习fluent(流体常识及软件计算参数设置)

(完整版)学习fluent(流体常识及软件计算参数设置)

luent中一些问题----(目录)1 如何入门2 CFD计算中涉及到的流体及流动的基本概念和术语2.1 理想流体(Ideal Fluid)和粘性流体(Viscous Fluid)2.2 牛顿流体(Newtonian Fluid)和非牛顿流体(non-Newtonian Fluid)2.3 可压缩流体(Compressible Fluid)和不可压缩流体(Incompressible Fluid)2.4 层流(Laminar Flow)和湍流(Turbulent Flow)2.5 定常流动(Steady Flow)和非定常流动(Unsteady Flow)2.6 亚音速流动(Subsonic)与超音速流动(Supersonic)2.7 热传导(Heat Transfer)及扩散(Diffusion)3 在数值模拟过程中,离散化的目的是什么?如何对计算区域进行离散化?离散化时通常使用哪些网格?如何对控制方程进行离散?离散化常用的方法有哪些?它们有什么不同?3.1 离散化的目的3.2 计算区域的离散及通常使用的网格3.3 控制方程的离散及其方法3.4 各种离散化方法的区别4 常见离散格式的性能的对比(稳定性、精度和经济性)5 流场数值计算的目的是什么?主要方法有哪些?其基本思路是什么?各自的适用范围是什么?6 可压缩流动和不可压缩流动,在数值解法上各有何特点?为何不可压缩流动在求解时反而比可压缩流动有更多的困难?6.1 可压缩Euler及Navier-Stokes方程数值解6.2 不可压缩Navier-Stokes方程求解7 什么叫边界条件?有何物理意义?它与初始条件有什么关系?8 在数值计算中,偏微分方程的双曲型方程、椭圆型方程、抛物型方程有什么区别?9 在网格生成技术中,什么叫贴体坐标系?什么叫网格独立解?10 在GAMBIT中显示的“check”主要通过哪几种来判断其网格的质量?及其在做网格时大致注意到哪些细节?11 在两个面的交界线上如果出现网格间距不同的情况时,即两块网格不连续时,怎么样克服这种情况呢?12 在设置GAMBIT边界层类型时需要注意的几个问题:a、没有定义的边界线如何处理?b、计算域内的内部边界如何处理(2D)?13 为何在划分网格后,还要指定边界类型和区域类型?常用的边界类型和区域类型有哪些?14 20 何为流体区域(fluid zone)和固体区域(solid zone)?为什么要使用区域的概念?FLUENT是怎样使用区域的?15 21 如何监视FLUENT的计算结果?如何判断计算是否收敛?在FLUENT中收敛准则是如何定义的?分析计算收敛性的各控制参数,并说明如何选择和设置这些参数?解决不收敛问题通常的几个解决方法是什么?16 22 什么叫松弛因子?松弛因子对计算结果有什么样的影响?它对计算的收敛情况又有什么样的影响?17 23 在FLUENT运行过程中,经常会出现“turbulence viscous rate”超过了极限值,此时如何解决?而这里的极限值指的是什么值?修正后它对计算结果有何影响18 24 在FLUENT运行计算时,为什么有时候总是出现“reversed flow”?其具体意义是什么?有没有办法避免?如果一直这样显示,它对最终的计算结果有什么样的影响26 什么叫问题的初始化?在FLUENT中初始化的方法对计算结果有什么样的影响?初始化中的“patch”怎么理解?27 什么叫PDF方法?FLUENT中模拟煤粉燃烧的方法有哪些?30 FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响?31数值模拟过程中,什么情况下出现伪扩散的情况?以及对于伪扩散在数值模拟过程中如何避免?32 FLUENT轮廓(contour)显示过程中,有时候标准轮廓线显示通常不能精确地显示其细节,特别是对于封闭的3D物体(如柱体),其原因是什么?如何解决?33 如果采用非稳态计算完毕后,如何才能更形象地显示出动态的效果图?34 在FLUENT的学习过程中,通常会涉及几个压力的概念,比如压力是相对值还是绝对值?参考压力有何作用?如何设置和利用它?35 在FLUENT结果的后处理过程中,如何将美观漂亮的定性分析的效果图和定量分析示意图插入到论文中来说明问题?36 在DPM模型中,粒子轨迹能表示粒子在计算域内的行程,如何显示单一粒径粒子的轨道(如20微米的粒子)?37 在FLUENT定义速度入口时,速度入口的适用范围是什么?湍流参数的定义方法有哪些?各自有什么不同?38 在计算完成后,如何显示某一断面上的温度值?如何得到速度矢量图?如何得到流线?39 分离式求解器和耦合式求解器的适用场合是什么?分析两种求解器在计算效率与精度方面的区别43 FLUENT中常用的文件格式类型:dbs,msh,cas,dat,trn,jou,profile等有什么用处?44 在计算区域内的某一个面(2D)或一个体(3D)内定义体积热源或组分质量源。

总结的一些好的fluent

总结的一些好的fluent

总结的一些好的fluentFLUENT 软件的应用过程1).构造计算域,创建网格2).运行合适的解算器:2D、3D、2DDP、3DDP3).输入网格4).检查网格5).选择解算器的格式6).选择需要解的基本方程:层流还是湍流(无粘)、化学组分还是化学反应、热传导模型等7).确定所需要的附加模型:风扇,热交换,多孔介质等8).指定材料物理性质9).指定边界条件10).调节解的控制参数11).初始化流场12).开始计算13).检查结果14).保存结果15).必要的话,细化网格,改变数值和物理模型1.FLUENT 计算开始迭代最好使用较小的库朗数,否则容易导致迭代发散?修改办法slove-controls-solution,修改courant Number默认值为1,开始没有经验的改小点,比如0.01,然后逐渐加大,经验丰富的同仁自己决定2.FLUENT 计算后显示的图形如何编辑和保存用右键点击显示的图形的边框,点击copy to clipboard,然后就可以粘贴到别的地方去了。

直接这样的话是黑色背景的图片,要是想要白的色背景的图片,先点击Page Setup 在弹出的对话框中选中Reverse Foreground Orientation,然后再copy to clipboard 就可了。

在Page Setup 对话框里还有其他选项可以设置,大家可以试一试。

3.什么是松弛因子由于流体力学中要求解非线性的方程,在求解过程中,控制变量的变化是很必要的,这就通过松弛因子来实现的.它控制变量在每次迭代中的变化.也就是说,变量的新值为原值加上变化量乘以松弛因子.如: A1=A0+B*DETAA1 新值A0 原值 B 松弛因子DETA 变化量松弛因子可控制收敛的速度和改善收敛的状况!为1,相当于不用松弛因子大于1,为超松弛因子,加快收敛速度小于1,欠松弛因子,改善收敛的条件一般来讲,大家都是在收敛不好的时候,采用一个较小的欠松弛因子。

学习fluent(流体常识及软件计算参数设置)

学习fluent(流体常识及软件计算参数设置)

学习fluent(流体常识及软件计算参数设置)luent中一些问题----(目录)2.1 理想流体(Id1如何入门?2 CFD计算中涉及到的流体及流动的基本概念和术语?ealFluid)和粘性流体(Viscous Fluid)2.2 牛顿流体(Newtonian Fluid)和非牛顿流体(non-Newtonian Fluid)2.3 可压缩流体(Compressible Fluid)和不可压缩流体(Incompressible Fluid) ? 2.4 层流(Laminar Flow)和湍流(Turbulent Flow) ?2.5定常流动2.6亚音速流动(Subsonic)(Steady Flow)和非定常流动(Unsteady Flow)?与超音速流动(Supersonic)2.7 热传导(Heat Transfer)及扩散(Diffusion)?3在数值模拟过程中,离散化的目的是什么?如何对计算区域进行离散化?离散化时通常使用哪些网格?如何对控制方程进行离散?离散化常用的方法有哪些?它们有什么不同??3.1离散化的目的3.3控制方程的离散及其方法3.2计算区域的离散及通常使用的网格?3.4各种离散化方法的区别4常见离散格式的性能的对比(稳定性、精度和经济性)5流场数值计算的目的是什么?主要方法有哪些?其基本思路是什么?各自的适用范围是什么?6可压缩流动和不可压缩流动,在数值解法上各有何特点?为何不可压缩流动在求解时反而比可压缩流动有更多的困难?6.2不可压缩Navier-Stokes6.1 可压缩Euler及Navier-Stokes方程数值解?方程求解?7什么叫边界条件?有何物理意义?它与初始条件有什么关系?8在数值计算中,偏微分方程的双曲型方程、椭圆型方程、抛物型方程有什么区别?10在GAMBIT中显示9在网格生成技术中,什么叫贴体坐标系?什么叫网格独立解??的“check”主要通过哪几种来判断其网格的质量?及其在做网格时大致注意到哪些细节? ?11 在两个面的交界线上如果出现网格间距不同的情况时,即两块网格不连续时,怎么样克服这种情况呢?12 在设置GAMBIT边界层类型时需要注意的几个问题:a、没有定义的边界线如何处理?b、13为何在划分网格后,还要指定边界类型和区域类计算域内的内部边界如何处理(2D)??型?常用的边界类型和区域类型有哪些??1420 何为流体区域(fluid zone)和固体区域(solid zone)?为什么要使用区域的概念?FLUENT是怎样使用区域的? ?1521 如何监视FLUENT 的计算结果?如何判断计算是否收敛?在FLUENT中收敛准则是如何定义的?分析计算收敛性的各控制参数,并说明如何选择和设置这些参数?解决不收1622什么叫松弛因子?松弛因子对计算结果有什敛问题通常的几个解决方法是什么? ?么样的影响?它对计算的收敛情况又有什么样的影响?17 23 在FLUENT运行过程中,经常会出现“turbulenceviscous rate”超过了极限值,此时如何解决?而这里的极限值指的是什么值?修正后它对计算结果有何影响18 24 在FLUENT运行计算时,为什么有时候总是出现“reve rsedflow”?其具体意义是什么?有没有办法避免?如果一直这样显示,它对最终的计算结果有什么样的影响26 什么叫问题的初始化?在FLUENT中初始化的方法对计算结果有什么样的影响?初始化中的“pa tch”怎么理解?27 什么叫PDF方法?FLUENT中模拟煤粉燃烧的方法有哪些?30FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响?31数值模拟过程中,什么情况下出现伪扩散的情况?以及对于伪扩散在数值模拟过程中如何避免?32 FLUENT轮廓(contour)显示过程中,有时候标准轮廓线显示通常不能精确地显示其细节,特别是对于封闭的3D物体(如柱体),其原因是什么?如何解决?33 如果采用非稳态计算完毕后,如何才能更形象地显示出动态的效果图?34 在FLUENT的学习过程中,通常会涉及几个压力的概念,比如压力是相对值还是绝对值?参考压力有何作用?如何设置和利用它?35在FLUENT结果的后处理过程中,如何将美观漂亮的定性分析的效果图和定量分析示意图插入到论文中来说明问题?36 在DPM模型中,粒子轨迹能表示粒子在计算域内的行程,如何显示单一粒径粒子的轨道(如20微米的粒子)?37 在FLUENT定义速度入口时,速度入口的适用范围是什么?湍流参数的定义方法有哪些?各自有什么不同?38 在计算完成后,如何显示某一断面上的温度值?如何得到速度矢量图?如何得到流线?39 分离式求解器和耦合式求解器的适用场合是什么?分析两种求解器在计算效率与精度方面的区别43 FLUENT中常用的文件格式类型:dbs,msh,cas,dat,trn,jou,profile等有什么用处?44 在计算区域内的某一个面(2D)或一个体(3D)内定义体积热源或组分质量源。

学习FLUENT简单、常见问题汇总

学习FLUENT简单、常见问题汇总

查看负体积的位置In:[>x先initialize,激活adapt菜单下的一些选项,要用到的是iso-value,然后在grid下选cell volume,然后compute,会得到网格的体积范围,然后在iso min下填入最小负值,最大值填0,然后用mark,就可以得到一个iso的面,在旁边的manage菜单下的register会出现一个iso的面,用下面的display加上display grid命令,就可以很清楚的看到负体积在计算域的位置。

kMFl6r©流体中文网论坛-- 流体力学及相关领域学术问题交流论坛。

X[以下内容由ch06 在2008年12月24日05:05pm 时添加] NU4#SY©流体中文网论坛-- 流体力学及相关领域学术问题交流论坛。

lv%"u找到位置就好修改了V4学习FLUENT简单问题解答,常见问题汇总1 现在用FLUENT的UDF来加入模块,但是用compiled udf时,共享库老是连不上?解决办法:1〉你的计算机必须安装C语言编译器。

2〉请你按照以下结构构建文件夹和存放文件:libudf/src/*.c (*.c为你的源程序);libudf/ntx86/2d(二维为2d,三维为3d)/makefile(由makefile_nt.udf改过来的)libudf/ntx86/2d(二维为2d,三维为3d)/user_nt.udf(对文件中的SOURCE,VERSION,P ARALLEL_NODE进行相应地编辑)3〉通过命令提示符进入文件夹libudf/ntx86/2d/中,运行C语言命令nmake,如果C预言编译器按装正确和你的源程序无错误,那么此时会编译出Fluent需要的库文件(*.lib)这时再启动Fluent就不会出错了。

2 在使用UDF中用编译连接,按照帮助文件中给出的步骤去做了,结果在连接中报错“系统找不到指定文件”。

udf 文件可能不在工作目录中,应该把它拷到工作目录下,或者输入它的全部路径.3 这个1e-3或者1e-4的收敛标准是相对而言的。

FLUENT基础知识总结

FLUENT基础知识总结

========FLUENT基础知识总结仅仅就我接触过得谈谈对fluent的认识,并说说哪些用户适合用,哪些不适合fluent对我来说最麻烦的不在里面的设置,因为我本身解决的就是高速流动可压缩N-S方程,而且本人也是学力学的,诸如边界条件设置等概念还是非常清楚的同时我接触的流场模拟,都不会有很特别的介质,所以设置起来很简单。

对我来说,颇费周折的是gambit做图和生成网格,并不是我不会,而是gambit 对作图要求的条件很苛刻,也就是说,稍有不甚,就前功尽弃,当然对于计算流场很简单的用户,这不是问题。

有时候好几天生成不了的图形,突然就搞定了,逐渐我也总结了一点经验,就是要注意一些小的拐角地方的图形,有时候做布尔运算在图形吻合的地方,容易产生一些小的面最终将导致无法在此生成网格,fluent里面的计算方法是有限体积法,而且我觉得它在计算过程中为了加快收敛速度,采取了交错网格,这样,计算精度就不会很高。

同时由于非结构网格,肯定会导致计算精度的下降,所以我一贯来认为在fluent里面选取复杂的粘性模型和高精度的格式没有任何意义,除非你的网格做的非常好。

而且fluent5.5以前的版本(包括5。

5),其物理模型,(比如粘性流体的几个模型)都是预先设定的,所以,对于那些做探索性或者检验新方法而进行的模拟,就不适合用。

同时gambit做网格,对于粘性流体,特别是计算湍流尺度,或者做热流计算来说其网格精度一般是不可能满足的,除非是很小的计算区域。

所以,用fluent 做的比较复杂一点的流场(除了经典的几个基本流场)其计算所得热流,湍流,以及用雷诺应力模拟的粘性都不可能是准确的,这在物理上和计算方法已经给fluent判了死刑,有时候看到很多这样讨论的文章,觉得大家应该从物理和力学的本质上考虑问题。

但是,fluent往往能计算出量级差不多的结果,我曾经做了一个复杂的飞行器热流计算,高超音速流场,得到的壁面热流,居然在量级上是吻合的,但是,从计算热流需要的壁面网格精度来判断,gambit所做的网格比起壁面网格所满足的尺寸的要大了至少2个数量级,我到现在还不明白fluent是怎么搞的。

学习fluent (流体常识及软件计算参数设置)

学习fluent (流体常识及软件计算参数设置)

luent中一些问题----(目录)1 如何入门2 CFD计算中涉及到的流体及流动的基本概念和术语2.1 理想流体(Ideal Fluid)和粘性流体(Viscous Fluid)2.2 牛顿流体(Newtonian Fluid)和非牛顿流体(non-Newtonian Fluid)2.3 可压缩流体(Compressible Fluid)和不可压缩流体(Incompressible Fluid)2.4 层流(Laminar Flow)和湍流(Turbulent Flow)2.5 定常流动(Steady Flow)和非定常流动(Unsteady Flow)2.6 亚音速流动(Subsonic)与超音速流动(Supersonic)2.7 热传导(Heat Transfer)及扩散(Diffusion)3 在数值模拟过程中,离散化的目的是什么?如何对计算区域进行离散化?离散化时通常使用哪些网格?如何对控制方程进行离散?离散化常用的方法有哪些?它们有什么不同?3.1 离散化的目的3.2 计算区域的离散及通常使用的网格3.3 控制方程的离散及其方法3.4 各种离散化方法的区别4 常见离散格式的性能的对比(稳定性、精度和经济性)5 流场数值计算的目的是什么?主要方法有哪些?其基本思路是什么?各自的适用范围是什么?6 可压缩流动和不可压缩流动,在数值解法上各有何特点?为何不可压缩流动在求解时反而比可压缩流动有更多的困难?6.1 可压缩Euler及Navier-Stokes方程数值解6.2 不可压缩Navier-Stokes方程求解7 什么叫边界条件?有何物理意义?它与初始条件有什么关系?8 在数值计算中,偏微分方程的双曲型方程、椭圆型方程、抛物型方程有什么区别?9 在网格生成技术中,什么叫贴体坐标系?什么叫网格独立解?10 在GAMBIT中显示的“check”主要通过哪几种来判断其网格的质量?及其在做网格时大致注意到哪些细节?11 在两个面的交界线上如果出现网格间距不同的情况时,即两块网格不连续时,怎么样克服这种情况呢?12 在设置GAMBIT边界层类型时需要注意的几个问题:a、没有定义的边界线如何处理?b、计算域内的内部边界如何处理(2D)?13 为何在划分网格后,还要指定边界类型和区域类型?常用的边界类型和区域类型有哪些?14 20 何为流体区域(fluid zone)和固体区域(solid zone)?为什么要使用区域的概念?FLUENT是怎样使用区域的?15 21 如何监视FLUENT的计算结果?如何判断计算是否收敛?在FLUENT中收敛准则是如何定义的?分析计算收敛性的各控制参数,并说明如何选择和设置这些参数?解决不收敛问题通常的几个解决方法是什么?16 22 什么叫松弛因子?松弛因子对计算结果有什么样的影响?它对计算的收敛情况又有什么样的影响?17 23 在FLUENT运行过程中,经常会出现“turbulence viscous rate”超过了极限值,此时如何解决?而这里的极限值指的是什么值?修正后它对计算结果有何影响18 24 在FLUENT运行计算时,为什么有时候总是出现“reversed flow”?其具体意义是什么?有没有办法避免?如果一直这样显示,它对最终的计算结果有什么样的影响26 什么叫问题的初始化?在FLUENT中初始化的方法对计算结果有什么样的影响?初始化中的“patch”怎么理解?27 什么叫PDF方法?FLUENT中模拟煤粉燃烧的方法有哪些?30 FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响?31数值模拟过程中,什么情况下出现伪扩散的情况?以及对于伪扩散在数值模拟过程中如何避免?32 FLUENT轮廓(contour)显示过程中,有时候标准轮廓线显示通常不能精确地显示其细节,特别是对于封闭的3D物体(如柱体),其原因是什么?如何解决?33 如果采用非稳态计算完毕后,如何才能更形象地显示出动态的效果图?34 在FLUENT的学习过程中,通常会涉及几个压力的概念,比如压力是相对值还是绝对值?参考压力有何作用?如何设置和利用它?35 在FLUENT结果的后处理过程中,如何将美观漂亮的定性分析的效果图和定量分析示意图插入到论文中来说明问题?36 在DPM模型中,粒子轨迹能表示粒子在计算域内的行程,如何显示单一粒径粒子的轨道(如20微米的粒子)?37 在FLUENT定义速度入口时,速度入口的适用范围是什么?湍流参数的定义方法有哪些?各自有什么不同?38 在计算完成后,如何显示某一断面上的温度值?如何得到速度矢量图?如何得到流线?39 分离式求解器和耦合式求解器的适用场合是什么?分析两种求解器在计算效率与精度方面的区别43 FLUENT中常用的文件格式类型:dbs,msh,cas,dat,trn,jou,profile等有什么用处?44 在计算区域内的某一个面(2D)或一个体(3D)内定义体积热源或组分质量源。

Fluent学习资料教程集锦12-fluent_多项流


• 使用FLUENT中 DPM模型模拟仿 真喷雾干燥过程, 包括液体喷雾进入 加热室接触干燥粉 末时的流动,热交 换和质量交换。
• 优化喷雾干燥器 中的不同参数时, CFD仿真技术起到
Air and methane inlets
Centerline for particle injections
Outlet
– 稀疏型 (< 10%), 内部颗粒间的距离大于 颗粒载颗荷 粒– 离直散径相和两连倍续相,的因惯此性力,颗粒间的相Vpri互mary作用可
比率
part
cont
cp以oanrtt 忽 略1。1, ,twonoewwaayyccoouupplilningg
Vse c onda r y
• 如果St 1, 所有模型都适用,这时就需要考虑 计算速度
附录
建立离散相模型 (DPM)
Define Models Discrete Phase…
Define Injections…
Display Particle Tracks…
DPM 模型边界条件
• Escape
• Trap • Reflect
欧拉多相模型
欧拉多相模型
• 欧拉多相流模型基于平均N-S方程,可以计算 任意粒子和连续相物质。 • 对每一相求解守恒方程。 • 每相同时共存: 每相的守恒方程都包涵单相项 (压力梯度,导热率等)+界面项。 • 界面项包括动量(升力),热量和质量交换。 相间速度和温度差异使得机械能和热能的交换是 非线性的。 • 提供了附加的模型(湍流模型等)。
VOF模型举例 – 晃动的汽车油箱
• 在FLUENT中使 用VOF模型,仿 真模拟各种加速 环境下,汽车油 箱中液体的晃动 t = 1.05 sec (自由表面移 动)。

fluent-udf-经验

[转]菜鸟学UDF的感觉,希望对UDFers有用光看书,感觉UDF不难。

看例子,有些看个四五遍之后才能差不多看懂。

原来,得靠UDF 帮助。

我主要用的是fluent v6.3自带的html格式的帮助,里面东西很全,当然也包括UDF Manual。

里面自带的search功能相当好,只是要注意用好+或-号(逻辑符号),另外,这个功能似乎有些浏览器支持不太好,不过基本上用IE不太容易出问题。

对于从零开始学习UDF,建议还是先看一下UDF中文帮助,我估计大家知道的都是马世虎翻译的那本吧,感觉挺好。

(没想到马世虎跟我是校友,去年给安世亚太投过一份简历,他给我打过电话,当时一阵兴奋,呵呵。

)对于只涉及到边界条件或物性等的UDF,一般用interpret就可以的,这些我觉得只需要根据例子改一下就是了。

$$ 对于要添加UDS方程的,相对难一点。

我编程用的是三到五个UDS,几十个UDM。

一开始编程时,没有头绪,后来看别人编的,才慢慢发现了一些基本思路。

比如,可以用枚举定义UDS或UDM,这样用起来方便。

enum{NP,RHOH2O_Y_UP_X,RHOH2O_Y_UP_Y,RHOH2O_Y_UP_Z,N_REQUIRED_UDS};//枚举UDS变量名对于UDM,则用N_REQUIRED_UDM代表个数。

然后在INIT与ADJUST函数中,检查变量个数时则比较方便,如:DEFINE_INIT(init_parameter,domain){if (n_uds < N_REQUIRED_UDS)Error(”Not enough user defined scalars!(init)\n”);if (n_udm<N_REQUIRED_UDM)Error(”Not enough user defined memories(init)!\n”);initialise(domain);//代表初始化}DEFINE_ADJUST(adjust_compute,domain){if (n_uds < N_REQUIRED_UDS)Error(”Not enough user defined scalars!(adjust)\n”);if (n_udm<N_REQUIRED_UDM)Error(”Not e nough user defined memories(adjust)!\n”);update_parameter(domain);//代表主函数}初始化时,则可:cell_t c;Thread *t;int i;thread_loop_c(t,d){if(NNULLP(THREAD_STORAGE(t,SV_UDS_I(NP)))&&NNULLP(THREAD_STORAGE( t,SV_UDS_I(NP_R)))) //为各UDS提供存储空间{begin_c_loop(c, t){for (i=0; i<N_REQUIRED_UDS; i++)C_UDSI(c,t,i) = 0.0;}end_c_loop(c, t);}if(NNULLP(THREAD_STORAGE(t,SV_UDM_I))){begin_c_loop(c, t){for (i=0; i<N_REQUIRED_UDM; i++)C_UDMI(c,t,i) = 0.0;}end_c_loop(c, t);}}对于各UDM量,则可:real udm_v;udm_v=0;//用之前对变量进行初始化…//UDM相关运行C_UDMI(c,t,UDM_V)=udm_v;//把值输入给UDM,当然之前要对UDM_V进行定义用UDM有个好处,一是可以在后处理中显示,二是传递变量相当方便,比如在ADJUST 中计算的量用于源项或对流项等,用UDM可以直接调用。

(完整版)fluent学习总结报告6

10、计算结果后处理1)创建要进行后处理的表面FLUENT中的可视化信息基本都是以表面({surface)为基础的。

有些表面,如计算的进口表面和壁面等,可能已经存在,在对计算结果进行后处理时直接使用即可。

但多数情况下,为了达到对空间任意位置上的某些变量的观察、统计及制作XY散点图,需要创建新的表面。

FLUENT提供了多种方法,用以生成各种类型的表面。

FLUENT在生成这些表确后,将表面的信息存储在案例文件中。

现简要介绍这些表面。

∙区域表面(ZoneSurfaces)。

如果用户想创建一个与现有的单元区域(或单元面区域)包含相同单元(或单元面)的单元区域(或单元面区域).可使用这种方式创建区域表面。

当需要在边界上显示结果时,这类表面非常有用。

用户可通过Surface / Zone命令打开ZoneSurface对话框,来生成这类表面。

∙子域表面(PartitionSurfaces)。

当用户使用FLLENT的并行版本时,可通过两个网格子域的边界来生成表面。

用户可通过Surface/Partition命令打开Partition Surface对话框,来生成这类表面。

∙点表面(PointSurfaces)。

为了监视某一点处的变量或函数的值,需要创建这类表面。

用户可通过Surface / Point命令打开PointSurface对话框,来生成这类表面。

∙线和耙表面(Line and RakeSurfaces)。

为了生成流线.用户必须指定一个表面,粒子将从这个表面释放出来。

线表面和耙表面就是专为此设计的。

一个耙表面由一组在两个指定点间均匀分布的若于个点组成,一个线表面只是一个指定了端点且在计算域内延伸的一条线。

用户可通过Surface/Line/R ake。

命令打开Line / Rake Surface对话框,来生成这类表而。

∙平面(PlaneSurface):如果想显示计算域内指定平面上的流场数据,则可创建这类表面。

FLUENT使用基础经验

FLUENT使⽤基础经验Fluent使⽤经验记录基于Fluent全攻略基础教程成功模拟的⼏点建议1、Check和Scale⽹格,⽹格斜度Skewness < 0.98才能求解;2、能量亚松弛因⼦范围选在0.95-1,耦合传热问题时,⾼导热系数下,较⼩的亚松弛因⼦会阻碍收敛;3、对于三⾓形和四⾯体⽹格,采⽤Node-Based平均梯度,⽐默认的Cell-Based平均梯度结果更为精确;4、残差⾄少下降3个量级,对于pressure-based求解器能量⽅程残差要达到10-6,物态⽅程达到10-5;5、收敛的解不⼀定是正确的解,需要⽤⾼阶格式求解;6、⽹格不相关处理,采⽤Adatption;基本概念N-S⽅程:由Navier和Stokes 通过在Euler’s Equation 上加⼊粘性项得到的粘性不可压流体动量⽅程,对于可压流体还需能量⽅程和状态⽅程。

N-S⽅程简化:N-S > RANS > 边界层⽅程> ⽆粘⾮线性⽅程【如⾼Re,粘性⽐重下降,转变为Euler’s Equation,势能⽅程,跨⾳⼩扰动⽅程】> ⽆粘线性⽅程【如Laplace⽅程】。

数值求解本质:将控制⽅程线性化并⽤离散⽅法和格式变为代数⽅程,⽤线性⽅程迭代求解。

何时使⽤湍流模型:流动为湍流时,Re>2320认为是湍流,因为实际中初始流场常为湍流,⽽湍流下临界Re=2320。

问题:⽹格smooth/swap操作和含义?如果不加湍流模型那么求解可以进⾏吗,求解的是什么⽅程?Hydraulic Diameter:⽔⼒直径(Hydraulic diameter)是,⾮圆形截⾯管道等效成圆形截⾯管道的⼀个⼏何尺⼨,⽤于计算雷诺数,判断管道内流体是层流还是湍流状态。

Turbulence Intensity:湍流强度,湍流脉动速度与平均速度之⽐。

湍流强度可以⽤I=0.16Re^(-1/8)来近似计算,如何推导的?Turbulence Kinetic Energy:湍流动能,湍流速度脉动⽅差与质量乘积的1/2。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 现在用FLUENT的UDF来加入模块,但是用compiled udf时,共享库老是连不上? 解决办法: 1〉你的计算机必须安装C语言编译器。 2〉请你按照以下结构构建文件夹和存放文件: libudf/src/*.c (*.c为你的源程序); libudf/ntx86/2d(二维为2d,三维为3d)/makefile(由makefile_nt.udf改过来的) libudf/ntx86/2d(二维为2d,三维为3d)/user_nt.udf(对文件中的SOURCE,VERSION,P ARALLEL_NODE进行相应地编辑) 3〉通过命令提示符进入文件夹libudf/ntx86/2d/中,运行C语言命令 nmake,如果C预言 编译器按装正确和你的源程序无错误,那么此时会编译出Fluent需要的库文件(*.lib) 这时再启动Fluent就不会出错了。

2 在使用UDF中用编译连接,按照帮助文件中给出的步骤去做了,结果在连接中报错 “系统找不到指定文件”。 udf 文件可能不在工作目录中,应该把它拷到工作目录下,或者输入它的全部路径. 3 这个1e-3或者1e-4的收敛标准是相对而言的。在FLUENT中残差是以开始5步的平均值为基准进行 比较的。如果你的初值取得好,你的迭代会很快收敛,但是你的残差却依然很高;但是当你改变初 场到比较不同的值时,你的残差开始会很大,但随后却可以很快降低到很低的水平,让你看起来心 情很好。其实两种情况下流场是基本相同的。 由此来看,判断是否收敛并不是严格根据残差的走向而定的。可以选定流场中具有特征意义的点, 监测其速度,压力,温度等的变化情况。如果变化很小,符合你的要求,即可认为是收敛了。 一般来说,压力的收敛相对比较慢一些的。 是否收敛不能简单看残差图,还有许多其他的重要标准,比如进出口流量差、压力系数波动等等 尽管残差仍然维持在较高数值,但凭其他监测也可判断是否收敛。最重要的就是是否符合物理事实 或试验结论。 残差曲线是否满足只是一个表面的现象,还要看进口和出口总量差不得大于1%,而且即使这样子, 收敛解也不一定准确,它和网格划分/离散化误差,以及屋里模型的准确性都有关系.所以得有试验数 据做对比活着理论分析了 当然最终是否正确是要看是否与实验数据相符合!但既然有残差图的话,总应该可以大概的看出 是否收敛吧?是否要残差要小到一定的程度,或者是残差不在增长,就可以一定程度上认为是收敛 的 残差的大小不能决定是否收敛,我在用FLUENT计算时,多采用监测一个面的速度(或者是压力、 紊动能等参数)基本上不随着计算时间的推移而变化,就认为基本达到收敛 4 据质量守恒,收敛时进、出口的流量数值应大致相等(一般认为进出口质量差值比上入口质量的 相对值小于0.5%时收敛,但是对特殊情况可能不同 ),但符号相反,一般出口流量是负值。 5 在进行稳态计算时候,开始残差线是一直下降的,可是到后来各种残差线都显示为波形波动, 是不是不收敛阿? 答: 有些复杂或流动环境恶劣情形下确实很难收敛。计算的精度(2阶),网格太疏,网格质量太差, 等都会使残差波动。 经常遇到,一开始下降,然后出现波动,可以降低松弛系数,我的问题就能收敛,但如果网格质 量不好,是很难的。通常,计算非结构网格,如果问题比较复杂,会出现这种情况, 建议作网格时多下些功夫 。 理论上说,残差的震荡是数值迭代在计算域内传递遭遇障碍物反射形成周期震荡导致的结果, 与网格亚尺度雷诺数有关。例如,通常压力边界是主要的反射源,换成OUTFLOW边界会好些。 这主要根据经验判断。所以我说网格和边界条件是主要因素。

6 残差——是cell各个Face的通量之和,当收敛后,理论上当单元体内没有源相时各个面流入的通 量也就是对物理量的输运之和应该为0。最大残差或者RSM残差反映流场与所要模拟流场(指收敛后 应该得到的流场,当然收敛后得到的流场与真实流场之间还是存在一定的差距)的差距,残差越小 越好,由于存在数值精度问题,不可能得到0残差,对于单精度计算一般应该低于初始残差1e-03 以下为好,但还要看具体问题。 一般在Fluent里可以添加进出口流量监控(print or plot),当残差收敛到一定程度后, 还要看进出口流量是否达到稳定平衡,才可以确认收敛与否。 残差在较高位震荡,需要检查边界条件是否合理,其次检查初始条件是否合适,比如在有激波的 流场,初始条件不合适,会带来流场的震荡。有时流场可能有分离或者回流,这本身是非定常现象, 计算时残差会在一定程度上发生震荡,这时如果进出口流量是否达到稳定平衡,也可以认为流场收敛了 (前提是要消除其他不合理因数)。另外Fluent缺损地采用多重网格,在计算后期,将多重网格设置 为零可以避免一些波长的残差在细网格上发生震荡。 7 模型比较复杂,是在pro/E中建的模,然后用igs导入gambit,不过这样就产生了很多碎线和碎面并且 在一些面交界的地方还存在尖角。我曾经做成功过把它们统统merge成一个虚面,中间设置了一个可以 容忍尖角的参数,也可以划分网格,但把生成的msh文件导入fluent就会出错,这是virtual geometry 的原因还是因为尖角的原因?还有,virtual geometry和普通的真实的几何体到底有什么区别?好像最大 的区别是virtual geometry不能进行布尔操作,布尔操作(boolean operation)又是什么? 使用virtual geometry需要注意哪些问题? virtual geometry是很头疼的问题。你把它们统统merge成一个虚面 按理说全是虚的也是可以算的。可能是因为尖角的原因,虚实最大差别:是virtual geometry不能 进行布尔操作,boolean operation即是并 对于复杂外形的网格生成,不可避免的会用到virtual geometry,virtual face ,和virtual edge等, 1。作网格的时候,把所有的面全部合成一个虚面的做法不好,特别是对于复杂外形的网格生成, 你最好在模型变化剧烈的地方多分几个面,这样会更有效的控制网格能够在模型表面曲率比较大的 地方能够生成规则的结构或者非结构网格。 2对于你输入gambit的时候产生很多碎片的问题,你可以适当的把proe里面的模型精度和它的公差降低 ,因为gambit的建模工具精度本事就不高。 3。布尔运算就是对于面与面,体与体的联合,相减等运算。这个在所有的cad建模过程中是经常见 到的问题。 4。对于虚体生成的计算网格,和实体生成的计算网格,在计算的时候没有区别,关键是看你网格 生成的质量如何,与实体虚体无关。 我在作复杂模型计算的时候,大部分都是用的虚体,特别是从其他的建模软件里面导进来的复杂 模型,基本上不能够生成实体。 至于计算的效果如何,那是你对于fluent的设置问题和网格的质量问题,与模型无关。 可以用gambit里面的check功能检查一下你的网格质量,看看质量怎么样 实体、实面与虚体、虚面的区别 在建模中,经常会遇到实...与虚...,而且虚体的计算域好像也可以进行计算并得到所需的结果, 对二者的根本区别及在功能上的不同 对于求解是没有任何区别的,只要你能在虚体或者实体上划分你需要的网格

-------------------------------------------------------------------------------- gambit的实体和虚体在生成网格和计算的时候对于结果没有任何影响,实体和虚体的主要区别有以下几点: 1。实体可以进行布尔运算但是虚体不能,虽然不能进行布尔运算,但是虚体存在merge,split等功能。 2,实体运算在很多cad软件里面都有,但是虚体是gambit的一大特色,有了虚体以后, gambit的建模和网格生成的灵活性增加了很多。 3。在网格生成的过程中,如果有几个相对比较评弹的面,你可以把它们通过merge合成一个 ,这样,作网格的时候,可以节省步骤,对于曲率比较大的面,可能生成的网格质量不好, 这时候,你可以采取用split的方式把它划分成几个小面以提高网格质量

8 问题一:在画体网格时总出现initialization failed perturb boundary nodes and try again. 但是还在继续画。我想一定是有问题的。但不知道问题出现在哪里?谨请各位大虾赐教! 问题二:在画面网格时已经定义了spacing,那么在画体网格时再定义,会不会有冲突?还有, 究竟怎样定义才是合理的? 第一个问题:在做网格时,所有的错误提示都表明部分网格生成要么有问题没有生成, 要么生成的质量很差,要重新检查一下几何体和网格类型. 第二个问题:如果能够生成网格的话,重复定义没有问题,但是可能会出现生成面网格的 spacing和体网格的spacing不一致而产生冲突,这种情况下gambit会自动处理, 但生成的网格质量未必好. 9 在用gambit生成体网格的时候,出现了问题,提示是 Initialization failed to mesh 23 nodes . ERROR:TG_mesh_domain failed with error code 1. ERROR:Tegrahedral meshing has failed for volume v_volume.1. this is usually caused by problems in the face meshs. check hte skewnesses of your face meshes and make sure the face mesh size are not too large in areas of small gaps . 我明白这是因为模型中的狭长面太多,但是在修改了大量的狭长面以后, 还是存在这个问题,每一个面我都挨着做了一下网格,看看生成的质量怎么样, 检查应该没有问题了,但是在生成体网格的时候,又出现这个问题,不知道该怎么办 解决办法 1.减小体网格size,当有多个体的时候,体网格从小到大过渡要合理,跨度不要太大 2.合并小面(小面与小面合并,小面并入大面),变成虚体 我觉得合并小面是个很有效的方法,网格质量也可以得到提升 关键是两个小面之间的夹角很大,合并之后会出现一个像角铁一样的拐角面, 做网格的时候效果更差了,老兄说的合并成虚面的情况应该是两个面的夹角不是 太大的情况,减小size我也试验了,但是减小了以后,我的网格数量就太多了, 算东东的时候机子跑不动 那就把夹角很大的那两个小面部分单独切为一个体算了,对这个体给个很小的size 再试试吧,不行就把它忽略掉 Gambit生成的网格质量向来让人很头疼的,用ICEM几乎不出现负体积,这可能跟 Gambit的算法有关系,对于曲率比较大的区域,只能增加该处的网格密度,只能这样了。

相关文档
最新文档