流体流动颗粒跟踪 – COMSOL 博客 - //www.denkrieger.com/blogs 发布博客 Fri, 04 Oct 2024 14:40:49 +0000 en-US hourly 1 https://wordpress.org/?v=5.7 使用蒙特卡罗方法和粒子追踪估算圆周率 //www.denkrieger.com/blogs/estimating-pi-using-the-monte-carlo-method-and-particle-tracing //www.denkrieger.com/blogs/estimating-pi-using-the-monte-carlo-method-and-particle-tracing#respond Fri, 24 May 2024 01:26:11 +0000 http://cn.staging.comsol.com/blogs?p=366811 如果说有一个数字可以统治所有的数学和科学,那就是圆周率。π 这个小小的符号有着悠久的历史,可以追溯到数千年以前。从对圆进行粗略近似的古代文明,到计算万亿位数的现代超级计算机,圆周率一直吸引着数学家和好奇者的想象力。这篇博客,我们将通过COMSOL Multiphysics®仿真软件提供的功能,以一种有趣和流行的方法来计算圆周率。

历史上对圆周率的近似计算

已知最早的圆周率近似值出现在古代文明中。巴比伦的数学家将圆周率近似为 3,这个数值在当时的建筑工程中是合理的,后来又被精确为 3.1251。埃及的数学家和印度的学者分别通过比较圆形和八边形的面积2 ,和通过巨量的计算3得出了近似的数值。包括阿基米德在内的一些希腊学者利用几何方法将圆周率的近似值精确到 3 个数量级以内4,使圆周率的计算取得了重大突破。

一幅 Archimedes的绘画。
 
Fibonacci的肖像画。

左图:Domenico Fetti 于 1620 年创作的 Archimedes Thoughtful(又名:Portrait of a Scholar)。图片属于公有领域,通过 Wikimedia Commons 共享。右图:Leonardo Fibonacci 的肖像。图片属于公有领域,通过 Wikimedia Commons 共享。

如今我们普遍使用的 3.14 近似值来自中国数学家刘徽,他提出这个近似值的目的是为了实用5。圆周率计算的后续发展涉及无穷级数估算和三角关系的利用。数学家们利用微积分推导出了无穷级数,可用于计算高精度的圆周率,其中 Fibonacci 和 Al-Khwarizmi 做出了重要贡献。

这些发展为我们使用的现代方法奠定了基础,包括计算机中使用的算法,即通过先进的数学工具和计算能力计算万亿位数的算法,以极高的精度计算圆周率。一些著名的计算方法包括 Chudnovsky 算法、Gauss–Legendre 算法、Machin 公式,以及 Monte Carlo(蒙特卡罗)方法。

通俗易懂的蒙特卡罗方法

蒙特卡罗方法是一种依靠随机抽样来估计数值结果的计算技术,特别适用于包含大量变量的问题。对于这种情况,可以利用内在的随机性来解决确定性问题。想象这样一个场景,你正在为一场聚会计算需要订购多少个披萨。这里的确定性问题是计算每个人要吃多少片披萨。与其询问每个人要吃多少片披萨,然后求和得出结果(这对一个大型聚会来说可能相当麻烦),不如随机挑选几个朋友,询问他们要吃多少片披萨,然后求平均值来解决问题。这有点像蒙特卡罗方法,即使用随机样本来估计一个值。蒙特卡洛法被广泛用于模拟复杂现象,如流体、统计力学、生物化学、密码学、社会学和心理学。

两幅漫画比较了简单加法和蒙特卡洛法,比喻一个人一个比萨订单和几个人一个比萨订单的抽样,其中抽样不包括一个非常饿的人,他可能会影响平均值。

这种思维可以扩展到现在流行的一种有趣的估计圆周率的方法。这种方法是在一个正方形内随机放置一些点,然后计算有多少点位于正方形内切圆内。圆内的点数与总点数之比可以用来近似计算圆周率。由于内嵌在边长为 2r 的正方形中的圆的面积为 πr² ,而正方形的面积为 (2r)² = 4r² ,因此它们的面积之比为 π/4。也就是说一个点落在圆内的概率是 π/4。因此,如果我们将圆内点数与总点数之比乘以 4,就可以得到 π 的估计值。这是因为随着点数的增加,比率会趋近于实际值 π/4。

半径为 r 的圆嵌于边长为 2r 的正方形中。
估计圆周率的基础。

在 COMSOL Multiphysics® 中使用蒙特卡罗方法估算圆周率

为了进行这个简单的蒙特卡罗模拟,我们将使用 数学粒子追踪 接口。在 COMSOL Multiphysics® 软件平台中添加粒子追踪模块就可以使用这个接口。虽然该模块的用户通常不会使用它来随机生成点,但出于可视化和美观的目的,我们决定在这个有趣的示例中使用它。

现在,我们来举例说明。一些粒子被随机释放到一个正方形区域并保持静止。对位于正方形内切圆区域内的粒子数量进行追踪,来获取圆周率的实时估计值。可以看到,随着点数的增加,估计值(蓝色实线)逐渐接近真实值(绿色虚线)。值得注意的是,估计值的精确度并不随点的数量呈线性变化。蒙特卡罗近似的统计误差通常与 1/sqrt(n) 成正比。这意味着,要将误差减少 10 倍,通常需要将点数增加 100 倍。

图中 Y 轴为估计值,X 轴为粒子数,蓝色实线上下波动,绿色虚线在所有粒子值中都保持在略高于 3.14 的水平。
在随机放置的点数不断增加的情况下,圆周率的实时估计值(蓝色实线)与真实值(绿色虚线)的比较。

接下来,我们使用 COMSOL Multiphysics® 中的 App 开发器创建了一个基于多物理场仿真模型的仿真 App。在这个 App 中,我们可以使用一个滑块改变点的数量,并获得圆周率在不同点数的估计值以及与真实值的误差。该 App 还将随机放置的点可视化,并通过颜色协调来识别位于圆内的点。

使用仿真App根据不同的点数估算圆周率,并获得对结果的可视化解读。

下一步

