流体流动现象广泛存在于自然界和各种工程领域中,所有这些过程都要受质量守恒、动量守恒、能量守恒等基本物理定律的支配,即要满足一定的控制微分方程[。计算流体动力学(computational fluid dynamics, CFD)是通过计算机数值计算和图像显示,对包含有流体流动和热传导等相关物理现象的系统所做的分析。CFD的基本思想可以归结为:把原来空间域和时间域上连续的物理场,比如压力场和速度场,用一系列有限个离散点上的变量值的集合来代替,通过一定的原则和方式建立起关于这些离散点上场变量之间关系的代数方程组,然后求解代数方程组获得场变量的近似值[,也就是说CFD的首要问题就是要将这些控制流体流动的微分方程离散化,即把求解区域划分成便于求解的网格模型。传统的CFD离散方法包括有限差分法、有限元法和有限体积法,其中又以有限体积法应用最为广泛[。它们都有着各自划分网格的方法,统称为网格生成技术。传统的离散方法都是将求解域划分成均匀的网格,然而在实际应用中,经常出现网格的大变形、某些物理量在很小的区域内却发生了很大的变化,比如流固耦合边界、层流及紊流中的剪切层、爆炸等问题,对于这些问题如果采用简单的均匀网格求解则难以达到合理的精度,因此生成与问题相匹配的计算网格显得尤为重要。文中将移动网格这一数学方法引入CFD计算仿真,在不额外增加计算机资源消耗的前提下,很好地解决了这一类问题。

1 流体动力学控制方程及其解法

1.1 流体动力学控制微分方程

任何流动问题都必须满足质量守恒定律。该定律可以描述为:单位时间内流体微元体中质量的增加,等于同一时间内流入该微元体的净质量。按照这一定律,可得质量守恒方程

$

\frac{{\partial \rho }}{{\partial t}} + \frac{{\partial \left( {\rho u} \right)}}{{\partial x}} + \frac{{\partial \left( {\rho v} \right)}}{{\partial y}} + \frac{{\partial \left( {\rho w} \right)}}{{\partial z}} = 0,

$

(1)

式中:ρ为流体密度;u、v、w为速度矢量在x、y、z 3个方向的分量;t为时间。

任何流体都应该满足动量守恒定律。该定律可以描述为:微元体中流体的动量对时间的变化率等于外界作用在该微元体上的各种力之和。按照这一定律,可得著名的Navier-Stokes方程

$

\rho \frac{{\partial \mathit{\boldsymbol{u}}}}{{\partial t}} + \rho \left( {\mathit{\boldsymbol{u}} \cdot \nabla } \right)\mathit{\boldsymbol{u}} = \nabla \left( { - \rho \mathit{\boldsymbol{I}} + \tau } \right) + F,

$

(2)

式中:u为速度矢量;I为单位矩阵;τ为流体的粘性应力张量; F为流体的体积力。▽为Hamilton算子。

任何流体还应该满足能量守恒定律。该定律可以描述为:微元体能量的增加率等于微元体的净吸热量和外界对微元体的做功之和。按照这一定律,可得能量守恒方程

$

\frac{{\partial \left( {\rho T} \right)}}{{\partial t}} + \nabla \cdot \left( {\rho \mathit{\boldsymbol{u}}T} \right) = \nabla \cdot \left( {\frac{k}{{{c_{\rm{p}}}}}\nabla T} \right) + {S_{\rm{T}}},

$

(3)

式中:T为流体的绝对温度;cp为流体的比热容;k为流体的传热系数;ST为流体的内热源及由于粘性作用流体机械能转化为热能的部分,有时称为粘性耗散项。

式(1)、(2)、(3)即为控制流体流动的微分方程,计算流体动力学的求解过程本质上就是解上述偏微分方程组。

1.2 控制微分方程的一般解法

无论是流体流动问题还是流体热传导问题,无论是稳态问题还是瞬态问题,CFD的求解过程如下:

1) 建立控制微分方程,确定初边值条件;

2) 划分计算网格,生成计算节点;

3) 建立离散方程,代入初边值条件;

4) 给定求解控制参数,求解离散方程;

5) 判断解是否收敛。否,转到2);是,转到6);

6) 显示输出计算结果。

