扩散光顺是Fluent提供的另外一种常用的网格光顺方法。其基本原理是通过求解扩散方程得到网格节点的运动位移。

扩散光顺基本计算

扩散光顺通过求解 以下扩散方程来设置网格的节点位置。
\[
\nabla \cdot (\gamma \nabla \vec{u})=0
\]
其中,u为网格的运动速度。求解出运动速度后,可以很容易获得网格节点在下一个时间步长的位置。
\[
\vec{x}_{new}=\vec{x}_{old}+\vec{u}\Delta t
\]
式中, γ为扩散系数。Fluent提供两种计算扩散系数的方法。

  • Boundary distant:基于网格节点与边界zhi的距离来计算扩散系数。

\[
\gamma = \frac{1}{d^\alpha}
\]

式中d为正则化后的网格节点与边界之间的距离。

  • cell volume:基于网格体积计算扩散系数。

\[
\gamma = \frac{1}{V^\alpha }
\]

式中,v为网格正则化体积。

参数\(\alpha\)即扩散光顺设置面板中的Diffusion Parameter,如下图所示。此参数取值\(\alpha \ge 0\)。

扩散光顺参数设置

扩散光顺需要设置的参数只有Diffusion Parameter,亦即前面公式中的\(\alpha\)。

该参数取值范围为0~2。当取值为0时,扩散系数\(\gamma=1\),则计算域中网格为均匀扩散。提高此参数值可以使得距离运动边界较远区域吸收更多的位移。对于旋转边界运动,建议初始扩散参数取1.5。

注意:扩散光顺比弹簧光顺的计算量要大,但通常能够获得比弹簧光顺更好的网格质量(特别是对于非四面体/非三角形网格区域)。与弹簧光顺一样,扩散光顺也更适合于平移运动,对于旋转运动边界则很容易出现负体积。

Linearly Elastic Solid光顺

线弹性实体光顺方法是新版本Fluent中添加的。此方法则是通过借鉴弹性力学中的平衡方程来计算节点位移。具体计算方法可参阅Fluent UserGuid的10.6.2.1.3节。

该方法只有一个参数需要设置:Poisson's Ratio。泊松比的取值方位为-1.0~0.5。默认参数为0.45。

此方法的计算量比扩散光顺更大,但是能够提供比扩散光顺更好的网格质量。此方法支持二维的三角形和四边形网格,三维模型中的四面体、六面体、三棱柱以及五面体网格,但是不能用于变形网格区域中包含有多面体或悬挂节点的网格。在包含有多面体或悬挂节点的网格区域,建议使用扩散光顺。


更多关于CFD内容,可微信扫描下方二维码关注微信公众号。

