首页/文章/ 详情

【CFD小贴士】求解壁面采用什么方法?第一层网格高度如何确定?

1月前浏览1004

求解壁面采用什么方法?

在近壁区域,解的梯度非常高,但近壁区域的精确计算对模拟的成功至关重要,两种近壁面湍流建模方法:
A) 使用 Wall Functions(壁面函数法)
B) 解析Viscous Sublayer(粘性子层解析法)

1、壁面函数法

壁面函数利用如图所示的可预测无量纲边界层剖面,从邻近网格单元质心的条件(速度、壁面距离)确定壁面条件(如剪切应力)

  • 这意味着单元应该位于log-layer§第一层网格应该位于 log-layer, 通常应该有一个y+值,比如30 < y+ < 300

  • 这是一个非常普遍的准则,但并不是一个绝对的规则,上限是雷诺数的函数(device Reynolds number

  • 对于非常高的Re,如果仍然在log层,y+可能会更高(例如,一艘大型船舶,Re≈ 109y+值大于1000是安全的)

  • 对于非常低(但仍然湍流)Re(例如一个小泵),对数层可能只延伸到y+≈300,此时y+ = 30太粗糙,边界层上不能有足够数量的网格单元(壁面函数法不再适用)

  • 如果发生这种情况,请考虑根据粘性子层分解准则来re-meshing

  • 要完全求解重要壁面上的边界层问题,可以尝试在边界层上设置至少10层网格单元

一般来说,如果你更感兴趣的是区域中心的湍流效应,而不是壁上的力,这是合适的
2、解析Viscous Sublayer(粘性子层解析法)
第一层网格单元应该在 y+≈ 1 ,并且保证足够多的边界层,增长率适中,不高于1.2
-这条准则确保网格将能够充分解析粘性子层的梯度
这将大大增加网格数
一般来说,如果壁面上的力或传热是模拟的关键(气动阻力、叶轮机械叶片性能、传热),解析粘性子层就是你要采用的方法,大多数情况下推荐的湍流模型是SST k-w
使用壁面函数时,垂直于壁面的节点更少(与使用网格求解粘性子层相比)

那么第一层网格高度如何确定呢?
在前处理阶段,您需要知道网格单元的第一层(边界层)的合适大小,以便Y+位于所需的范围内
实际的流场  直到您计算出求解结果后才会知道(实际上,有时由于计算出的Y+值,返回并重新构建模型是不可避免的)
为了降低 re-mesh 的风险,我们希望在开始时通过手工计算来尝试预测单元格大小:

对于平板流,雷诺数
  
给定 ReL=  1.4x106
y+的定义开始:

目标y+值和流体性质已知,

需要Ut ,它被定义为:

壁面剪切应力,tw ,可以由表面摩擦系数得到,Cf:

通过文献,平板表面摩擦系数的计算公式如下:

Re是已知的,因此使用这些定义来计算第一层网格的高度

我们设定的目标Y+值为 50, 因此:

我们的第一层网格高度y应该大约是1毫米。如果你想要y+ = 1,只要用上面公式中的1替换50,得到y = 1.8x10-5m
上述公式适用于平板流,对于内部流动, 雷诺数根据管子的水力直径计算,只要将上述公式中的摩擦系数公式替换为Cf =0.079 Red-0.25 即可。
来源:CFD仿真区
Meshing湍流船舶叶轮机械UM
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-10-13
最近编辑:1月前
濮小川CFD
硕士 心不唤物,物不至!
获赞 16粉丝 43文章 103课程 0
点赞
收藏
作者推荐

【CFD小贴士】Fluent后处理设置常见问题

1.Q:在Ansys Fluent 2019 R3里,如何监测周期性边界的压力梯度,并将其作为优化参数?A:(1)先把周期性边界设置为质量入口,然后在模型树下右键单击Solution→Monitors→Report File-New...则出现如下对话框,选中后点击OK即可。(2)按照如下操作,即可把周期性边界的压力梯度设置为优化参数,在workbench下做DOE。2.Q:用Adjoint Sover,为何adjoint中通过observable value 读出来的pressure drop与通过surface integrals 得到的压降不一样?具体如下图。A:伴随求解给的是总压差,而上图计算的是静压差,而且是基于质量平均的静压差。应该读取基于面积平均的总压差,这样二者就吻合的很好了,如下图:3.Q:在FLUENT里如何做局部切面A:实现方法如下:选择Results-&gt;Create-&gt;Plane打开Plane surface面板。在Plane surface面板,按照下图进行选择,然后在图形显示界面窗口点击要创建面的区域,点击create生成局部面。4.Q:如何在Fluent下创建监测点?在results-&gt;surface-&gt;create下选择Point创建一个点。在菜单栏Solution-&gt;reports-&gt;Definitions-&gt;new-&gt;surface report-&gt;Area-weighted Adverage对话框,做如下设置。3.在树形结构下右键单击Solution-&gt;Monitors-&gt;Report Plots(或Report files),选择New,做如下设置。这样计算时就会自动输出监测点的数据。5.Q:如何用journal命令流输出监测点的压力?A:如下:surface/point-surface xyypoint 0.016 0 0.016/solve/report-definitions/ add xyytest surface-areaavg surface-names xyypointfield/ pressure/solve/ report-files/add xyytest report-defs xyytestfile-name mp.out/solve/report-plots/add/xyytestreport-defs xyytest6.Q:如何利用Fluent Journal文件输出残差数据?A:方法1:Journal文件命令如下:/file/read-case cyl10.cas.gz/solve/initialize/hyb-initialization/file/start-transcript resi-demo/solve/iterate 1000/file/stop-transcript resi-demo/file/write-data cyl-10.dat.gz/exit这样,计算时在工作路径下就会出现resi-demo的文件,该文件记录了残差,并实时更新。方法2:采用如下命令:/file/read-case cyl10.cas.gz/file/read-macros scmdemo.scm/solve/initialize/hyb-initialization/solve/set/time-step 0.1/solve/execute-commands add-edit command-1 1 iteration &quot;/file/read-journal joudemo.jou&quot;/solve/execute-commands enable command-1/solve/dual-time-iterate 100 30/file/write-data cyl10.dat.gz/exit附1:joudemo.jou文件的内容如下:(do((i 0 (+ i 1)))((= i (length (solver-residuals))))(format port &quot;~a ~2t&quot; (cdr (list-ref (solver-residuals) i))))(newline port)附2:scmdemo.scm文件的内容如下(define port)(set! port (open-output-file &quot;output.dat&quot;))(do((i 0 (+ i 1)))((= i (length (solver-residuals))))(format port &quot;~a ~2t&quot; (car (list-ref (solver-residuals) i))))(newline port)7.Q:Fluent中如何获取压力梯度?A: 在Fluent里获取压力梯度的方法如下:在计算之前输入命令solve/set/expert后回车,然后根据提示输入yes。如下图所示。&gt; solve/set/expertSave cell residuals for post-processing? [no] yesKeep temporary solver memory from being freed? [no] yesAllow selection of all applicable discretization schemes? [no] yes这样,计算结束后就可以在后处理中看到压力梯度这个参数。如下图显示的是某内流场某截面压力云图和Y方向的压力梯度。8.Q:FLUENT中壁面对流换热系数,不知是查看 surface HTC, 还是Wall Adjacent HTC, 这两者有什么区别?A: 应该采用Surface Heat Transfer Coefficient来查看壁面的对流换热系数。Surface Heat Transfer Coefficient受来流温度的影响,其计算公式如下:而wall adjacent heat transfoer coef是和壁面函数相关的传热系数。其计算公式是:9.Q:Fluent如何生成动画?A:动画可以在CFD-POST或者Ensight中生成,也可也在FLUENT里生成,Fluent里的方法如下:在启动计算之前,完成以下步骤:1) 创建一个您要显示的countours。2) 返回到Solutionm面板下选择Activities下的Solution Animations ,打开Animatiom Definition对话框。3) 在Animatiom Definition对话框设置如下:①定义记录频率,如每5个时间步记录一次,②选择保存目录或输入句点表示采用当前工作目录。③点击Use Active设置动画视角④选择之前创建的contour,可以定义多个动画,动画可以组合多个对象和/或场景。⑤点击OK完成动画的定义。10.Q:Fluent如何生成mpeg格式的动画?A:Ansys Fluent可以输出mpeg格式的动画,操作如下:击树形结构 Results-&gt;Animations-&gt;Solution Animation Playback打开Playback对话框;选中动画序列animation-1,将格式选为MPEG,点击write即可生成动画。该动画可以用windows media player 打开。浮点溢出:浮点”错误的问题可能与正在运行仿真的硬件有关,也可能与Fluent案例的模型设置有关。硬件相关的:基于硬件的原因,这个错误如下:1) CPU或OS是32位的。32位机器的最大地址空间是4GB(2^32-1),其中必须为操作系统(OS)相关进程保留空间,留下接近3gb或更少的可用内存。如果计算需要的内存超过可用内存,则浮点错误可能是由于这种内存限制造成的。解决方案是使用多处理器机器orm升级到64位系统进行并行计算。2)模拟所需的内存取决于网格大小、求解器设置、物理模型等。一般情况下,1GB RAM对于1百万个单元格就足够了,只需要一个基本的基于压力的解算器,在单精度模式下,不需要打开额外的模型。但是对于双精度模式(推荐用于计算精度)和添加其他模型(湍流、物种/反应、多相等),由于在任何迭代中需要存储额外的变量,内存需求会增加。因此,根据可用的RAM,计算可能会超出可用内存的限制。这可以通过增加可用内存(升级到更高的内存机器)或使用多处理器系统来解决。软件相关的:在软件方面,浮点误差通常表示一个数学运算,其中一个变量除以0得到一个未定义的值。出现这种情况可能有以下几个原因:1)浮点错误问题多与求解器设置、边界条件、初始化设置错误有关。在开始模拟之前,请确保正确设置了不同的数值和物理参数。2)如果有用于边界条件的UDF,请确保所有变量的值都在物理范围内,并且UDF挂接在正确的边界上。3)在开始模拟之前,请检查报告&gt;参考值面板中设置的参考值,以确保它们是针对问题正确设置的。4)检查网格质量,确保没有无效的、高度倾斜(正交质量&lt; 0.02)的网格。11.Q:Fluent瞬态计算结束后,如何选择删除其中一个动画序列?问题描述:Fluent瞬态计算结束后,保存了动画。关闭后若重新打开Playback对话框,显示End time为0。若选择删除其中一个动画序列,则提示:“Sequence can&#39;t be deleted. Animation object exists in the current session.”A:动画序列是通过Solution-&gt;Activities-&gt;Create-&gt;Solution Animation创建的,而不是在后处理的时候创建的,因此Fluent不会让你在Playback的对话框中删除动画序列,你应该在Solution Animation下右键选中要删除的动画序列,比如vector-animation,然后选择删除。然后在Playback对话框下,重新读入vector-animation.cxa文件,就能看到end time不再是0,此时点击write就可以保存动画等。12.Q:如何利用Fluent导出NATRAN PLOAD4A:Ansys Fluent可以直接导出NASTRAN文件。导出方法是在计算结束后选择“File-&gt;Export-&gt;Solution Data”打开Export对话框,选择如下后点击write。即可生成.bdf文件。并将压力存储为pload4。注意:若在Export对话框选择Surfaces下的某个面,则压力会被存储为PLOAD2。附. Nastran数据卡片说明若是瞬态计算,则可以边计算边输出Nastran文件。然后在Automatic Export对话框设置保存频率和路径等。13.Q:怎么抓带边框的三维流线图(之前用的AVZ截图,只能截图流线,没有边框)答:首先创建一个几何外轮廓mesh-1,创建方法见下图所示。外轮廓显示如下:其次,创建流线pathlines-1。流线显示如下:最后,创建Scene,勾选pathlines-1和mesh-1,设置mesh-1的透明度。然后点击save/display。带轮廓的流线图显示如下:14.Q:如何做Fluent稳态粒子动画A:Fluent 粒子计算结束后,如果是做的稳态粒子,可以在Particle Tracks窗口点击Pulse来看粒子的运动轨迹。若想保存该动画,即生成视频文件,则操作方法如下:Fluent计算结束后导出粒子的历史数据.xml文件。File-&gt;Export-&gt;Particle history data在CFD-Post里导入上述文件;导入历史数据文件后,在CFD-POST结构树下出现一个 Fluent PT for ****,双击Fluent PT for*****,在Symbol面板勾选“Show Sypmbols”并点击apply。3. 在 animation操作面板中展示粒子运动的动画并保存动画。如下图所示。15.Q:Fluent瞬态计算结束后在CFD-POST制作动画的方法A:CFD-POST导入Fluent瞬态结果并制作动画方法如下:Fluent瞬态计算时设置保存频率。比如下图是每5个时间步保存一次结果。在CFD-POST的菜单栏选择File-&gt;Load Results,并导入最后一次保存的计算结果。在CFD-POST的菜单栏Tools &gt; Animation。然后按照如下图所示的方法,即可顺利生成动画。16.Q:Fluent 三种传热系数(Surface Heat Transfer Coef, Wall Adjacent HTC, Wall Function HTC)的区别?A:如果不开启湍流模型,即只计算层流,则在后处理时只有Surface Heat Transfer Coef.和Wall adjacent Heat Transfer Coef.,没有 Wall Function Heat Transfer Coef。若开启湍流模型后,则三种传热系数同时出现。(1)Surface Heat Transfer Coef.就是教科书提到的表面传热系数,试验获取的也是该值。在Fluent中,表面传热系数(Surface Heat Transfer Coef.)的计算公式如下:其中,q是总的热流密度,包括对流和辐射。因此,从Surface Heat Transfer Coef.的计算公式可知,此处计算的是平均表面传热系数,其值大小受参考温度的影响,因此需要给定合适的参考温度。参考温度的选取方法十分复杂。以管内流动为例,参考温度的选取方法因边界条件的不同而不同。定热流边界:可以取进出口断面平均温度的算术平均值作为参考温度。即:进口端流体与管壁温差:出口端流体温度与管壁温差:进出口两端的算术平均温差:定壁温边界:流体与壁面间的温度差将沿管长按对数曲线规律变化。其对数平均温差为:如果,则对数平均温差和算数平均温差相当(误差小于4%)。上式中,当时,用“-”号,当时,用“+”号。(2)Wall Adjacent Heat Transfer Coef.即近壁面传热系数,根据Ansys 2020 R1 Fluent帮助文档公式(42-56)ansyshelp.ansys.com/acc可知,其计算公式如下:其中,Tac是与壁面相邻的第一层流体网格的温度。(3)Wall Func. Heat Tran. Coef.是壁面函数换热系数,其计算公式如下:其中,是定容比热,是近壁面湍流速度,D是粘性热,是壁面函数中定义的无量纲温度, 是临近壁面的第一层网格中心的温度。从Wall Func. Heat Tran. Coef的定义可知,该值是和Y+相关的量,不需要求解能量方程就可以得到。当Y+足够大时,Tp将趋近于Tbulk,即参考温度。另外,从定义我们可以得知,Wall Function Heat Tran. Coef和Wall adjacent的值相等,但由于计算原理不同,所以在Fluent中分别命名。17.Q:CFD-POST做瞬态动画如何显示时间?A:创建好Contour显示云图后,再创建Text。菜单栏选择Insert-&gt;Text。定义Text如下:在Text String输入time=&lt;aa&gt;勾选Embed Auto AnnotationType 选为ExpressionExpression选为Time点击Apply这样,就可以在云图显示了。来源:CFD仿真区

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