可以看出,CFD本质上就是求解式(1)、式(3)的偏微分方程组,而重点难点在于求解域网格的剖分。在一般情况下,传统的网格技术可以很好模拟流体流动问题(比如物体的气动力特性问题),然而对于某些特定的问题(如网格大变形问题),即使数值方法精度再高,如果网格条件与实际问题不匹配,那么得到的数值解也会完全失真。也就是说网格技术对偏微分方程数值解的精确性起着和数值方法同样重要的作用。

2 移动网格技术

2.1 移动网格技术的优势及基本思想

移动网格技术作为自适应网格的一种, 最初是由Liao[在1992年提出来的,后来被一些学者广泛应用于偏微分方程领域,并取得了一定的效果[。在网格大变形的流体问题计算中,传统的Lagrange法与Euler法存在缺陷:Lagrange法虽然具有能精确分辨物质界面的优点,但大形变引起的网格相交会导致计算中断;在Euler法中,虽然网格的几何形状较好,但边界处的界面跟踪、混合网格、重构等问题较难处理。移动网格方法是求解发展方程的一种方法,它根据物理解的变化,随时调整网格的疏密和形状。移动网格法既可以精确分辨物质界面又可以保持网格的几何特性,因此在求解网格大变形问题时具有不可比拟的优点。移动网格的特色是,在求解区域内以解的特征决定网格的特征,并且在求解过程中不断更新网格,使之自动与解相匹配。为了实现这一过程,就要用到一种基于调和映射的移动网格方法[,这种方法的基本思想是:将网格变形和控制微分方程的求解完全分开,从而只需构造一个适合问题的控制函数即可。在这个过程中需要引进一个逻辑区域,网格的移动通过由物理区域到逻辑区域的变换实现,物理区域就是需要求解的实际流体区域。

2.2 调和映射

移动网格方法最关键也是最困难的一点的就是要找到满足一定条件的网格映射或网格变换。调和映射是Fuller在上世纪40年代提出来的,后来广泛应用于数学物理领域,也用到了自适应网格领域[,调和映射定下如下:

对于2个n维计算区域Dp和DL,给定一个光滑的映射:ξ:Dp→DL,它的能量密度为

$

e\left( \xi \right)\left( x \right) = \frac{1}{2}{\left| {d\xi } \right|^2}\left( x \right),\;\;\;x \in {D_{\rm{p}}},e\left( \xi \right) \in {C^\infty }\left( {{D_{\rm{p}}}} \right)。$

(4)

映射ξ的能量就是能量密度的积分

$

E\left( \xi \right) = \int_{{D_p}} {\frac{1}{2}{{\left| {d\xi } \right|}^2}\left( x \right){\rm{d}}x} ,

$

(5)

式中:Dp、DL分别为计算区域的物理区域和逻辑区域。

能量泛函:E:C∞(Dp、DL)→R的临界点就称为调和映射。能量泛函的Lagrange-Euler方程为

$

\Delta {\xi ^k} + {G^{ij}}\mathit{\Gamma }_{\alpha \beta }^k\frac{{\partial {\xi ^\alpha }}}{{\partial {x^i}}}\frac{{\partial {\xi ^\beta }}}{{\partial {x^j}}} = 0,

$

(6)

式中:Δ为Laplace-Beltrimi算子;Gij为局部坐标系xn的Rieman度量;Γαβk为Dp上的联络系数。

从以上推导可知,调和映射本质上是调和函数与极小子流形的推广[。Hamilton, Schoen等建立了比较完善的调和映射存在性和唯一性的定理

2.3 控制函数

控制函数其实就是求解域上给定的一个正定的函数矩阵,它是生成移动网格的关键因素。控制函数在变分形式可以用来控制网格的质量,并使网格与求解域的物理解耦合起来,这时控制函数就可以用来度量物理区域上的物理量,物理区域上的度量矩阵可取为控制函数的逆。对于控制函数构造的一般原则是:用数值解的梯度来判断求解域中哪个部分的解改变得快,从而就将网格集中在哪里。利用梯度构造的控制函数的一般形式取为

$

M = \sqrt {1 + \alpha {{\left| u \right|}^2} + \beta {{\left| {\nabla u} \right|}^2} + \gamma {{\left| {{\nabla ^2}u} \right|}^2}\mathit{\boldsymbol{I}}} ,

$

(7)

式中,α、β、γ为正参数;I为单位矩阵;▽为Hamilton算子。

也有将控制函数与误差估计联系在一起构造控制函数的[:

$

G\left( {x,{t_n}} \right) = \sqrt {\left. {1 + \alpha {{\left( {\bar e\left( {x,{t_n}} \right)/{{\left\| {\bar e\left( {x,{t_n}} \right)} \right\|}_\Omega }} \right)}^2}} \right)} \mathit{\boldsymbol{I}},

$

(8)

式中,e(x, tn)为关于误差指标e的函数。

还有利用方向导数构造控制函数[:

$

f\left( {{X_i},t} \right) = g\left( {\partial u/\partial l} \right)\mathit{\boldsymbol{I}}。$

(9)

它们的原理和关于梯度的控制函数是一样的。

2.4 网格的移动

从求解域的物理区域Dp到逻辑区域DL变换的具体实现方法,是在选定了逻辑区域DL和给定了流场DP上的一个一致剖分T(设其节点为xi)后,先确定在流体在边界上的映射的情况,然后将这个边界上的映射记为给定的一个同胚φ在边界上的限制,再通过解Possion方程组

$

\Delta {\xi ^k} = 0,{\xi ^k}\left| {_{\partial {D_{\rm{p}}}}} \right. = \varphi \left| {_{\partial {D_{\rm{p}}}}} \right.,\left( {1 \le k \le n} \right)。$

(10)

根据上式就可以得到一个逻辑网格了,式(10)的解将求解域的物理区域Euclid度量变换成了逻辑区域的诱导度量$\sum\limits_{i = 1}^n {\frac{{\partial {\xi ^\alpha }}}{{\partial {x^i}}}\frac{{\partial {\xi ^\beta }}}{{\partial {x^j}}}} $。大量的数值试验证明[,对于同一个求解区域的物理区域,选取不同的逻辑区域,不会对计算结果产生明显的影响。

要完成网格的移动,最终还是要通过移动的向量场来实现。假设t时刻对应的物理网格为Tt(其结点记为Xti),通过计算控制函数M,在网格Tt上求解椭圆方程组

$

\frac{\partial }{{\partial {x^i}}}\left( {{G^{ij}}\frac{{\partial {\xi ^k}}}{{\partial {x^j}}}} \right) = 0,\xi \left| {_{\partial {D_{\rm{p}}}}} \right. = {\xi _b}。$

(11)

可得到流场网格的节点Xti在调和映射下的像ξti,进而得到它与逻辑网格之间的差δξi*=ξi-ξti。利用逻辑网格到流场网格上变换的一阶导数,将它插值为流场网格上的一个分片性的向量场,从而得到流场上的每个节点的移动方向δXi, *,于是流场网格的节点更新为

$

{X_t}: = X_t^i + \eta \cdot \delta {X^{i, * }},

$

(12)

式中,η为网格移动的步长。这样求解域的网格就达到了更新的目的。移动网格法应用于CFD数值仿真的程序流程如

图 1(Figure 1)

图 1 移动网格法应用于CFD的程序流程图

可以看出,移动网格求解CFD过程由2部分构成:网格移动和时间步进。网格移动本质上就是建立在流场网格(物理区域)与逻辑网格之间的调和映射的一个迭代过程。在这个过程中,网格逐步向调和映射逼近,最终得到需要的实际流场。在数值计算过程中,逻辑区域的初始网格保持固定,这个网格不用来接任何偏微分方程,但是它与方程(11)的解的误差用来实现网格的移动。

3 数值仿真算例

3.1 模型背景

当油箱做倾斜晃动的过程中,油箱内的油会在重力矢量的作用下来回晃动,由于表面没有约束,导致其变形很大而且非常不规则,采用传统均匀固定的网格几乎无法求解,然而用移动网格技术可以很好的解决此类问题。本案例借助多物理场耦合软件COMSOL Multiphysics中的计算流体动力学模块(CFD模块)和移动网格模块(ALE模块)来仿真油箱中油的运动规律。COMSOL Multiphysics作为全球第一款真正的多物理场耦合分析软件,采用基于偏微分方程建模的方式,因此在处理移动网格和控制方程耦合问题时有它特有的优势。模型参数为:矩形油箱,高度足够高,内部装有一定量的油,求解域长1 m,宽0.3 m,液体密度取1 270 kg/m3, 粘度取1.49 Pa·s,油箱摆动的最大倾角为4°。流体为牛顿流体,模型采用单向流的层流模型,不考虑导热过程。根据程序本身强大的网格划分功能自由剖分成三角形网格,其求解域的初始网格如

图 2(Figure 2)

图 2 求解域初始网格模型

3.2 CFD和ALE边界条件的确定

控制方程的求解域确定后,接下来就是要设置控制微分方程及移动网格的边界条件。

流体控制微分方程边界条件的确定:矩形左边界、右边界及下边界为滑动壁面边界条件;上边界为自由液面,为开边界,法向应力为零。

移动网格边界条件的确定:对于矩形区域的左边界和右边界,指定网格位移在水平方向为零,竖直方向自由变形;对于下边界,指定网格在水平方向及竖直方向都为零;对于自由液面,采用边界坐标系,指定网格法向的速度为“u·nx+v·ny”,即把网格的水平速度u和竖直速度v分解到法向, 切向速度不做约束。

通过以上设置,其实就是将移动网格和求解区域耦合起来,在进行瞬态分析时,每经过一个时间子步,网格就会产生一个变形,更新之后的网格模型又会成为下一个时间子步的初始条件,这样往复下去,就可以得到一段时间内网格的变形情况。

3.3 仿真结果及分析

采用软件提供的瞬态求解器求解,仿真时间为6 s,时间步长为0.1 s。其中时间t分别为1、1.3、1.6 s的速度矢量及网格变形如

图 3(Figure 3)

图 3 t=1 s网格分布及速度矢量图

图 4(Figure 4)

图 4 t=1.3 s网格分布及速度矢量图

图 5(Figure 5)

图 5 t=1.6 s网格分布及速度矢量图

通过移动网格技术,还可以追踪液体自由液面的运动情况,如

图 6(Figure 6)

图 6 求解域左右液面高程图

1) 将移动网格技术应用于CFD仿真计算,可以很好的模拟流体网格大变形的情况,较为真实地反应流体流动。

2) 在网格的变形过程中,网格的结构没有发生改变,网格的加密和稀疏化是自动实现的。而且在移动过程中,网格之间没有出现缠绕畸变等情况,保证了仿真结果的正确性和精度。

3) 对于网格的移动,只是网格节点位置的调整,而节点数和网格节点的数据结构并不会发生改变,因此移动网格在保证计算精度的同时,又不额外的增加计算量,大大节省计算机的内存开销,缩短了计算时间,程序的调试也变得简单很多。

4 结语

CFD问题可以最终归结为求解偏微分方程的问题,因此可以引入一种强有力的解偏微分方程的工具:移动网格技术。移动网格具有传统固定网格无法比拟的优点,将其应用于CFD的数值仿真领域,可以很好地解决广泛存在于自然界的流体区域大变形问题,而且在仿真过程中,不改变节点和网格数量,对计算机资源没有额外开销。因此,移动网格技术在CFD的数值仿真研究领域有着广泛的应用前景。

comsol移动网格_移动网格技术在计算流体动力学数值仿真中的应用相关推荐

  1. python划分有限元网格_有限元网格划分和细化

    工程师和研究人员使用有限元分析(FEA)软件,来建立现实世界场景的预测计算模型.在使用有限元分析软件时,我们通常从表征需要模拟的物质部分的计算机辅助设计(CAD)模型.材料属性.外加载荷及约束等相关信 ...

  2. python划分有限元网格_有限元网格划分的基本原则及通用方法(有限元科技内参)...

    的划分一方面要考虑对各物体几何形状的准确描述,另一方面也要考虑变形梯度的准确描述.为正确.合理地建立有限元模型,这里介绍划分网格时应考虑的一些基本原则. (1)网格数量 网格数量直接影响计算精度和计算 ...

  3. python划分有限元网格_有限元网格划分应该考虑些什么

    我们知道有限元算法的精髓是划分网格,网格对结果有非常大的影响.目前市面上软件对复杂几何模型进行网格划分非常简单,但是用户却不得不问自己:我如何知道网格是否真的好?我需要多少单元呢?网格密度对结果会产生 ...

  4. python划分有限元网格_有限元网格划分心得

    图 1 位移精度和计算时间随网格数量的变化 在决定网格数量时应考虑分析数据的类型. 在静力分析时, 如果仅仅是计算结构的变形, 网格数量可以少一些. 如果需要计算应力,则在精度要求相同的情况下应取相对 ...

  5. ansys时间步长怎么设置_在 ANSYS Workbench 的动态、静态仿真中,设置子步长(时间步长)的目的分别是什么?_学小易找答案...

    [计算题]塔架静力-地震响应谱分析 Course-Work8_塔架响应谱分析.pdf [简答题]简述虚位移原理与最小势能原理? [简答题]如何对草图中几何模型进行尺寸标注? [简答题]记3-5个单词 ...

  6. comsol移动网格_变形网格接口:旋转及直线平移

    我们总是希望能通过有限元方法来模拟会在其他域内旋转或平移的固体对象:此时,就可以使用 COMSOL Multiphysics 中的变形网格接口.本篇博客将分析一些会在其他域内发生大型直线平移或旋转的域 ...

  7. python划分有限元网格_有限元网格划分方法(转载)

    发信人: CadKey (Cadkey), 信区: CAD 标 题: 有限元网格划分方法--再灌一篇 发信站: 交通大学思源BBS (Tue Dec 5 19:07:44 2000), 转信 发信人: ...

  8. 显示网格_“小网格”显示大能量,“新模式”发挥大作用

    本网讯(首席记者孙守印 记者潘文航)大石桥市人民法院创新司法实践,将"法官驻网格"和"老杜说事"调解平台进网格达到有机统一,与钢都街道办事处联手打造的" ...

  9. 计算机仿真技术生物,生物神经网络计算机仿真中数学建模与信号处理

    摘要: A biological neural network composed of a great amount of neurons interconnected by synapses has ...

最新文章

  1. 知识图谱基本概念工程落地常见问题
  2. 麻省、北大、清华等顶尖高校与企业 20 位强化学习专家齐聚,RLChina 2021 强化学习暑期课免费报名啦!
  3. PHP 单例模式继承的实现方式
  4. IIS部署asp.net core webapi
  5. 负载均衡策略_负载均衡策略
  6. 推荐系统笔记:基于潜在因子模型的协同过滤(latent factor model)
  7. [Leetcode] Permutations 全排列
  8. 10个超级好用的快捷键技巧,知道的都是大神!
  9. 使用JDK 8轻松进行细粒度排序
  10. 【多元域乘法】多项式乘法电路原理及MATLAB详解
  11. 美国燃油“动脉”被黑客切断,网络安全走向哪里?专访山石网科|拟合
  12. python3编程入门_python3编程基础之一:操作
  13. [2767]翻转排序 sdutOJ
  14. 生成检测报告在哪_惠检LIMS系统在材料检测行业的应用
  15. 板绘新手sai入门基础教程,非常详细全面!
  16. vue引入iconfont阿里巴巴矢量图标库官网,自定义图标
  17. 图文详解win7实现局域网共享文件
  18. [渝粤教育] 新乡医学院三全学院 医学分子生物学 参考 资料
  19. matlab画心形线
  20. Flutter Animation 3D仿真书本翻页动画效果

热门文章

  1. 阿布扎比大学的计算机科学,2019年12月23日学术报告(邵岭 教授 阿联酋阿布扎比人工智能大学执行校长)...
  2. 基于MATLAB的OFDM系统仿真
  3. OFDM通信系统的仿真
  4. 碳森羿解读新能源市场调研报告,行业发展未来可期
  5. 南京工业大学计算机科学与技术在哪个校区,2019年南京工业大学浦江学院新生在哪个校区及新生开学报到时间...
  6. ARM/DSP+FPGA运动控制机器视觉控制器方案定制
  7. Auto.js Pro 微博APP唤醒+刷机自动化案例
  8. 关于手动备份postgres 及mysql数据库
  9. 《程序员羊皮卷》---- 读书笔记
  10. python一键绘制带边框统计的散点图