Fluent动网格【12】:扩散光顺的更多相关文章

  1. Fluent动网格【13】:网格光顺总结及实例

    光顺(Smoothing)方法是最基本的网格节点更新方法.Fluent提供了三种光顺方法: Spring弹簧光顺 Diffusion扩散光顺 Linearly Elastic Solid光顺 三种方法 ...

  2. Fluent动网格【8】:网格节点运动案例

    Fluent动网格中的DEFINE_GRID_MOTION宏允许用户定义网格节点的运动.本案例演示采用DEFINE_GRID_MOTION宏指定边界节点的运动. 案例动网格效果如图所示. 案例描述 本 ...

  3. Fluent动网格【1】:概述

    最近总有小伙伴向我询问Fluent中的动网格问题,因此决定做一期关于Fluent动网格技术的内容. 动网格技术在流体仿真中很特殊,应用也很广.生活中能够碰到形形色色的包含有部件运动的问题,比如说我现在 ...

  4. Fluent动网格【11】:弹簧光顺

    动网格除了前面讲了很多的关于运动指定之外,另一个重要主题则为网格的更新. 在部件运动之后,不可避免的会造成网格形状的变化,如若不对网格加以控制,在持续运动的过程中,则可能造成网格极度变形.歪曲率过大, ...

  5. Fluent动网格【9】:区域运动

    本文所述的区域运动并非动网格中的运动域,而是指在多参考系(MRF)或滑移网格中所涉及到的区域的运动. 在滑移网格中指定区域运动时,除了能够指定绝对运动外,还能指定某一区域与其他区域间的相对运动,如图所 ...

  6. Fluent动网格【7】:网格节点运动

    在动网格中,对于那些既包含了运动也包含了变形的区域,可以通过UDF来指定区域中每一个节点的位置.这给了用户最大的自由度来指定网格的运动.在其他的动网格技术中(如重叠网格)则很难做到这一点.定义网格节点 ...

  7. Fluent动网格【5】:部件变形

    在动网格中关于部件运动除了指定刚体运动外,有时还需要指定某些边界的变形,这种情况经常会遇到,尤其是与运动部件存在相连接边界的情况下,如下图中边界1运动导致与之相连的边界2和边界3发生变形. Fluen ...

  8. Fluent动网格【3】:DEFINE_CG_MOTION宏

    除了利用Profile进行运动指定之外,Fluent中还可以使用UDF宏来指定部件的运动.其中用于运动指定的宏主要有三个: DEFINE_CG_MOTION DEFINE_GEOM DEFINE_GR ...

  9. Fluent动网格【2】:Profile文件

    动网格中一个重要任务是部件运动方式的指定.在动网格中指定部件的运动,往往将部件的运动方式指定为其加速度.速度或位移与时间的相关关系,本文主要讲述如何在Fluent中利用瞬态Profile文件指定部件的 ...

随机推荐

  1. ddctf2019--web部分writeup

    0x00前言 上周五开始的DDCTF 2019,整个比赛有一周,题目整体来说感觉很不错,可惜我太菜了,做了4+1道题,还是要努力吧 0x01 web 滴~ 打开看着url,就像文件包含 文件名1次he ...

  2. python中sqlite问题和坑

    import sqlite3 #导入模块 conn = sqlite3.connect('example.db') C=conn.cursor() #创建表 C.execute('''CREATE T ...

  3. Java简介及开发环境配置

    Java简介 Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称.(注:Sun公司已于2009年04月20日被Oracle公司收购) 目前, ...

  4. 用java连接RabbitMQ

    pom.xml <dependencies> <dependency> <groupId>junit</groupId> <artifactId& ...

  5. 2017-9-8-Linux下VNC server开启&图形界面显示

    之前有一个写树莓派3B怎么只使用网线VNC远程的blog,里面写的比较粗糙(其实是很长时间没搞我也忘了怎么装的了,照着原来的看一遍应该能想起来),所以重新来在新的环境下搭建一下VNC server. ...

  6. NOIP考纲总结+NOIP考前经验谈

    首先来一张图,很直观(截止到2012年数据) 下面是收集的一些,我改了一下 红色加粗表示特别重要,必须掌握 绿色加粗表示最好掌握,可能性不是很大,但是某些可以提高程序效率 高精度 a.加法 b.减法 ...

  7. Bridges: The Final Battle

    对修改操作按时间分治,设$solve(l,r,n,m)$为考虑时间在$[l,r]$的修改操作,作用范围是$n$个点,$m$条边的图. 若$l=r$,则暴力Tarjan统计桥边个数即可. 否则提取出$[ ...

  8. yii2过滤器(filter)

    一.VerbFilter VerbFilter检查请求动作的HTTP请求方式是否允许执行, 如果不允许,会抛出HTTP 异常 use yii\filters\VerbFilter; public fu ...

  9. docker 清理容器的命令

    执行以下命令会彻底清除所有容器. docker rm -f $(docker ps -qa) rm -rf /var/lib/etcd /var/lib/cni /var/run/calico rm ...

  10. JDBC接口

    Jmeter实例8:JDBC接口 加线程组.加JDBC配置信息: 配置信息详情如下:默认展示值不用修改 必填信息: Database UR:固定格式,将IP.端口号.数据库名修改成自己要用的数据库信息 ...