欢迎从 COMSOL 案例库下载包含 App 设计和相关文件的 MPH 文件:使用蒙特卡洛法估算圆周率值

  • 更多使用蒙特卡罗方法的模型:

    参考文献

    1. P. Beckmann, A History of π. New York: St. Martin’s Press, 1971
    2. C. Rossi, Architecture and Mathematics in Ancient Egypt. Cambridge University Press, 2004
    3. C. Krishna, A profile of Indian culture. Indian Book Company, 1975
    4. D.B. Damini & A. Dhar, How Archimedes showed that pi is approximately equal to 22/7. arXiv e-prints, 2020
    5. Y. Lam & T.S. Ang, Circle measurements in ancient China, Historia Mathematica, 1986
    ]]> //www.denkrieger.com/blogs/estimating-pi-using-the-monte-carlo-method-and-particle-tracing/feed/ 0 捕蚊器真的有用吗?通过粒子追踪法预测捕蚊器的性能 //www.denkrieger.com/blogs/how-well-do-mosquito-traps-work-observing-their-effectiveness-with-particle-tracing //www.denkrieger.com/blogs/how-well-do-mosquito-traps-work-observing-their-effectiveness-with-particle-tracing#comments Thu, 12 Oct 2023 06:19:42 +0000 http://cn.staging.comsol.com/blogs?p=348451 在天气晴朗、温度适宜的季节,大自然会吸引追求冒险的徒步旅行者和快乐的露营者。可是,有植被的地方也有等待寻找下一个目标的蚊子。露营者该怎么办呢?只要蚊子觉得捕蚊器比附近的血源更有吸引力,捕蚊器就有效。今天我们来看一个有趣的仿真案例,即通过基于方程建模的方法来看看捕蚊器是否能让露营者的森林小屋保持舒适无蚊,或者蚊虫是否会扼杀露营的乐趣。

    吸引蚊子的物质:二氧化碳和乳酸

    为什么雌性蚊子更容易被人类和动物吸引?原因有很多。首先只有雌性蚊子才会吸血,因为它们需要血液中的蛋白质来产卵。根据 新加坡国家环境局的说法,不同种类的蚊子对某些引诱剂更敏感,这也是许多商用捕蚊器会将不同的引诱剂结合使用的原因。

    视觉线索(如运动)和热线索(如体温)在吸引雌蚊进入血源方面起到一定的作用,但很大一部分因素是来自气味。蚊子更倾向于被二氧化碳、乳酸(人类汗液中的一种化合物)和某些信息素等物质吸引。在捕蚊器中使用这些线索作为诱饵有助于提高捕蚊器的效果。

    叶子上的蚊子近照。
    叶子上的蚊子。照片由Syed Ali拍摄,来自Unsplash

    有了对蚊子难以抗拒的因素的基本了解,再加上装备的基于方程建模和粒子追踪功能的仿真软件,让我们来看一个简单的捕蚊器在吸引这些小家伙方面表现如何。

    模拟小屋中的捕蚊器

    我们将利用 COMSOL Multiphysics® 软件的两个功能来进行基于方程的建模:一个是选择 数学 接口,另一个是解释用户添加的数学方程,以及生成数值模型时将其纳入的特征。

    在制作捕蚊器模型时,需要考虑用什么数学方程来描述蚊子的飞行。一种方法就是用拉普拉斯方程来描述吸引物的浓度。本文示例中的模型求解的是速度势能的拉普拉斯方程,它被设计成与一般蚊子吸引物的浓度成正比。速度势能代表所有可能吸引蚊子的分子,包括二氧化碳和捕蚊器散发的气味。

    幸福的睡眠

    为了更直观地理解这个模型场景,让我们把露营者带回来,假设他住在森林中的一间小木屋里。这是一个温暖的夜晚,为了睡得舒服,他决定打开窗户。他在床头安装了一个捕蚊器,认为这应该能保证他的安全。根据制造商的说法,这种捕蚊器应该比真正的血源有超过60%吸引力,所以他选择碰碰运气。

    木屋的内部模型,有两扇关闭的窗户,一扇打开的窗户和一扇绿色的门在开着的窗户对面,有一个人睡在床上,上面放着一个捕蚊器。
    小木屋模型,窗户打开,一个人正在睡觉,床头的架子上放着一个捕蚊器。

    啊哦!我们的露营者犯了一个错误:他在睡梦中动来动去。他梦见了第二天早上的远足美景,他不停在动,毯子也在动,导致他的躯干和腿部没有遮挡。接着,一群蚊子从打开的窗户飞进来,它们在找血。这些蚊子要么去找露营者,要么去找捕蚊器。露营者是会平安无事,还是一觉醒来浑身发痒呢?

    攻击路径

    为了确定蚊子的去向,我们需要在模型中添加一些方程。本例中,我们使用狄利克雷边界条件特征添加了三个边界:打开的窗户、捕蚊器和露营者裸露的皮肤。由于捕蚊器比人的皮肤更有吸引力,我们为捕蚊器和皮肤分配了不同的速度势能,来表示这种对比。

    我们还将在示例中使用 COMSOL Multiphysics 的附加产品——粒子追踪模块。当然,使用该模块的用户一般不会模拟蚊子群这样夸张的场景;更典型的例子是模拟代表离子、细胞、水滴、行星或恒星等的粒子。在我们这个有趣的例子中,每个粒子都代表一只蚊子。粒子追踪模块还包括求解用户定义的粒子运动方程的功能,我们在这里用它来解释蚊子在小木屋中的运动。该模型的设置是为了计算有多少粒子在选定的时间内到达某一点——在本例中,就是到达蚊子皮肤和捕蚊器的位置。

    我们来看看模拟结果:

     

    蚊子进入房间时的模型。每个黑点代表一只蚊子。红线代表一只蚊子的活动轨迹。

    捕蚊器与人类皮肤:蚊子更喜欢哪一种?

    建立模型并求解后,我们可以绘制结果图,比较在 150 秒或 2.5 分钟内,有多少蚊子飞到了我们可怜的露营者的皮肤上,以及捕蚊器的情况。如下图所示,随着时间的推移,落在皮肤上的蚊子数量会增加,部分原因是野营者比捕蚊器更靠近打开的窗户。不过,落在诱捕器上的蚊子数量也在增加,并在给定时间的一半时超过了落在皮肤上的蚊子数量。

    这张图表显示,在150秒的时间内,更多的蚊子落在了陷阱里,而不是皮肤上。
    在 150 秒的时间范围内,比较落在皮肤上的蚊子数量和捕蚊器上的数量。

    换句话说,他使用捕蚊器比不使用捕蚊器要好,而且(虚构的)制造商对预期性能也是诚实的。利用COMSOL软件基于方程的建模功能,我们能够求解自定义方程,分析蚊子行为与捕蚊器之间的关系,而这一切都不会造成蚊虫叮咬!

    更多热门内容

    ]]>
    //www.denkrieger.com/blogs/how-well-do-mosquito-traps-work-observing-their-effectiveness-with-particle-tracing/feed/ 3
    如何使用 COMSOL® 计算流动模型中的停留时间 //www.denkrieger.com/blogs/how-to-compute-residence-time-in-flow-models-with-comsol //www.denkrieger.com/blogs/how-to-compute-residence-time-in-flow-models-with-comsol#respond Tue, 01 Jun 2021 06:53:12 +0000 http://cn.staging.comsol.com/blogs?p=279701 在设计和建模化学反应器等设备时,停留时间是表征系统的其中一个量。这个量的计算与流场的计算是分开的,我们可以使用 COMSOL 软件中的粒子追踪模块来完成。今天这篇博客,我们将详细介绍如何计算流动模型中的停留时间。

    计算停留时间和其他因素

    假设我们正在模拟一个类似于生物传感器的小型流通池。我们从流体动力学分析开始,计算一组障碍物周围的水流。在这种情况下,我们可以将问题简化为二维计算模型,如下图所示。

    反应器中稳态层流模型。
    反应堆中障碍物周围的水流图像。

    一旦计算出流场,我们还就可以绘制和计算以下内容:

    • 停留时间分布函数
    • 累积分布函数
    • 平均停留时间
    • 方差

    要求解这些量,最方便的是使用拉格朗日公式来跟踪随流体移动的计算粒子,而不是使用用于求解流场的欧拉公式。出于这个原因,以及可用于方便地评估粒子追踪结果的内置功能,我们将使用粒子追踪模块的功能来解决这个问题。

    使用 COMSO 软件中的粒子追踪功能

    COMSOL 学习中心有一篇关于沿流线积分和提取粒子统计数据的文章介绍了如何使用粒子追踪模块来追踪流场的流线并沿这些流线进行积分。除了这些方法之外,还有其他技术可以记录流中的粒子,如之前的博客文章“ COMSOL Multiphysics® 中粒子计数的不同方法”。

    反应器中流动流线的可视化
    流动的流线,以沿着流动追踪的粒子到达该点所需的时间着色。

    上面显示的结果可视化了沿着流线追踪的计算粒子的时间。下图显示了出口处的停留时间分布和累积分布。还可以提取标量值,例如平均停留时间和方差,如上面提到的学习中心文章中所述。

    显示停留时间分布(左)和累积分布(右)的图
    停留时间分布图(左)和累积分布图(右)。

    结束语

    在这里,我们只跟踪了流场的流线,但粒子跟踪模块的功能在增强流场分析方面具有广泛的应用。顾名思义,当我们要考虑流中的实际粒子时,它特别有用,在这种情况下,我们还可以包括以下效果:

    • 粒子惯性
    • 粒度分布
    • 运输过程中尺寸/质量的变化
    • 用运动粒子求解的任意附加ODE控制方程
    • 作用在粒子上的力
      • 曳力
      • 湍流耗散
      • 拉力
      • 重力
      • 离心力
      • 电力
      • 介电泳力
      • 磁力
      • 磁泳力
      • 布朗(分子扩散)力
      • 热泳力
      • 声泳力
      • 粒子-粒子相互作用力
    • 耦合流体粒子相互作用

    有关其他可用公式的概述,请参阅上一篇关于流体中粒子追踪的博客文章。

    下一步

    单击下面的按钮,了解有关“粒子追踪模块”中专门特性和功能的更多信息。

    ]]>
    //www.denkrieger.com/blogs/how-to-compute-residence-time-in-flow-models-with-comsol/feed/ 0
    如何使用 COMSOL Multiphysics® 分析真空系统中的稀薄气体 //www.denkrieger.com/blogs/how-to-analyze-turbomolecular-pumps-with-comsol-multiphysics //www.denkrieger.com/blogs/how-to-analyze-turbomolecular-pumps-with-comsol-multiphysics#respond Tue, 12 Jan 2021 01:33:20 +0000 http://cn.staging.comsol.com/blogs?p=245151 涡轮分子泵是一种能够达到超高真空(UHV)条件的机械真空泵。由于气体分子之间相互碰撞概率较低,所以需要专用的数值方法模拟超低压条件下的气流。COMSOL Multiphysics® 软件提供了两种完全不同的计算方法用于模拟高度稀薄气体:角系数方法(angular coefficient method)和蒙特卡罗方法(Monte Carlo method)。在这篇博客文章中,我们介绍了如何使用蒙特卡罗方法对涡轮分子泵进行模拟。

    编者注:此文最初发布于 2017 年 8 月 9 日。现已更新以反映软件的最新功能。

    真空系统简介

    在许多高科技工业应用(例如半导体芯片的制造)中,我们都能发现真空技术。真空环境在基础研究中也是必不可少的。例如,粒子加速器无法在正常大气压下工作,因为被加速的粒子大概率会与周围的空气分子发生碰撞。

    由不锈钢制成的真空室的照片。
    典型的真空腔室。

    在真空环境中,气体的绝对压力远低于典型的海平面大气压,后者约为 101,325 帕斯卡(Pa)或 14.7 磅每平方英寸(psi)。大气主要由氮气和氧气组成,但是在处理真空室时,必须考虑包含的每种气体,甚至腔室壁及配件的排出气体,润滑剂(升华和蒸发气体)也会对真空室压力产生重大影响。

    真空泵 用于抽除真空室中的气体,从而降低真空室内压力。真空泵有许多不同的类型,包括:

    • 旋片泵
    • 定片泵
    • 扩散泵
    • 涡轮分子泵
    • 低温泵
    • 离子泵

    通过串联的方式使用两种或多种不同类型的泵非常普遍,每种泵都有其适合的特定压力范围。例如,旋片泵或定片泵可以在大气压下排出空气,同时将真空室的压力降低到小于 0.1Pa 左右。涡轮分子泵可以达到超高真空条件(小于 10-7 Pa),但在大气压下却无法正常工作。为了将压力从大气压一直降低到超高真空,我们首先可以使用旋片泵(以这种方式使用时被称为粗抽泵)将压力降至 0.1 Pa,然后使用涡轮分子泵将压力从 0.1Pa 降低至 10-7 Pa。

    一个涡轮分子泵的照片在油毡地板上的与放置在它旁边的一副安全玻璃的。

    涡轮分子泵。

    但要注意的是,在实际工作中真空泵并不能达到理想的真空度。在大气压和室温下,1 立方米的空气中有超过 1025 个分子。即使在超高真空中,1 立方米的空气中仍包含数万亿个分子!我们抽真空目的不是要排除所有的空气分子,而是要尽量排除足够多的空气分子,以免它们阻碍腔室内的实验或制造过程。

    真空系统中的稀薄气流

    涡轮分子泵只有在通过其的气流是自由分子流时 才能工作。换句话说,气体压力必须足够低,以使分子撞击周围表面的频率比分子间的碰撞的频率更加频繁。因此,该泵仅在使用粗抽泵将压力降低到约 0.1Pa 之后才能实现超真空条件。

    通常,在考虑气流时,我们会将气流设想为连续流。当空气通过狭窄的通道流入房间时,这股空气会散开,并可能在所有侧面形成再循环区域。当流动的空气到达障碍物时,我们期望它能绕开障碍物流动,填充其后面的空间。由于空气中的氮、氧和其他气体分子每秒会相互碰撞数十亿次,因此它会以这种方式运动。

    在极低的气压下,气体表现为自由分子流,气体流动主要由分子-壁碰撞而不是分子-分子碰撞控制。如果气体从狭窄的孔口释放到大的开放空间中,那么大多数分子将不会因分子间碰撞而向四面八方扩散,而是会沿几乎同一个方向飞出,这种现象被称为分子束射

    当气体分子撞击表面时,它们可能会被表面吸附或反射离开表面。即使表面肉眼上看起来非常光滑,分子也会在表面在随机方向上反射分子。一个合理的近似是给以不同反射角的概率分布。通常,此概率分布函数在垂直于表面的方向上对称。

    并排示意图比较了连续流和分子流通过窄管进入腔室时的情况。
    通过窄管进入腔室的连续流(左)和分子流(右)的比较。

    涡轮分子泵详解

    设想一下,如果用平板或球拍击打球,那么在球与球拍接触时会朝不同的方向弹跳,具体取决于球拍的角度。这就是涡轮分子泵的基本工作原理。

    涡轮分子泵由许多环组成,这些环相互堆叠,并沿一条公共轴线排列。其中一些环绕轴旋转,称为转子,其他的环被固定在一个固定的位置上,称为定子。一个典型的设计可能包含多对交替的转子和定子。每个环内有许多狭窄的倾斜叶片。通常,环中的每个叶片以相同的角度倾斜并且等距分布。因此,如果有 N 个叶片,那么环具有 N 倍轴向对称性。

    由于叶片在转子中倾斜,当分子撞击叶片时,它更有可能沿一个方向从转子弹回,而不是朝相反方向弹出。下面的图示即显示了一个没有相邻定子的单个转子中的这种运动行为。假设此叶片环逆时针旋转,如红色箭头所示。一个分子更有可能击中这些叶片之一的底面而不是顶面。这些分子更可能向下偏转(沿蓝色箭头的方向)而不是反向弹出。分子这种向下方向的优先偏转,可以减小在该转子上方区域中的气压。

    为了使传输概率的差异(从上到下与从下到上)更大,叶片表面的移动速度应等于或大于分子的平均热速度。对于室温下的大多数气体,该速度约为每秒几百米,但是对于非常轻的气体(如氢气),速度明显更高。因此,当使用涡轮分子泵将腔室压力降低至超真空时,腔室中的大多数残留气体将为氢气(参考文献1)。

    涡轮分子泵的叶片由被称为 的单元组成。典型的泵级可能包含8–20个这类在转子和定子之间交替的叶片环(参考文献2)。为简单起见,我们当前的模型仅考虑了单个转子。

    具有单个转子以及蓝色和红色流线箭头的涡轮分子泵模型。

    通常,我们建立涡轮分子泵数值模型的主要目的是预测其泵速和压力比。这些参数可以通过分子在整个叶片环上的传输概率来预测,即从顶部进入级后从底部离开的分子比率,反之亦然。

    选择数值方法

    在 COMSOL® 软件中,有 2 种主要的数值方法可用于模拟极稀薄气流。一种称为角度系数法,可以通过分子流模块提供的自由分子流 物理场接口使用。角度系数方法是一种视图因子计算,可以计算模型边界处的分子通量,并假设气体分子只会与壁碰撞而不会与其他分子碰撞。角系数方法的主要缺点是它是准静态的,也就是说,它忽略了分子的有限飞行时间。在这里,这是一个重要的因素,因为与分子速度相比,叶片很容易达到每秒数百米的速度。

    为了充分计算叶片在涡轮分子泵的运动,我们将选择使用粒子跟踪模块下的数学粒子追踪 接口执行蒙特卡罗方法进行模拟。在蒙特卡罗模型中,我们通过求解牛顿运动定律来解决气体中单个分子的运动。由于计算成本的限制,泵中单个分子的实际数量可能太大,因此无法单独对每个分子进行建模,但是我们可以采用一个有代表性的分子群样本(例如 100,000 个)进行建模,然后对整个分子群进行推算。

    用蒙特卡罗法预测气体分子在简化的涡轮分子泵级中的传输概率,该级由单个旋转叶片环组成。正如我们前面所讨论的,包含N个叶片的典型泵转子通常会表现出N倍旋转对称性。因此,我们仅考虑通过两个相邻叶片之间的单个间隙的分子,便可以进一步简化模型并降低计算成本。

    一个简化的涡轮分子泵模型,其中考虑了两个叶片之间的单个间隙。

    叶片之间的间隙也由两个圆柱形表面(内部的根壁 和外部的 顶壁)界定。我们可能会从前面的 2 个图看到,分子可以穿过的实际空间不是整个圆盘,而是一个距离旋转轴有一定距离的环形区域。这是因为叶片上任一点的速度与其从中心到径向的距离成正比,

    \textrm{Blade velocity} = \textrm{Angular velocity} \times \textrm{Radius}

    因此,无论转子旋转多快,尝试将根壁移到更靠近旋转轴的方向上,收益都会减少。

    角速度的实际限值是每分钟小于 100,000 转(参考资料1)。

    选择参照系

    在选择参照系时,我们的模拟域是前后由相邻叶片界定,而在左边和右边则由根壁和顶壁界定的空白区域。气体分子可能会从顶部和底部进入域,我们的目标是确定从顶部释放的分子中有多少会从底部出来,反之亦然。

    在这里,我们遇到了另一个技术挑战:转子叶片之间的空间沿圆周运动。在移动域中进行建模时,必须决定在模型中使用哪个参照系。通常,选择下列选项之一:

    1. 在“实验室”参考系中建立模型。也就是说,从观察者站在静止不动的外部并观察其旋转的角度对转子进行建模。为此,我们可能必须使用专用的旋转域节点显式地使几何图形随时间旋转。从这个角度来看,分子从一个表面移动到另一个表面时遵循直线路径。
    2. 在连接到转子的可移动参考系中建立模型。就是说,想象一下,如果观察者能够缩小并乘坐上这些转子叶片之一,分子的轨迹将如何?在此参考系中,单个气体分子遵循的路径可能看起来是弯曲的。

    在此示例中,我们将使用第二种方法建模。但是,这带来了额外的复杂性,下面我们将详细介绍。

    旋转参照系中的粒子追踪

    这些分子遵循牛顿第二运动定律,

    \frac{\textrm{d}}{\textrm{d}t}\left(m_\textrm{p}\frac{\textrm{d}\mathbf{q}}{\textrm{d}t}\right) = \mathbf{F}_\textrm{t}

    其中,q 是粒子位置,mp 是粒子质量,Ft 是所有作用力的总和。

    在这个示例中,我们忽略了重力,因此合力为零。但是牛顿第二定律是在惯性 参考系中制定的,这意味着它只有在观察者不加速时才成立。旋转是一种加速度,因此该模型是在非惯性 参考系中建立的。

    为便于理解惯性和非惯性参考系,请想象一下在移动的卡车后面尝试执行简单的物理实验(例如,弹跳球或跟踪摆的运动)。如果卡车停止或在巡航控制系统打开的情况下以直线行驶,则这些实验将得到相同的结果。但是,如果卡车加速,减速或转弯,实验将得出不同的结果。

    如果从根壁到顶壁的距离比从旋转轴到根壁的距离小得多,也就是说,

    \frac{R_\textrm{tip}-R_\textrm{root}}{R_\textrm{root}}\ll 1

    那么,作为第一近似,我们可能会忽略我们的参考系非惯性这一事实。

    实际上这等效于将叶片环视为一条无限直线的叶片,它们都沿相同方向移动。这个准 2D 涡轮分子泵教程模型中做了这样的假设,并在参考文献3 进一步讨论。这种简化的假设大大减少了所涉及的计算工作量,因为它使粒子在连接到叶片的参考系中沿直线移动。当转子缓慢旋转时,这是一个合理的近似,但是随着转子角速度的增加,它的准确性将降低。

    为了执行高保真的蒙特卡罗模拟,必须考虑我们的参照系在旋转这一事实。幸运的是,“数学粒子追踪” 接口提供了专门用于此目的的专用物理功能。我们可以将旋转域节点添加到模型中,用于定义在旋转参照系中追踪粒子而产生的虚拟力,

    \begin{align}
    \mathbf{F}_\textrm{t} &= \mathbf{F}_\textrm{cen} + \mathbf{F}_\textrm{cor}\\
    \mathbf{F}_\textrm{cen} &= m_\textrm{p}\mathbf{\Omega}\times\left(\mathbf{q}\times\mathbf{\Omega}\right)\\
    \mathbf{F}_\textrm{cor} &= 2m_\textrm{p}\mathbf{v}\times\Omega
    \end{align}

    这些虚拟的力称为离心力 Fcen 和科里奥利力 Fcor。在这些等式中,v 是粒子速度,Ω 是旋转参考系的角速度。为简单起见,这里假设旋转轴穿过原点。

    “旋转框架”节点设置的屏幕截图,其中“方程式”和“旋转框架”部分已展开,并且在“图形”窗口中显示了一个紫色矩形。
    旋转参考系节点的设置。

    粒子释放和边界条件

    通过将旋转域 节点添加到模型,将自动定义离心力和科里奥利力。剩下的就是定义粒子释放和边界条件。

    使用顶部和底部边界上的 入口 节点将分子释放到模拟域中。该模型使用 速度分布,其中每个分子的初始速度从麦克斯韦分布中采样,并根据余弦定律采样其初始方向。

    f(\theta,\phi)\textrm{d}\theta\textrm{d}\phi \propto \sin \theta \cos \theta \textrm{d}\theta\textrm{d}\phi \qquad f(V) = \left(\frac{m_\textrm{p}}{k_\textrm{B}T}\right)^2\frac{V^3}{2}\textrm{exp}\left(-\frac{m_\textrm{p}V^2}{2k_\textrm{B}T}\right)

    然后,从释放的分子速度中减去叶片速度,因为在实验室参考系中,与泵级相邻的区域中的气体漂移速度为零。

    展开了“入口设置”窗口的 COMSOL Multiphysics Model Builder UI 的屏幕截图。
    入口节点的设置。

    叶片壁、根壁和顶壁均使用热再发射 边界条件。每当分子撞击到这些表面之一时,就会以新的随机速度和随机方向弹回到区域中。假定叶片壁和根壁与旋转参考系一起移动,而顶壁则假定固定在实验室(惯性)参考系中。对于击中顶壁的任何分子,使用内置设置从重新初始化的粒子速度中减去运动参考系的速度。

    展开了“热释放”节点设置的“模型开发器”,在“图形”窗口中显示了一个灰色矩形。
    顶壁处的“热再发射”节点的设置。

    结果

    传输概率定义是释放的分子将从泵级的一侧穿过到另一侧,而不是被叶片弹回的比例。当叶片旋转时,我们可以定义两个不同的传输概率:正向(在上图中,从上到下)和反向(从下到上)的传输概率。

    根据分子在向前和向后的传输概率,我们可以获得最大压缩比 Kmax 和最大速度因子 Wmax

    K_\textrm{max} = \frac{M_{12}}{M_{21}} \qquad W_\textrm{max} = M_{12}-M_{21}

    其中,M12 是正向的传输概率,M21 是反向的传输概率。

    下面,让我们看一些将这些传输概率与无量纲速度比 C 进行比较的图。这是叶片速度(以均方根或均方根半径测量)与气体中分子最可能的速度之比。分子速度是分子质量和气体温度的函数。通常,分子在较热的气体中运动更快,而较轻的分子则比较重的分子运动更快。因此,涡轮分子泵在抽出氩、氮和氧等较重的物质方面表现更好,但在抽氢方面效率较低(参考文献2)。

    当叶片静止时(C = 0),向前和向后的传输概率大致相等。随着叶片开始更快地旋转,正向的概率接近 1,而反向的概率接近零。

    绘制在正向(红线)和反向(蓝线)方向上传输的粒子的传输概率和速度比的图表。
    正向和反向传输概率随速度比的变化。

    我们还研究了叶片的速度比如何影响压缩比和泵速。为了产生足够的压缩和速度,分子泵使用了由多个圆盘和不同类型的叶片组成的多个叶片结构。靠近腔室入口的叶片设计为具有较高的泵送速度和较低的压缩比,而靠近前级真空管线(与粗抽泵的连接部)被设计为具有较低的泵送速度和较高的压缩比。

    当这些叶片的速度增加时,如下图所示,最大压缩比和速度因子增加。这些图与参考文献4中报道的类似研究非常吻合。

    图表以蓝色绘制最大压缩比,以红色绘制速度因子,显示了涡轮分子泵中叶片速度的影响。
    叶片速度对最大压缩比和最大速度系数的影响。

    后续操作

    这个示例重点介绍了几个功能,这些功能让我们更加便捷地使用蒙特卡罗方法模拟涡轮分子泵。单击下面的按钮,尝试自己建模。

    了解有关 COMSOL Multiphysics® 中粒子追踪的更多信息

    请查看以下有关粒子追踪的博客文章:

    参考资料

    1. J.M. Lafferty, ed., Foundations of Vacuum Science and Technology, John Wiley & Sons, 1998.
    2. J.F. O’Hanlon, A User’s Guide to Vacuum Technology, 3rd ed., John Wiley & Sons, 2003.
    3. S. Katsimichas, A.J.H. Goddard, R. Lewington, and C.R.E. De Oliveira, “General geometry calculations of one-stage molecular flow transmission probabilities for turbomolecular pumps,” Journal of Vacuum Science & Technology A: Vacuum, Surfaces, and Films, vol. 13, no. 6, pp. 2954–2961, 1995.
    4. Y. Li, X. Chen, Y. Jia, M. Liu, and Z. Wang, “Numerical investigation of three turbomolecular pump models in the free molecular flow range,” Vacuum, vol. 101, pp. 337–344, 2014.
    ]]>
    //www.denkrieger.com/blogs/how-to-analyze-turbomolecular-pumps-with-comsol-multiphysics/feed/ 0
    模拟流体中的粒子时应该使用哪种公式? //www.denkrieger.com/blogs/what-formulation-should-i-use-for-particle-tracing-in-fluids //www.denkrieger.com/blogs/what-formulation-should-i-use-for-particle-tracing-in-fluids#comments Fri, 04 Dec 2020 01:43:36 +0000 http://cn.staging.comsol.com/blogs?p=243341 当你第一次尝试使用 COMSOL 软件运行粒子追踪模拟流体中非常小的粒子(通常直径为几十微米或更小的粒子)时,可能会发现瞬态求解器使用的时步比平常要短得多。这通常是由于粒子的运动方程表现出数值刚度而导致的。在这篇博客中,我们将介绍与粒子仿真有关的刚度的概念,并提供一些基于粒子大小选择正确方程的指南。

    示例:小球形粒子的重力沉降

    以一个小的球形粒子为例,当它掉落在一个以速度 u (SI 单位:m/s)匀速流动的流体中时,遵循牛顿第二运动定律,

    (1)

    \frac{\textrm{d}}{\textrm
    {d}t}\left(m_\textrm{p}\frac{\textrm{d}
    \mathbf{q}}{\textrm{d}t}\right) = \mathbf{F}_\textrm{t}

    其中,

    • mp(SI单位:kg)是粒子的质量
    • q(SI单位:m)是粒子的位置矢量
    • Ft(SI单位:N)是作用在粒子上的净力或总力

    对于一个在流体中下沉的粒子,它的总力是重力 Fg 和曳力 FD 的总和,

    (2)

    \mathbf{F}_\textrm{g} = \frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}m_\textrm{p}\mathbf{g}
    \qquad
    \mathbf{F}_\textrm{D} = 3\pi \mu d_\textrm{p}\left(\mathbf{u}-\mathbf{v}\right)

    其中,

    • ρp(SI 单位:kg/m3)是粒子的密度
    • ρ(SI 单位:kg/m3)是周围流体的密度
    • g(SI单位:m/s2)是重力引起的加速度(海平面以下约为 9.8m/s2
    • μ(SI 单位:Pa s)是周围流体的动力黏度
    • dp(SI 单位:m)是粒径
    • u(SI 单位:m/s)是周围流体的速度
    • v(SI 单位:m/s)为粒子的速度(v≡dq/dt

    重力表达式中的(ρp-ρ)/ρp 项代表浮力。当粒子(例如,空气中的固体粒子)比流体重得多时就会取代流体,其浮力的值接近 1。当粒子和周围的流体具有相同的密度时,浮力值接近于零,在这种情况下,粒子被称为悬浮粒子

    此处使用的曳力表达式来自斯托克斯曳力定律(Stokes drag law)。当粒子的相对雷诺数非常小时,此曳力定律较为适用:

    \textrm{Re}_\textrm{r} \equiv \frac{\rho d_\textrm{p}\left|\mathbf{u}-\mathbf{v}\right|}{\mu} \ll 1

    这对于较小的粒子更有效。

    假设粒子没有改变大小(dpmp为常数),则球形粒子的质量是

    (3)

    m_\textrm{p} = \frac{\pi}{6}\rho_\textrm{p}d_\textrm{p}^3

    结合方程1–3,我们得到粒子运动方程的简化表达式:

    (4)

    \frac{\textrm{d}^2 \mathbf{q}}{\textrm{d}t^2}
    =
    \frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}\mathbf{g}
    +
    \frac{1}{\tau_\textrm{p}}\left(\mathbf{u}-\mathbf{v}\right)

    这里,引入了常数 τp

    \tau_\textrm{p} \equiv \frac{\rho_\textrm{p}d_\textrm{p}^2}{18\mu}

    τp 具有时间单位,并且通常被称为拉格朗日时间尺度(Lagrangian time scale)粒子速度响应时间(particle velocity response time),下面我们将解释其原因。

    进一步简化方程,假定周围的流体是静止的(û=0),并且所述粒子初始是静止的(q=0, v=0, 时间 t= 0)。假设我们对齐坐标系,以使重力矢量指向 –y 方向。然后,根据方程4,粒子位置的 y 分量方程变为

    (5)

    \frac{\textrm{d}^2 q_y}{\textrm{d}t^2}
    =
    -\frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}g-\frac{1}{\tau_\textrm{p}}v_y

    当给定初始条件为 qy=0 和 vy=0 时,方程5 的精确解或解析 解为

    \begin{aligned}\\
    q_y &= -v_\textrm{t}\left\{t+\tau_\textrm{p}\left[\exp\left(-\frac{t}{\tau_\textrm{p}}\right)-1\right]\right\}\\
    v_y &= -v_\textrm{t}\left[1-\exp\left(-\frac{t}{\tau_\textrm{p}}\right)\right]\\
    \end{aligned}

    其中,vt 是自由沉降速度,

    v_\textrm{t} \equiv \tau_\textrm{p}g\frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}

    转换为无量纲变量

    为了更好的理解粒子在 τp 之前最初一段时间是如何加速的,我们可以用相应的无量纲量(t´, qy´, vy´)代替时间、位置和速度(t, qy, vy),定义为

    t^{\prime} \equiv \frac{t}{\tau_\textrm{p}} \quad\quad \\q_y^{\prime} \equiv \frac{q_y}{v_\textrm\{t}\tau_\textrm{p}} \quad\quad \\v_y^{\prime} \equiv \frac{v_y}{v_\textrm{t}}

    将这些无量纲变量代入解析解中,得到

    \begin{aligned}q_y^{\prime} &= t^{\prime} – \exp\left(-t^{\prime}\right)+1\\
    v_y^{\prime} &= -1 + \exp\left(-t^{\prime}\right)\\\end{aligned}

    在下图中,无量纲的位置和速度被绘制成为无量纲时间 t 的函数。该绘图表明粒子速度逐渐接近自由沉降速度,粒子加速主要发生在拉格朗日时间尺度 τp 最初一段时间。在此初始加速期之后,粒子位置似乎呈线性变化。

    用 COMSOL Multiphysics 建模的,正在经历重力沉降的粒子的无量纲位置和速度的一维图。
    从静止开始,经历重力沉降的粒子的无量纲位置和速度的绘图。

    一些典型粒径的时间尺度

    为了更好地了解粒子加速所涉及的时间尺度,假设粒子为密度约为 2200 kg/m3 的石英玻璃珠。下表列出了不同粒径的粒子在空气和水中的一些拉格朗日时间尺度值。

    流体 粒径(μm) 流体的动力黏度(Pa s) 流体密度(kg/m3 响应时间(s) 自由沉降速度(m/s)
    1 1.009×10-3 998.2 1.2×10-7 6.5×10-7
    20 1.009×10-3 998.2 4.8×10-5 2.6×10-4
    50 1.009×10-3 998.2 3.0×10-4 1.6×10-3
    空气 1 1.814×10-5 1.204 6.7×10-6 6.6×10-5
    空气 20 1.814×10-5 1.204 2.7×10-3 2.6×10-2
    空气 50 1.814×10-5 1.204 1.7×10-2 0.17

    τp 和直径平方呈线性关系意味着大粒子比小粒子具有更长的速度响应时间和更大的自由沉降速度。这会产生两个主要结果:

    1. 大粒子掉落到地面的速度比小粒子快得多。
    2. 当大粒子以一定的初始速度射入流体时,会沿着入射轨迹,能够在曳力使它们减速之前行进相当长的距离。相反,较小的粒子将更快地匹配流体速度。当它们散开时,很可能是由于周围流体的湍流扩散所致。

    数值粒子追踪仿真

    在上一节中,很幸运我们由方程4 得到一个精确的解析解。精确解仅可能在引入许多简化假设时得到,尤其是各处的流体速度 u 均为零。但在大多数真实情况中,周围流体的速度不仅不为零,而且在空间上是不均匀的,因此仅靠公式不可能找到精确解。

    对于更一般的问题,我们可以通过数值仿真来获得近似解。其主要思想是,在初始时间 t=0 时,给定初始粒子位置 q0 和速度 v0,我们可以使用数值时步算法来计算一组离散时步 t1t2t3,……的解。为此,设计了各种各样不同的时步算法,其中有许多是在 COMSOL Multiphysics® 软件中可用的。

    用数值方法求解一组微分方程会引入一定量的误差,即实际粒子运动与计算得到的数值解之间的差异。虽然通常不能指望从数值仿真中获得一个完美的解,但更现实的目标是,当时间间隔(t1t2t1t3t2 等)减小时,模拟的粒子运动应变得更加精确。

    需要权衡的是,如果时间步较小,则需要花更多的时间步才能达到相同的输出时间。最终,这可能会导致实际运行时间 显著增加,这是仿真完成的时间。进行数值仿真的工程师必须始终在解精度和执行时间之间寻求合理的平衡。

    COMSOL Multiphysics® 中的粒子追踪模块提供了一个流体流动颗粒跟踪 接口,该接口通过数值求解牛顿第二定律来模拟周围流体中单个粒子的运动。基本上,此接口可求解方程1,同时允许我们向方程右侧添加各种不同的力。它还包括用于设置初始粒子位置和速度以及检测和处理粒子与周围几何中的表面的碰撞的各种选项。

    处理小粒子和长时间尺度

    在许多实际应用中,粒子追踪模型的需要求解时间的范围远大于拉格朗日时间尺度 τp。例如,假设我们要在 1s 的总仿真时间内追踪水中直径约 20μm 的石英玻璃颗粒的运动。从上述表格我们可知,水中这样的小粒子的拉格朗日响应时间约为 5×10-5s,所以总仿真时间约为 2000τp。如果我们想在几分钟或几小时的跨度内追踪更小的粒子,很容易想象我们的总仿真时间可能比 τp 大几百万倍。

    下面的截图显示了瞬态求解器在跟踪这些 20μm 粒子时所采取的时间步日志。在步骤1 中输出时间的范围:瞬态 节点已被设置为 range(0,0.1,1),这意味着它将仅以 0.1s 的倍数存储输出。但是,这并不妨碍求解器在必要时采取更短的时间步来获得精确的解。如这里所显示的,求解器先从采取 1ms 或更小的时间步开始,然后在粒子接近其最终速度时逐渐采取更大的时间步。

    如下面的步骤24 所示,在 COMSOL Multiphysics 中,粒子追踪物理场接口通常使用严格的时间步算法,该算法至少要求求解器所采取的某些步长与输出时间一致。但这并不是所有物理场的普遍要求;对于某些物理场接口,可以通过在求解器所采用的最近步长之间进行插值来获得输出时间。

    打开了“时间求解器”设置的屏幕截图。

    在研究接近尾声时因为粒子几乎不再加速,所以时间步可能会很大。最终,求解器需要 24 个时间步才能在 0.1s 达到第一个输出时间,但是只需要再增加 12 个时间步就能在 1s 到达最终时间。

    截图中的“模型开发器”中的“时间求解器”设置,同时花费大量时间来求解终端速度模型。

    经历重力沉降的粒子运动方程是刚性常微分方程(刚性 ODE)的一个示例。大多数粒子追踪模型中使用的默认时间步进方法被称为广义 α,这是一种二阶隐式时间步方案,非常适合用于处理刚性问题。如果需要额外稳定性,则可以在瞬态求解器 设置中调整一个被称为放大高频的数值阻尼项。因此,随着粒子速度接近自由沉降速度,时间步变得更大。(相比之下,显式 Runge–Kutta 方法 RK34 采取 7425 个步长来求解相同的问题!)

    但是,如果粒子在几个不同的释放时间进入仿真域,或者背景流体速度在空间上不均匀(这样粒子在以后的研究中仍会加速),则求解器可能直到最终时间都会一直采用如此小的时间步。因为求解器可能需要成千上万甚至数百万的时间步,所以如果我们试图在很长的仿真时间内追踪非常小的粒子,则最终这些研究将需要大量的执行时间才能完成。

    有一个与此密切相关的现象可能会使 COMSOL® 软件新用户感到困惑,当使用入口 边界条件将粒子释放到仿真域中,并且假设这些粒子被分配了指向仿真域的初始速度。请注意,从之前的截图中可以看出,初始时步大小(总仿真时间为1秒)为 1 毫秒。如果初始时步仍然远远大于 τp,则曳力可能会过度补偿,导致粒子速度短暂改变方向并指向入口 边界。如果发生这种情况,粒子可能会错误地检测到与入口 边界的碰撞,从而使它们卡在此处。

    粒子追踪模型中的数值刚度处理

    有两种方法可以求解流体中的粒子运动的数值刚度模型,即输出时间间隔比 τp 大几个数量级的模型。

    第一种是我们所说的“强力”方法:只需告诉求解器采取更小的时间步即可。如果不想产生大量的输出(可能会创建大量文件大小),那么可以不考虑输出时间,而是在求解器序列的瞬态求解器设置中指定一个较小的步长或最大步长。

    该屏幕截图显示了如何强制时间相关的求解器在求解模型时采取较小的时间步长。

    从 COMSOL Multiphysics® 5.6 版本开始,另外一种方法是从方程4 中删除惯性项。首先,我们把方程4 改写成一对耦合的一阶方程,

    \begin{aligned}
    \frac{\textrm{d} \mathbf{q}}{\textrm{d}t} &= \mathbf{v}\\
    \frac{\textrm{d} \mathbf{v}}{\textrm{d}t} &= \frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}\mathbf{g} + \frac{1}{\tau_\textrm{p}}\left(\mathbf{u}-\mathbf{v}\right)\\
    \end{aligned}

    然后,仅假设曳力始终与其他作用力处于动态平衡,而不是在 τp 最初一段时间完全解析粒子运动,

    (6)

    \frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}\mathbf{g}
    +
    \frac{1}{\tau_\textrm{p}}\left(\mathbf{u}-\mathbf{v}\right)
    =
    \mathbf{0}

    换句话说,我们仅假设粒子立即达到其自由沉降速度。如果达到自由沉降速度所需的时间比总仿真时间小许多数量级,那么这是一个合理的近似值。方程6 可用于求解 v

    \mathbf{v} = \tau_\textrm{p}\frac{\rho_\textrm{p}-\rho}{\rho_\textrm{p}}\mathbf{g}+\mathbf{u}

    或者,一般而言,

    (7)

    \mathbf{v} = \frac{\tau_\textrm{p}}{m_\textrm{p}}\mathbf{F}_\textrm{other}+\mathbf{u}

    其中,Fother 是除了曳力以外的其他所有作用力的总和。

    然后,我们要做的就是把 v 的表达式对时间进行积分以获得粒子位置 q

    我们可以在粒子释放和传播 部分,选流体流动颗粒跟踪 接口求解的方程组。从公式列表中,可以选择以下选项之一:

    • 牛顿型:求解方程1
    • 牛顿型,一阶:将方程1 分离为 qv 的一对耦合一阶方程,然后求解它们
    • 牛顿型,忽略惯性项(自版本 5.6 起可用):使用方程7 定义速度的简化公式,然后求解 q
    • 无质量:一种更简化的公式,其中直接指定 v 来求解 q

    屏幕截图显示了如何选择一种配方来模拟流体中的颗粒追踪。

    需要注意的是,牛顿型和牛顿型,一阶公式,可用的内置力数量略多于牛顿型,忽略惯性项公式。明显取决于粒子速度或其他粒子的相对位置的力已被排除。

    将打开“模型开发器”的图像,其中包含牛顿公式可用粒子力的列表。

    牛顿型公式中的可用力。

    带有牛顿可用粒子力列表的“模型开发器”图像,将忽略打开的惯性项公式。
    牛顿型,忽略惯性项公式中可用的力。

    下面是 COMSOL 案例库中使用牛顿型,忽略惯性项 公式来追踪长求解时间内的很小的粒子的示例:

    因为粒子足够大以致于惯性对粒子运动产生重大影响,所以下示例使用了牛顿型公式:

    结语

    当使用流体流动接口的粒子追踪来模拟流体中的小颗粒的运动时,通常应从估计与粒子相关的拉格朗日时间尺度 τp 开始,

    \tau_\textrm{p} \equiv \frac{\rho_\textrm{p}d_\textrm{p}^2}{18\mu}

    并将此时间尺度与我们要模拟的求解时间范围进行比较。

    如果具有不同粒径的分布,请基于最小粒径进行此估算,因为模型中最小惯性粒子决定了运动方程的数值刚度。

    如果要在比速度响应时间大得多的时间范围内预测粒子运动(比如说几千倍甚至更多倍),则应该考虑惯性是否实际上在粒子运动中起着重要作用。如果不是,则可以从列表中选择牛顿型,忽略惯性项(从 5.6 版本开始可用)。

    如果仍要考虑惯性,则可以使用牛顿型牛顿型,一阶公式。但是,请注意,要求解的方程组是数值刚性的,我们可能需要手动减小求解器采取的时间步的大小,以防止粒子位置和速度发生非物理振荡。

    ]]>
    //www.denkrieger.com/blogs/what-formulation-should-i-use-for-particle-tracing-in-fluids/feed/ 25
    熵捕获中的 DNA 快速分离过程模拟 //www.denkrieger.com/blogs/speeding-up-dna-separation-in-a-microchannel-via-simulation //www.denkrieger.com/blogs/speeding-up-dna-separation-in-a-microchannel-via-simulation#comments Thu, 09 May 2019 07:25:49 +0000 http://cn.staging.comsol.com/blogs?p=205541 在调查犯罪时,法医专家有时会使用DNA证据来识别犯罪嫌疑人。然而,DNA不仅包含识别信息,还有我们基因构成的线索。DNA 分离可以用来深入研究 DNA 链,但是传统方法很耗时。为了加快 DNA 的分离,密苏里科技大学的研究人员使用了 COMSOL Multiphysics® 软件。

    我们的基因构成

    DNA 的分子结构很复杂:它是由长链核苷酸组成的双螺旋聚合物。通过将样本分解成大小不同的片段,可以使研究 DNA 变得更加容易。

    DNA 核苷酸或碱基对是鸟嘌呤(G),腺嘌呤(A),胸腺嘧啶(T)和胞嘧啶(C)。研究人员试图在基因组测序和医学诊断等领域中理解这些遗传“字母”的序列,例如,以定位基因并了解它们如何在生物体内协同工作。如果没有 DNA 分离,这项工作就不容易做到,毕竟,人类基因组拥有超过 30 亿个碱基对 DNA

    显示DNA链结构的图示。
    图示为包含有碱基对字母 G,A,T 和 C 的 DNA 链。图像来源于美国公共领域 Wikimedia Commons

    最近,其他一些 DNA 分析的例子也成为了人们关注的焦点。您可能熟悉邮寄 DNA 测试工具包,它可帮助您了解有关您祖先的更多信息。当基因检测公司将您的DNA样本数字化时,它看起来像核苷酸 G,A,T 和 C 字母的长链。这些公司使用算法将您的基因组的 DNA 片段与参考数据集进行比较。然后,算法确定您的DNA样本与每个参考集的匹配程度,以查看您最可能属于哪个血统。该算法的性能取决于它的参考集,因此与数据库中的其他组相比,一些血统的代表性可能不足。

    在法医学等领域,DNA 分析有助于科学家比较遗传物质的样本。由于很少有两个人具有相同的DNA模式,因此法医科学家可以将 DNA 分子切片中的模式与参考数据库进行比较,例如美国联邦调查局管理的联合 DNA 索引系统(CODIS)。然而,像 CODIS 这样的系统仅限于它们包含的 DNA 谱。调查人员开始使用上述提到的血统数据库,通过一个名为家族 DNA 的概念扩展他们的搜索范围。例如,在 2018 年,警方调查金州杀人案时,将犯罪现场 DNA 与家谱网站数据库进行了对比,发现了与远房亲属的部分匹配。最终,这有助于他们缩小搜索范围并识别被指控的犯罪嫌疑人。

    用 DNA 分离技术研究核苷酸链中的片段链接

    凝胶电泳是一种用于分离DNA分子(主要是在法医中)的常用技术,该技术涉及通过凝胶迁移带负电的核酸分子。当施加电流时,较小的分子穿过凝胶的速度比较大的分子快,因此碎片会根据大小分成条带。为了使这种分离可视化,我们使用了放射性染料。
    凝胶电泳DNA测试结果的照片。
    凝胶电泳结果示例。图片来自Mnolf的研究 。在Wikimedia Commons中获得CC BY-SA 3.0许可。

    还有另一种方法可以在不使用凝胶或电场的情况下更有效地分离 DNA 长链:熵捕获。在这种基于微芯片的系统中,建立不同高度的熵阱阵列(结构化微通道),以使狭窄通道间隙远小于 DNA 分子的旋转直径。根据链长分离分子,当带负电荷的 DNA 分子通过电泳力驱动通过这些通道时,洗脱时间取决于 DNA 分子的长度。DNA 分子越长,它被吸入狭小通道的可能性越大,因为较长的分子占据更多的表面积。
    显示一系列熵陷阱的示意图通道中的DNA分子。
    熵陷阱的示意图,宽通道中的 DNA 分子将流入窄通道。图片由密苏里科技大学提供。

    尽管熵捕获比其他分离方法更快且更有效,但所需设备的设计和制造需要花费大量的时间并且成本高昂,因为它依赖于反复试验。自从发现熵捕获方法以来,研究人员已经进行了计算研究以优化设计并研究这些设备中的分离机制,但是至今尚未使用商业软件来模拟这些熵诱捕系统。

    使用COMSOL Multiphysics®来模拟熵陷阱系统中的聚合物动力学

    为了确定它们是否可以通过商用模拟软件以节省时间,密苏里科技大学的研究人员使用COMSOL Multiphysics®建立了熵陷阱系统和聚合物动力学模拟,并将其结果与实验数据进行了比较。

    由Joontaek Park,James Jones,Meyyamai Palaniappan,Saman Monjezi和Behrouz Behdani组成的研究小组表示,“微通道模拟中的DNA动力学具有挑战性,因为必须进行两种不同的模拟:复杂的微流体几何以及聚合物分子动力学中的场计算—-他们补充道“幸运的是,COMSOL®可以相对轻松地处理这些模拟,并且COMSOL®在DNA或单聚合物分子模拟区域打开了新的一页。”

    该团队使用附加的粒子追踪模块对DNA链进行了布朗动力学模拟。借助CFD模块,在牛顿流体中将链设置为单聚合物珠链模型。至于珠子本身,它们被当作布朗粒子处理,以解决链条穿过周围溶剂时链条的随机运动。

    为了描述每个珠子之间的弹力,他们使用了另一个众所周知的模型,即蠕虫状链(WLC),该模型描述了半柔性聚合物的行为。除了WLC之外,研究团队还利用Lennard-Jones势来防止珠子相互渗透。在设置熵阵列几何结构(如下所示)以使Hs远小于典型DNA分子的旋转直径后,研究人员使用 AC/DC 模块在整个通道上创建了电势电场。
    通道结构模型几何图的示意图。
    模拟中使用的通道结构示意图。图片由密苏里科技大学提供。

    评估模拟结果

    研究小组使用有限元法计算了非均匀电场。这里可以看到电场的方向,箭头也指示了DNA分子移动的方向。
     COMSOL中电场通量矢量的可视化Multiphysics®。
    宽通道的右角(a)和左角(b)中的电场通量矢量。图片由密苏里科技大学提供。

    接下来,研究人员根据长度,在Nb = 2,4 和 16 个珠子长度下模拟 DNA 分子的质心运动轨迹,因为它们周期性地流入收缩通道。每个分子以相同距离行进的轨迹如下所示。正如上面的电场矢量所预期的那样,分子在狭窄的通道中移动得更快,并且分子越长(它具有的珠子越多),它移动得越快。同时,较短的分子沿其轨迹速度在降低,并且DNA分子的分布表明扩散性更强,通过将它们从电场最强的区域移开而降低了通过通道的总速度。
    模拟结果显示微通道中的 DNA 分离。
    Nb = 2,4 和 16 的 DNA 分子的质心运动轨迹。图片由密苏里科技大学提供。

    这种比较可以在下面的动画中看到,短珠长度Nb = 2,中间珠长Nb = 4,长珠长度Nb = 16。如图例中的单位所示,动画中的颜色显示粒子在任何时间点的速度。正如预期的那样,DNA分子的表面越大,它越有可能被拖入更小的通道。(请注意,动画比实时约慢 10 倍。如果您希望进一步减慢速度,可以将鼠标悬停在动画上,然后单击齿轮图标。)

     

    Nb = 2 个较短的 DNA 分子在熵阱通道中的宽通道流入或流出。动画由密苏里科技大学提供

     

    Nb = 4 个中长 DNA 分子在熵阱通道中的宽通道流入或流出。动画由密苏里科技大学提供。

     

    Nb = 16 个较长的分子在熵阱通道中的宽通道流入或流出。动画由密苏里科技大学提供。

    研究人员能够证实,他们的模拟结果与熵陷阱中DNA链轨迹的实验数据非常一致,这些结果表明,较长的 DNA 链确实比较短的链能更快地洗脱。

    使用 COMSOL Multiphysics 进行聚合物动力学模拟为进一步的研究开辟了可能性,因为这是使用商用软件进行此类模拟的第一次试验。该团队表示“COMSOL Multiphysics 是一种非常受欢迎且用户友好的仿真工具”,此外,使用该软件进行聚合物动力学的扩展将“增强相关的应用和模拟研究”。

    至于自己未来的研究呢?该团队补充说,他们可以进行对惯性效应,聚合物构型(支化聚合物)效应以及DNA-碳纳米管相互作用的研究。

    下一步

    有关密苏里科技大学研究人员工作的更多详细信息,请单击下面的按钮:

    参考

    ]]>
    //www.denkrieger.com/blogs/speeding-up-dna-separation-in-a-microchannel-via-simulation/feed/ 2
    主题演讲视频:仿真助力心脏泵设计改进 //www.denkrieger.com/blogs/keynote-video-designing-improved-heart-pumps-with-simulation //www.denkrieger.com/blogs/keynote-video-designing-improved-heart-pumps-with-simulation#respond Wed, 05 Dec 2018 05:15:17 +0000 http://cn.staging.comsol.com/blogs?p=197281 心力衰竭是一个全球性的健康问题,影响着数百万人,使他们无法正常生活。但是,如果有一种装置可以让患者的心脏保持跳动,甚至提高他们的生活质量,将会怎样呢?来自雅培公司的 Freddy Hansen 在 2018 年波士顿 COMSOL 用户年会上发表主题演讲时,讨论了这样一种心脏泵。如果您没听过他的演讲,可以观看录像并阅读下面的总结。

    Freddy Hansen 讨论如何改进供心力衰竭患者使用的心脏泵的设计

    设计更好的左心室辅助装置

    “有史以来植入人体的最复杂的机器”—— Freddy Hansen 这样描述 HeartMate 3™ 左心室辅助装置(LVAD),这是一种由雅培公司开发的心脏泵,配备有一个磁悬浮转子,适用于心力衰竭患者。在雅培公司,Hansen 的团队致力于改进 LVAD 设计,以弥补心脏左侧肌肉衰弱,从而避免血液在心脏淤积,血液淤积可能是致命的。其他电子植入物(如起搏器)只使用数微瓦的功率,但 LVAD 必须泵送整个血流,因此需要大量功率,约为 10 瓦左右。设计这些装置还面临着其他挑战,比如,其体积必须足够小才能植入患者胸腔,另外还要具有生物相容性和血液相容性。为了解决这些问题,Hansen 和他的团队成员使用了仿真技术。

    使用 COMSOL Multiphysics® 优化 LVAD 系统

    Hansen 说他使用 COMSOL Multiphysics® 软件来模拟 LVAD 系统设计的所有组件,包括装有磁悬浮轴承(使转子悬浮在装置内部)的电动机、传感器和其他电子设备,如电动机控制。由于该系统的每个部分都是维持生命的,雅培的工程技术人员需要确保每个组件都按照设计运行。HeartMate 3™ LVAD 是该系统唯一位于人体内的部分,该装置的电源来自电池,并通过穿透患者皮肤的电缆传输。控制器是一个患者接口设备,其中设有按钮,可帮助监测 LVAD 的性能(还包含应急电池)。
    A photograph of Freddy Hansen from Abbott Laboratories at the COMSOL Conference 2018 Boston.
    来自视频:LVAD 系统。LVAD 被植入胸腔,而系统的其他组件则位于体外。

    Hansen 举了几个例子,说明了他和他的团队成员如何使用各种建模技术来精确分析 LVAD 系统设计的所有组件和多物理场相互作用。例如,在设计 HeartMate 3™ LVAD 时,他们创建了一个电动机模型,该模型的旋转部分包含磁场,磁芯周围的多个线圈使转子悬浮和旋转。下面我们再看一些模型示例。

    模拟控制器和植入物的传热

    Hansen 在研究 LVAD 设计时,提出了一个重要的问题:靠近控制器的皮肤温度是多少?正如他所指出的,确定 控制器装置接触皮肤时的温度,非常重要,原因在于,即使在温度过高的情况下患者也不能直接取下装置——因为患者靠它来维持生命!为了找到答案,雅培公司的研究人员设计了一个生物传热模型,控制器的一侧是皮肤、脂肪、肌肉和内脏层,另一侧是服装层,从而模拟热效应。该模型考虑长距离的血流冷却,并且采用自定义的传热系数来模拟服装层表面的对流换热。

    第二个热模型示例模拟这样一个问题:靠近植入物的组织有多热?为了回答这个问题,研究团队成员通过逆向工程分析了已发表的数据,这是一项评估活体组织导热性能的实验。接下来,他们模拟将 LVAD 放入水浴中,并将结果与基准测试进行比较(您可以观看视频,了解更多关于 Hansen 如何追踪电池和其他热元件温度的细节)。

    模拟无线能量传输

    雅培团队还研究了用无线能量传输代替电缆传输的方法——Hansen 称之为业界的“圣杯”。如果能实现这种替代方案,无线能量传输将降低插入部位的感染风险。改进后的装置不仅可以挽救患者的生命,植入这种装置的患者还可以洗澡和游泳,从而大大提高生活质量。为了探索这种可能性,该团队开发了一个包含三维磁场和零维电路的模型来评估效率及损耗。在这种情况下,提高电路性能非常重要,这是因为电路和磁线圈具有很强的相互作用。
    A photograph of Freddy Hansen presenting on using simulation to design improved heart pumps.
    来自视频:无线能量传输模型设计。

    通过仿真评估血细胞的流动

    Hansen 继续他的主题演讲,讨论 CFD 建模如何帮助团队追踪流经装置的血流路径。通过 LVAD 的流场就其交互性和周期性而言被视为一个真正的多物理场问题。在研究血细胞浓度时,需要考虑剪切应力,这是因为血细胞远离较高的剪切应力位置。这种运动影响血液的粘度,从而影响流场,进而影响剪切应力。

    研究人员在对 LVAD 设计进行流量定性评估时,要确保没有血液从转子流回入口,否则会导致效率降低并增加血液损害的风险。Hansen 还谈到使用粒子追踪来计算“灌注”,即血细胞在心脏泵中停留的时间。他们发现,可以根据逃逸时间对粒子进行分类,并通过仿真计算高级血液破坏。

    Hansen 总结道,他和雅培团队在这项设计中使用了 300 多个模型以及数十种产品和原型。他们可以通过仿真来创建优化的 LVAD 系统,并开发出适合实际应用的 HeartMate 3™ LVAD。

    到目前为止,HeartMate LVAD 已累计挽救超过 35,000 名心力衰竭患者的生命,有些患者可以继续参加马拉松,以及许多其他运动和活动。但这些系统真正令人印象深刻的是什么呢?那就是它们使患者的心脏持续跳动,让患者健康地活着。

    想要了解更多关于雅培心脏泵仿真和 LVAD 系统设计的信息吗?请观看本篇博客文章顶部的视频。

    HeartMate 3 是雅培公司集团的商标。

    ]]>
    //www.denkrieger.com/blogs/keynote-video-designing-improved-heart-pumps-with-simulation/feed/ 0
    借助仿真 App 评估静态混合器的性能 //www.denkrieger.com/blogs/evaluating-static-mixer-performance-with-a-simulation-app //www.denkrieger.com/blogs/evaluating-static-mixer-performance-with-a-simulation-app#respond Fri, 08 Jul 2016 06:26:34 +0000 http://cn.staging.comsol.com/blogs?p=175571 静态混合器因其高效、成本低廉、易于安装且维护要求低等优点,成为各类工程领域的常用工具。在评估混合器能否满足某种使用目的时,一个重要的判断指标是得到的混合物是否足够均匀。在本篇博客文章中,我们将介绍如何借助“粒子追踪模块”,开发一款能定量和定性分析静态混合器性能的 App。

    层流静态粒子混合器设计器 App 的设计基础

    在创建“层流静态粒子混合器设计器”App 前,我们首先前往官网的“案例下载”页面下载层流混合器教程。此模型通过计算贯穿设备的粒子轨迹对静态混合器的混合性能进行了评估。如果您希望深入了解此教程及学习基本的混合器建模知识,我们推荐您阅读下列博客文章:

    上述教程使用了与我们的 App 相同的几何模型。如下图所示,模型由一段装有三个螺旋叶片的管道构成,叶片可交替旋转。搅拌叶片的表面呈灰色,周围勾勒出管道的轮廓线。流体运送粒子通过管道时,静态搅拌叶片会使粒子混合在一起。

    图像显示了层流静态混合器模型的几何结构。
    层流静态混合器模型的几何结构。

    用于研究静态混合器性能的 App

    借助下图中的层流静态粒子混合器设计器 App,我们可以先计算出通过混合器的粒子轨迹,然后利用一些内置后处理工具定量及定性地对混合器的性能进行评估。

    图像展示了层流静态粒子混合器设计器的用户界面。
    “层流静态粒子混合器设计器”的用户界面(UI)截图。

    此 App 中包含大量的几何参数和材料属性,在创建混合器模型时,可选择使用一个、两个或三个螺旋式搅拌叶片。除此之外,通过 App 的高级设置,您还能更改粒子数量和后处理参数。

    为了更准确地绘制静态混合器内不同物质的分布及变化,我们可以释放粒子,并使用流体流动粒子追踪 接口对其轨迹进行计算。粒子位置是通过牛顿运动方程公式计算出来的,而计算位置矢量的分量则需求解一组二阶方程:

    (1)

    \frac{d}{dt}\left(m_p\frac{d\mathbf{q}}{dt}\right) = \mathbf{F}_t

    其中 (国际单位:)表示粒子位置,(国际单位:)表示粒子质量,(国际单位:)表示粒子上的总力。牛顿公式考虑到了粒子的惯性,并允许粒子横穿速度流线。

    在模型中,粒子只受到曳力的作用,并使用 Stokes 曳力定律计算得到:

    (2)

    \begin{aligned}
    \mathbf{F}_D &= \frac{1}{\tau_p} m_p \left(\mathbf{u}-\mathbf{v}\right)\\
    \tau_p &= \frac{\rho_p d_p^2}{18 \mu}
    \end{aligned}

    其中应用了下列物理量:

    • (国际单位:)表示粒子速度
    • (国际单位:)表示流体速度
    • (国际单位:)表示粒子直径
    • (国际单位:)表示粒子密度
    • (国际单位:)表示粒子动力粘度

    Stokes 曳力定律适用于相对雷诺数远小于 1 的粒子;也就是,

    (3)

    \textrm{Re}_r = \frac{\rho \parallel {\mathbf{u}-\mathbf{v}}\parallel d_p}{\mu} \ll 1

    其中 (国际单位:)表示流体密度。本文的案例符合定律要求。下图描绘了溶液中具有代表性的粒子样本。这些粒子从混合器的右下角释放并流向左上角。其颜色代表粒子在入口处的初始 z 坐标,可直观地对比混合器横截面中粒子的最终位置和初始位置。

    绘图显示了层流静态混合器内的粒子轨迹。
    静态混合器内粒子轨迹的绘图。

    借助 App 开发器量化静态混合器的性能

    肉眼观察在一定程度上可以判断混合物的均匀程度,针对本文的案例,混合性能的可视化能够通过创建粒子位置的相图来实现。在相图中,我们可以在任意的二维相空间中绘制粒子轨迹——也就是说,可以通过用户自定义的表达式在二维绘图的坐标轴上表示粒子轨迹。相图常用于绘制特定方向上粒子位置随动量的变化,即相空间 分布。

    在下方动画中,相图用于观察每个粒子在通过混合器的过程中横向位置的变化。管道设为 y 方向,因此横向为 x 和 z 方向。我们使用不同的颜色来表示初始状态下每种粒子所占据的象限。从图中可以看出,初始时释放的深蓝色粒子位于 xz 轴的正方向。

    相图显示了粒子在通过混合器过程中的横向位置。

    相位图定性地表面出口处的粒子没有完全均匀地混合。图中仍存在粒子数量密度偏高或偏低的区域,同时还能看到相同颜色的粒子(来自同一象限)聚集在了一起。

    相图存在一个潜在的缺陷,这是因为它绘制的是同一时刻相空间内的粒子,而非基于相同 y 坐标的粒子。生成的混合器可视化绘图也因此带有一定的误导性,这因为一些更靠近叶片的粒子可能会晚于其他粒子到达出口。因此我们提出了另一种方法:创建庞加莱映射,该映射可绘制出粒子轨迹与特定位置上平面的交点。

    下图中,每个截面上粒子的颜色取决于释放时该粒子的初始 x 坐标,蓝色表示初始坐标为正方向,红色表示为负方向。接下来我们再一次观察出口处红蓝粒子的聚集情况。

    视图显示了庞加莱映射。
    庞加莱映射显示了二维绘图中粒子的位置。

    我们可以从相图与庞加莱映射中获取大量有关混和器性能的信息,然而对于精密的工业应用而言,多数信息过于主观。肉眼观察可以大概判断不同物质处于完全分离、部分混合或充分混合的状态,但这些说法太模糊,难以量化。举例来说,任何一个观察者都能看出上图中聚集着一小群同色粒子,但要指定数值来描述粒子混合程度就十分困难了。

    幸运的是,“App 开发器”和“方法编辑器”提供的工具可以帮助我们创建专业的高端后处理程序,这些程序可以对特定混合器几何模型的性能进行赋值。分布指数是一个常用于评估粒子空间分布均匀性的度量标准,它被定义为方差和平均数之比:

    (4)

    D=\frac{\sigma^2}{\mu}

    我们将出口划分为面积相等的区域或象限,然后计算平均数和方差。因为出口为圆形,所以可以通过绘制多个半径不同的同心圆来将出口划分成面积相等的 个环状区域

    r_i = \sqrt{\frac{i}{N_r}} \hspace{1cm} \textrm{for } i=1,2,3\ldots N_r-1

    通过绘制多条夹角相等的直径,每个环状区域又可以分割成 个面积相等的域

    \phi_j = \frac{2\pi j}{N_{\phi}} \hspace{1cm} \textrm{for } j=0,1,2\ldots N_{\phi}-1

    这些细分的区域会产生 个面积相同的象限。 表示第 i 象限内的粒子数量,则每个象限内粒子的平均数量为

    \bar{x}=\frac{1}{N_q}\sum_{i=1}^{N_q} x_i

    每个象限内粒子数量的方差为

    \sigma = \frac{1}{N_q}\sum_{i=1}^{N_q} (x_i-\bar{x})^2

    我们在 App 中使用了(p_computeIndexOfDispersion)方法来计算分布指数。

    /*
     * p_computeIndexOfDispersion
     * This method computes the index of dispersion at the outlet.
     * The method is called in p_initApplication and in m_compute.
     */
    
    // Get the x- and z-coordinates of the particles at the outlet
    // and store them in matrices qx and qz, respectively.
    model.result().numerical().create("par1", "Particle");
    model.result().numerical("par1").set("solnum", new String[]{"14"});
    model.result().numerical("par1").set("expr", "qx");
    model.result().numerical("par1").set("unit", "m");
    double[][] qx = model.result().numerical("par1").getReal();
    model.result().numerical("par1").set("expr", "qz");
    model.result().numerical("par1").set("unit", "m");
    model.result().numerical("par1").set("solnum", new String[]{"14"});
    double[][] qz = model.result().numerical("par1").getReal();
    
    // Use the "at" operator to get the initial x-coordinates of all particles
    // and store them in matrix qx0.
    model.result().numerical("par1").set("expr", "at(0,qx)");
    model.result().numerical("par1").set("unit", "m");
    model.result().numerical("par1").set("solnum", new String[]{"14"});
    double[][] qx0 = model.result().numerical("par1").getReal();
    
    // The Particle Evaluation is no longer needed.
    model.result().numerical().remove("par1");
    
    double Ra = model.param().evaluate("Ra"); // Radius of the outlet
    int Np = qx.length;                      // Number of particles
    int Nr = nbrR;                            // Number of subdivisions in the radial direction
    int Nphi = nbrPhi;                        // Number of subdivisions per quadrant in the azimuthal direction
    int nbrQuad = Nr*4*Nphi;                  // Total number of quadrats (regions)
    double deltaPhi = Math.PI/(2*Nphi);       // Angular width of each quadrat
    int index = 0;
    int ir = 0;
    int iphi = 0;
    int[] x = new int[nbrQuad]; // Array to store number of points per quadrat
    
    // Begin loop over all particles
    for (int i = 0; i < Np; ++i) {
      // Determine which quadrat each particle is in.
      ir = (int) Math.floor((Math.pow(qx[i][0], 2)+Math.pow(qz[i][0], 2))*Nr/Math.pow(Ra, 2));
      iphi = (int) Math.floor(Math.atan2(qz[i][0], qx[i][0])*Math.signum(qz[i][0])/deltaPhi);
      if (Math.signum(qz[i][0]) < 0) {
        iphi = (int) Math.floor((2*Math.PI-Math.atan2(qz[i][0], qx[i][0])*Math.signum(qz[i][0]))/deltaPhi);
      }
      index = 4*Nphi*ir+iphi;
      // Consider only half of the particles when evaluating mixer performance.
      if (qx0[i][0] < 0) {
        x[index] = x[index]+1;
      }
    }
    // compute the mean
    double sum = 0;
    for (int i = <0; i < nbrQuad; ++i) {
      sum += x[i];
    }
    // compute the variance
    double xmean = sum/nbrQuad;
    sum = 0;
    for (int i = 0; i < nbrQuad; ++i) {
      sum += Math.pow(x[i]-xmean, 2);
    }
    indexOfDispersion = sum/xmean;
    

    上述方法的最后一行用于返回分布指数。通常情况下,分布指数减小意味着粒子会分布得更加均匀。根据 App 的默认参数,使用三个叶片时分布指数约为 900,使用两个叶片时为 1200,只用一个叶片时为 1400。因此,分布指数定量地说明了绘图显示的信息:使用的搅拌叶片越多,粒子混合物的均匀度就越高。

    借助仿真 App 优化静态混合器的性能分析

    今天,我们演示了如何利用“App 开发器”来优化静态混合器的研究。通过创建 App,您可以将仿真能力分享给更广泛的受众,从而优化整个设计工作流,与此同时,还能向不同的混和器几何指定数值,从而更精确地掌握设备的混合性能。

    有兴趣深入了解如何设计仿真 App 吗?请浏览下方资源。

    指导 App 开发的实用资源

    • 自己动手尝试链接中的演示 App:层流静态粒子混合器设计器
    • 如您希望了解更多关于提升仿真 App 结构和设计的方法,请阅读下列博客文章:
    • ]]> //www.denkrieger.com/blogs/evaluating-static-mixer-performance-with-a-simulation-app/feed/ 0 借助 CFD 建模防止空气感染 //www.denkrieger.com/blogs/preventing-airborne-infection-with-cfd-modeling //www.denkrieger.com/blogs/preventing-airborne-infection-with-cfd-modeling#comments Wed, 02 Dec 2015 03:50:33 +0000 http://cn.staging.comsol.com/blogs?p=167441 医疗相关感染 (HAI, Healthcare-associated infections) 正影响着全球数百万人。HAI 最常见的原因是和源头直接接触,另外空气中传播的细菌也可能造成感染。为预防空气感染,让医院的洁净室更加安全放心,设计出有效的通风系统便是一个重点。有效的通风设计还能降低能耗,节约成本,带来额外收益。卓越设计的第一步是 CFD 建模。

      医疗相关感染是一个全球问题

      在全球范围内,医疗相关感染对于住院患者是一个严重的问题,不论在发达国家还是发展中国家都是如此。根据世界卫生组织 (WHO) 的数据,每年有数以亿计的患者受到感染。他们进一步指出,在任何特定时间,发达国家的一百名患者中有七名在住院期间至少受到一次感染,在不发达国家则有十名。而且这一数据还不包括那些因空气感染而住院的患者。何不好好想一下这个问题?

      医学中心照片。
      弗吉尼亚大学医学中心” 由 cvilletomorrow — flickr 提供,在 CC BY 2.0 许可下使用,通过维基共享资源发布。

      那么,为什么在寻求治疗时患者病情会加重?我们又要如何阻止?导致 HAI 的因素多种多样。最明显的罪魁祸首大概是和传染源(人、设备、家具等)直接接触。然而,Veryst Engineering 的 Alireza Kermani 在 COMSOL 用户年会 2015 波士顿站上指出,另一个元凶可能是低效的通风系统。为了证实这一理论,Veryst 转向了 CFD 软件。

      利用 CFD 软件评估通风系统设计

      Veryst 借助 COMSOL Multiphysics 仿真平台和 CFD 模块分析了医院洁净室中的气流模式,调查空气中的细菌如何传播到整个房间。

      用于评估的洁净室模型包括人员(患者和医生);家具(床、衣柜和灯具);医疗设备;以及一套通风系统(入口和排风口)。已感染的患者正在咳嗽,随即细菌颗粒就传播到了房间内。这个模型考虑了强制通风和自然通风,通风率为每小时换气 (ACH) 六次。这是 ASHRAE standard 170 关于医疗保健设备的通风率标准。

      医院洁净室示意图。
      医院洁净室的布局。房间的三面墙和地板与外界隔热。天花板和衣柜对面的墙与外界换热。图像经许可摘自 Veryst 的论文 “CFD Modeling for Ventilation System of a Hospital Room“。

      Veryst 在模型中加入以下几种热源:

      • 医生和患者的身体 (60 W/m2)
      • 设备 (100 W/m2)
      • 灯具 (200 W/m2)
      • 通风入口 (20°C)
      • 外界温度 (5°C)

      他们发现,洁净室的平均温度为 21°C。以下为他们的仿真结果,描述房间内的气流和温度分布:

      用于研究空气感染的医院洁净室内的温度分布图。

      医院洁净室内的速度矢量图,通过 COMSOL Multiphysics 模拟。

      医院洁净室内的温度分布和速度矢量。图像来源:Veryst。

      通风系统的设计要能有效阻止空气感染,同时还要确保不会导致房间过热或过冷。当然,热舒适是极其主观的,但我们有方法来量化这一定性标准。评价通风系统设计时,Veryst 基于 ASHRAE Standard 55-2013 来量化热舒适的热感觉范围:

      感觉 预计平均热舒适指数 (PMV) 值
      +3
      +2
      稍暖 +1
      中性 0
      稍凉 -1
      -2
      -3

      ASHRAE 热感觉范围。可接受的室内值在 -0.5 到 +0.5 之间。表格经许可改编自 Veryst 的论文 “CFD Modeling for Ventilation System of a Hospital Room”。

      接下来,他们针对仿真结果计算 PWV 和患者的预测不满意百分比 (PPD),并将两者与上述范围比较。他们分析当前的设计,推测患者的代谢率和穿着,由此发现 56% 的患者表示不满意,因为患者感觉偏凉 (PMV = -1.59)。

      模拟细菌分布以预防空气感染

      利用 COMSOL Multiphysics 和粒子追踪模块,Veryst 终于能够量化经通风系统排风口传播到房间外的细菌百分比。

      CFD 建模仿真结果图,显示细菌粒子在病人咳嗽后的不同时间的运动情况。
      以上各图分别显示病人咳嗽后 30 秒、60 秒、180 秒 以及 230 秒时细菌粒子的运动情况。粒子颜色和速度(米/每秒)对应。经许可摘自 Veryst 的论文 “CFD Modeling for Ventilation System of a Hospital Room”。

      如上方的各图所示,病人咳嗽后,细菌经由通风系统传播到整个房间。咳嗽后 30 秒到 35 秒时,大多数细菌粒子传播到房间外。然而,即使经过了 300 秒,房间内仍有 8% 的细菌,这些细菌就可能导致 HAI。

      Veryst 分享的动画。

      为了改进通风系统,减少房间内的细菌数,提升系统效率,同时使房间内热舒适范围可接受,您可以进一步运行仿真以优化设计。要了解 Veryst 的全部研究细节,请查看论文 “CFD Modeling for Ventilation System of a Hospital Room“。

      让你的建模水平更进一层

      是 COMSOL 的新用户?点击下方按钮了解“CFD 模块”的概况。如果你希望观看软件的实际操作,可以直接在产品页面申请软件演示。

      需要一些灵感?从“App 库”下载预求解的 CFD .MPH 教学文件 ,开启仿真之旅。

      ]]>
      //www.denkrieger.com/blogs/preventing-airborne-infection-with-cfd-modeling/feed/ 4
      介电泳分离 //www.denkrieger.com/blogs/dielectrophoretic-separation //www.denkrieger.com/blogs/dielectrophoretic-separation#respond Fri, 23 Jan 2015 05:54:32 +0000 http://cn.staging.comsol.com/blogs?p=325221 如何用电场控制电中性粒子的运动?这听起来似乎是不可能的,但在这篇文章中,您会看到介电泳(DEP)现象可以解决这个难题。我们将学习如何利用介电泳进行颗粒分离,并演示一个简单的生物医学仿真 App,该 App 是使用 App 开发器创建的,通过 COMSOL Server™ 运行。

      在非均匀静电场中粒子所受的力

      在直流和交流场中,都会发生介电泳效应。我们先来看看直流的情况。

      考虑一个浸入流体中的介电粒子。另外,假设存在一个施加到流体-颗粒系统的外部静态(DC)电场。在这种情况下,只要粒子的介电常数高于周围流体的介电常数,粒子就会从弱电场区域被拉到强电场区域。如果粒子的介电常数低于周围流体,那么情况正好相反,粒子会被拉到弱电场区域。这些效应分别被称为正介电泳 (pDEP)和负介电泳 (nDEP)

      下面两幅图片分别演示了这两种情况,并将几个重要的量可视化:

      • 电场
      • 麦克斯韦应力张量(表面力密度)

      正介电泳示意图。
      正介电泳(pDEP)的示意图,粒子介电常数高于周围流体的介电常数

      负介电泳示意图。
      负介电泳(nDEP)的示意图,粒子介电常数低于周围流体的介电常数

      麦克斯韦应力张量代表粒子表面的局部力场。为了使这个应力张量能够代表作用在粒子上的力,流体需要是“简单的”,也就是它不应该表现出太复杂的机械行为。假设流体是简单的,我们可以从上面的插图中看到,在 pDEP 和 nDEP 这两种情况下,粒子上的净力看起来是方向相反的。对表面力进行积分确实会出现这种情况。

      事实证明,如果我们把粒子缩小,例如一个无限小的情况,一个非常小的粒子在流体中像偶极子一样运动,那么净力是电场平方梯度的函数。

      为什么净力会有这样的表现?为了理解这一点,我们来观察在粒子表面的一个点上会发生什么。在这样一个点上,电表面力密度的大小 ,是电荷乘以电场的函数。

      (1)

      f \propto \rho E

      其中, 是感应极化电荷。(让我们暂时忽略一些量是向量,只看量级和比例关系,做一个纯粹的现象学论证。)

      感应极化电荷与电场成正比:

      (2)

      \rho \propto \epsilon E

      联立两个公式,得到:

      (3)

      f \propto \rho E = \epsilon E^2

      但这只是表面某一点上的局部表面力密度。为了从表面上各点的所有这些表面力贡献中得到净力,粒子的一侧和另一侧之间需要存在力的大小差异。这就是净力 ,与电场模的平方梯度成正比的原因。

      (4)

      \mathbf{F}
      \propto \epsilon \nabla |\mathbf{E}|^2

      在上述推导中,我们走了一些捷径。例如,在这种关系中,介电常数是什么?是粒子的还是液体的,或者与两者都不同?粒子的形状如何?是否有形状因子?

      现在,让我们来解决其中的一些问题。

      作用在球形粒子上的力

      在更严格的推导中,我们改用电偶极子上力的矢量值关系:

      (5)

      \mathbf{F} = \mathbf{P} \cdot \nabla \mathbf{E}

      其中, 是粒子的电偶极矩。

      为了获得不同粒子的力,我们只需插入电偶极矩的各种表达式。在这个表达式中,我们还可以看到,如果电场是均匀的,就不会得到任何力(因为粒子很小,它的偶极矩被认为是一个常数)。对于在电场中半径 很小的球形介电粒子,其偶极矩为:

      (6)

      \mathbf{P}= 4 \pi r_p^3 k \mathbf{E}

      其中, 是取决于粒子和周围流体的介电常数的参数。该因子 可以被视为形状因子。

      结合这些,得到:

      (7)

      \mathbf{F} = 4 \pi r_p^3 k \mathbf{E}
      \cdot \nabla\mathbf{E} = 2 \pi r_p^3 k \nabla |\mathbf{E}|^2

      这再次表明,粒子所受的力对电场模的平方梯度的依赖性。

      在时变电场中粒子所受的力

      如果电场是时变的(交流电),情况会稍微复杂一些。我们还假设存在由电导率 表示的损耗。球形粒子上的介电泳净力 为 :

      (8)

      \mathbf{F}
      = 2 \pi r^3_p k \nabla |\mathbf{E}_{\textrm{rms}}|^2

      其中

      (9)

      k = \epsilon_0 \Re\{ \epsilon_f \} \Re \left\{ \frac{\epsilon_p -\epsilon_f}{\epsilon_p + 2 \epsilon_f} \right\}

      (10)

      \epsilon = \epsilon_{\textrm{real}} -j \frac{\sigma}{2 \pi \nu}

      是复值介电常数。下标  分别表示粒子和流体。粒子的半径是 是电场的均方根。交流电场的频率为

      从这个表达式中,我们可以通过设置 来获得静电情况下的力。(不能采取频率变为零时的极限情况,因为电导率在静电学中没有意义。)

      在介电泳力的表达式中,我们可以看到流体和粒子之间的介电常数差异确实起到了重要作用。如果这个差异的符号切换,那么力的方向就相反。涉及介电常数值的求差与求和运算的因子 称为复数 Clausius-Mossotti 函数,您可以点击此处阅读更多相关信息。这个函数对介电泳力的频率依赖性进行了编码。

      如果粒子不是球形的,而是椭圆形的,那么使用另一个比例因子。对于具有一个或多个薄外壳且有不同介电常数值的粒子,例如生物细胞,也有众所周知的介电泳力表达式。下面介绍的仿真 App 包括细胞膜的介电常数,它被表示为一个壳。

      设置窗口显示一个介电壳有效介电常数。
      介电壳的有效介电常数的设置窗口。

      可能还有其他作用在粒子上的力,如流体曳力、重力、布朗运动力和静电力。下面显示的仿真 App 包括曳力、布朗运动和介电泳力的贡献。在粒子追踪模块中,我们无需输入冗长的力表达式,一系列可能的粒子力都已经在软件中内置。下图显示了流体流动的粒子追踪 接口中可用的力。。

      屏幕截图高亮显示了不同粒子力选项。
      流体流动的颗粒追踪接口中不同的粒子力选项。

      颗粒的介电泳分离

      用于智能手机的医疗分析和诊断类应用将快速增长。我们可以想象,在未来智能手机能与一个可以采样和分析血液的硬件结合起来使用。

      假设这样一个案例,对其进行分析可以分为三个步骤:

      1. 使用直接连接到智能手机的硬件提取血液,并计算平均血小板和红细胞直径。
      2. 计算红细胞和血小板的分离效率。这种效率需要很高,以便对分离的红细胞进行进一步诊断。
      3. 使用计算出的最佳分离条件,用连接到智能手机上的硬件分离红细胞。

      COMSOL Multiphysics 仿真 App 的重点是上述整个分析过程的第 2 步。通过利用血小板是血液中最小的细胞,并且具有与红细胞不同的介电常数和电导率这一事实,可以使用介电泳进行基于尺寸的血液分离;换句话说,就是可以将红细胞与血小板分离。

      红细胞是最常见的血细胞类型,也是脊椎动物机体通过循环系统的血流向身体组织输送氧气(O2)的主要手段。血小板,也称为凝血细胞,是具有止血功能的血细胞。

      我们使用 App 开发器,创建了一个仿真 App,该 App 使用流体流动颗粒追踪 接口中提供的介电泳力 功能演示了血小板与红细胞(RBC)的连续分离。(创建该仿真 App 还需要以下其中一种模块:CFD 模块微流体模块地下水流模块以及 MEMS 模块或 AC/DC 模块。)

      该仿真 App 是基于 N. Piacentini 等人在 Biomicrofluidics(vol. 5, 034122, 2011)上发表的论文 “Separation of platelets from other blood cells in continuous-flow by dielectrophoresis field-flow-fractionation”中详细描述的片上实验室(LOC)装置建立的。

      该装置由两个入口、两个出口和一个分离区组成。在分离区中,有一个控制粒子轨迹的极性交替电极排列。电极产生了利用介电泳效应所需的非均匀电场。下图是该模型的几何形状。

      颗粒分离仿真App中使用的几何图形示意图。
      颗粒分离仿真 App 中使用的几何图形。

      下部入口的入口速度(853μm/s)明显高于上部入口速度(154μm/s),以便将所有注入的颗粒集中于上部出口。

      该仿真 App 基于使用以下物理场接口的模型构建:

      1. 蠕动流(微流体模块)用于模拟流体流动。
      2. 电流 (AC/DC 或 MEMS 模块)用于模拟微通道中的电场。
      3. 流体流动颗粒追踪(粒子追踪模块),用于计算红细胞和血小板在阻力和介电泳力的影响下以及布朗运动下的轨迹。

      底层模型中使用了三个研究:

      1. 研究 1 求解了频率为 100kHz 的稳态流体动力学和频域(AC)电势。
      2. 研究 2 使用瞬态研究步骤,该步骤利用研究 1 中的解并在没有介电泳力的情况下计算粒子轨迹。在这项研究中,所有颗粒(血小板和红细胞)都被集中到同一个出口。
      3. 研究 3 是第二个瞬态研究,包括介电泳力的影响。

      您可以在此处下载该 APP 所基于的模型。

      生物医学仿真 App

      为了创建仿真 App,我们使用了适用于 Windows® 操作系统的 COMSOL Multiphysics® 5.0 版本中的 App 开发器。

      下图显示了应用首次启动时仿真 App 的外观。在本例中,我们已连接到 COMSOL Server™ 安装,这样就能在标准网页浏览器中运行 COMSOL Multiphysics 应用程序。

      生物医学仿真App
      在标准网页浏览器中运行的生物医学仿真 App。

      该仿真 App 允许用户输入一些量,例如电场的频率和施加的电压。结果包括一个分离的红细胞比例的标量值。此外,在选项卡窗口中提供了三种不同的可视化效果:血细胞和血小板分布、电势和流体流动的速度场。

      下图显示了电势和流场的可视化结果。

      屏幕截图显示了微流体通道中的瞬时电势。
      屏幕截图显示了微流体通道中的瞬时电势。

      流体速度大小
      屏幕截图显示了流体速度大小。

      该仿真 App 有三种不同的求解选项,分别用于仅计算流场、仅使用现有流场计算分离或将两者结合起来。如果没有分离干净,系统会显示一条警告消息。

      增加施加的电压将增加介电泳力的大小。如果分离效率不够高,我们可以增加电压并点击全部计算 按钮,因为在这种情况下,场和粒子的轨迹都需要重新计算。我们可以通过改变频率来控制介电泳力表达式的 Clausius-Mossotti 函数值。事实证明,在 100kHz 的指定频率下,只有红细胞会从下部出口出来。

      在这种情况下,流体的介电常数比颗粒的介电常数高,血小板和红细胞都承受了负的介电泳力,但大小不同。为了获得成功的整体设计,我们需要平衡介电泳力相对于流体曳力和布朗运动力。下图显示了一个使用输入参数的模拟,这些参数通过下部出口分离出红细胞的成功率为 100%。

      屏幕截图显示了红细胞的成功分离。
      成功分离红细胞。

      扩展阅读

      如果您要了解有关介电泳及其应用的更多信息,请单击下面列表中的链接。列表中包含一个指向 App 开发器视频的链接,该视频还向您演示了如何使用 COMSOL Server™ 部署仿真 App。

      Windows 是微软公司在美国和/或其他国家/地区的注册商标或商标。

      ]]>
      //www.denkrieger.com/blogs/dielectrophoretic-separation/feed/ 0