COMSOL多相流仿真方法
多相流通常包括气-液、液-液、液-固、气-固、气-液-液、气-液-固或气-液-液-固混合物的流动。本系列文章主要讨论气-液和液-液混合物的建模与仿真,并简单介绍固-气和固-液混合物仿真。此外,我们还将介绍 COMSOL 软件的CFD 模块和微流体模块中的一些案例模型和仿真策略。
通过数值仿真可以研究不同尺度的多相流。最小的尺度在几分之一微米左右,而最大的尺度可达几米或几十米。不同的尺度甚至可以相差大约 8 个数量级,最大的尺度可能比最小的尺度大 1 亿倍。这表明在整个尺度范围内,使用同一个力学模型在数值上无法解析从最小尺度到最大尺度的多相流。因此,多相流仿真通常被划分为不同的尺度。
在较小的尺度上,可以对相边界的形状进行详细建模;例如,气泡与液体之间的气液界面的形状。在 COMSOL 软件中,这种模型称为分离多相流模型,通常使用表面追踪法来描述此类模型。
在较大的尺度上,如果必须详细描述相边界,那么模型方程根本无法求解。反之,我们可以使用场,例如体积分数,来描述不同的相,而在所谓的分散多相流模型方程中,例如表面张力、浮力和相边界之间的传递等相间效应被看作源和汇。
上图显示了分离和分散多相流模型的主要区别。在上述两个示例中,均使用函数 Φ 来描述气相和液相。但是,在分离多相流模型中,不同相之间相互排斥,并存在一个清晰的相边界,在此边界上相场函数 Φ 发生突变。除了追踪相边界的位置以外,相场函数没有任何物理意义。
在分散多相流模型中,函数 Φ 描述了气相(分散相)和液相(连续相)的局部平均体积分数。通过平均体积分数可以在该区域的任一点顺利地找到介于 0 和 1 之间的值,这预示着在其他均质域中是存在少量还是大量气泡。也就是说,在分散多相流模型中,可以在同一时间和空间点上定义气相和液相;而在分离多相流模型中,在给定的时间和空间点上,只能定义气相或液相。
对于分离多相流仿真,COMSOL Multiphysics® 软件提供了3种不同的界面追踪方法:
-
水平集法 -
相场法 -
动网格法
水平集和相场都是基于场的方法,用水平集或相场函数的等值面表示相界面。动网格法与上述两种方法完全不同,它将相界面模拟为分隔两个域的几何表面,每个域对应不同的相。
基于场的问题通常是在固定的网格上求解,而动网格问题显然是使用动网格求解。
下面的动画显示了一个T型微通道中生产乳液的模拟结果,该模型使用了相场法进行求解。在动画中,我们可以看到相边界与网格的平面和边不一致,相边界由相场函数的等值面表示。
作为对比,下图显示了含动网格的上升气泡的验证模型。该模型的网格与相边界的形状保持一致,并且网格边与相边界重合。但是,动网格模型也有缺点,即气泡的变形使两个次级气泡从母气泡分离。此时,必须将原始相边界划分为几个边界。这种方法太复杂,并且尚未在 COMSOL® 软件中实现。因此,COMSOL® 软件中的动网格法无法处理拓扑变化,而相场法不存在这个缺点,可以处理相边界形状的任何变化。
对于给定的网格,动网格法具有更高的精度。根据这一优势,我们可以直接在相边界上施加力和通量。基于相场的方法需要围绕相边界表面建立密集网格,来解析该表面的等值面。由于很难定义一个精确贴合等值面的自适应网格,因此通常必须在等值面周围建立大量密集网格。在相同精度的情况下,这样做会使基于相场的方法的求解效率低于动网格方法。那么,我们应该什么时候使用不同的方法呢?
-
对于不希望发生拓扑变化的微流体系统,通常首选动网格法; -
如果需要拓扑变化,则必须使用相场法: -
当表面张力的影响较大时,首选相场法 -
如果可以忽略表面张力,首选水平集法
在湍流模型中,由于仅求解平均速度和压力,流体的细节会丢失。从这一点来看,表面张力效应在流体的宏观描述中也变得不那么重要。又由于湍流表面的流动比较剧烈,因此几乎不可能避免拓扑变化。所以,对于湍流模型和分离多相流模型的组合,最好使用水平集法。水平集法和相场法都可以与 COMSOL Multiphysics 中的所有湍流模型结合使用,如下图和动画所示。
万一相边界过于复杂而无法求解,我们必须使用分散多相流模型。
CFD 模块提供了 4 种不同原理的模型:
气泡流模型
适合密度较大的相中包含较小体积分数的低密度相
混合模型
适合连续相中包含较小体积分数的分散相(或几个分散相),其密度与一个或多个分散相相近
欧拉–欧拉模型
适用于任何类型的多相流
可以处理任何类型的多相流,且气体中有密集颗粒,例如流化床
欧拉–拉格朗日模型
适合包含相对较少(成千上万,而不是数十亿)的气泡、液滴或悬浮颗粒流体
适合使用方程模拟的气泡、颗粒、液滴,该方程定义了流体中每个颗粒的力平衡
气泡流模型显然适用于液体中的气泡。由于忽略了分散相的动量贡献,因此该模型仅在分散相的密度比连续相小几个数量级时才有效。
混合物模型与气泡流模型相似,但考虑了分散相的动量贡献。通常用于模拟分散在液相中的气泡或固体颗粒。还可以处理任意数量的分散相。混合物模型和气泡流模型均假设分散相与连续相处于平衡状态,即分散相不能相对于连续相加速。因此,混合物模型无法处理分散在气体中的大固体颗粒。
欧拉-欧拉模型是最精确的分散多相流模型,也是使用最广的模型。它可以处理任何类型的分散多相流。它允许分散相加速,并且对不同相的体积分数没有限制。但是,它为每个相定义了一组纳维-斯托克斯方程。
在实践中,欧拉-欧拉模型仅适用于两相流,而且它的计算成本(CPU 时间和内存)也较高。该模型的使用也相对困难,它需要良好的初始条件才能在数值解中收敛。
当连续流体中悬浮有一些(成千上万,但不是十亿)非常小的气泡、液滴或颗粒时,我们也许可以使用欧拉–拉格朗日模型模拟多相流系统。该方法的优点是计算成本相对较低。从数值的角度来看,这些模型通常也“不错”。因此,当连续流体中分散相的颗粒数量相对较少时,优选欧拉–拉格朗日模型。
此外,还有一些方法可以使用欧拉-拉格朗日模型来模拟大量粒子,即通过使用相互作用的项和体积分数来模拟包含数十亿个粒子的系统。这些方法可以在 COMSOL Multiphysics 中实现,但在预定义的物理接口中无法实现。
混合物模型能够处理任何相的组合,并且计算成本较低。在大多数情况下,我们可以使用此模型模拟。对于流化床(具有高密度和高体积分数的大颗粒分散相)之类的系统,只能使用 Euler-Euler 模型模拟。
分散多相流模型本质上近似于湍流模型,并且与近似的湍流模型的模拟结果非常吻合。在分散相和连续相之间,以及在分散相中的气泡、液滴和颗粒之间引入相互作用是完全可能的。这些相互作用可以在湍流模型模拟的湍流中产生。气泡流、混合物流和欧拉-拉格朗日多相流模型可以与 COMSOL Multiphysics 中的所有湍流模型结合使用。Euler-Euler 多相流模型仅被预定义为具有可实现性约束的标准 k-e 湍流模型。
即使可以使用超级计算机求解多相流数值模型方程,这也可能是一项非常艰巨的任务。如果没有计算能力的限制,表面追踪方法将用于所有类型的混合。实际上,这些模型仅限于微流体以及黏性液体自由表面的研究。
分散多相流方法允许研究包含数以亿计的气泡、液滴或颗粒的系统。但是,即使是最简单的分散多相流模型,也可以生成非常复杂且要求很高的模型方程。上述几种不同的模型非常适合描述特定的混合物,并能满足工程师和科学家以相对较高的精度和合理的计算成本研究多相流的要求。
后续我们将继续讨论有关多相流仿真的内容,敬请关注!