由于前面介绍的LBM并不能处理外力对流场的作用,因此要想实现LBM和IB两种方法的结合,还需要对原有框架进行改进。因此,LBM和IB的结合方式可概括为两方面:一方面,浸入边界将其节点的拉格朗日力转移分配到流体节点上,以影响流体的流动状态;另一方面,在浸入边界附近的流场速度加权累计到相应的节点上,赋予节点一个速度,从而使浸入边界具备运动属性。......
2023-11-03
总体上,LBM比传统的计算流体力学思路更加简单,在MATLAB下模拟二维通道流动,仅需几十行代码即可实现。但是,LBM不是一种模式固定算法的代称,它针对不同的模拟对象和要求,在参数处理和设置上有很多技巧,此外,LBM还通常需要与其他算法相结合,以解决特定问题。因此,学习LBM需要一定的策略,方能快速准确地熟悉和使用这种方法。根据笔者的经历和感受,给出一套学习LBM的策略,供大家参考。
1.获取可供学习的文献资源
1)介绍算法机理的书籍
通常,介绍算法的书籍能较全面和系统地阐述算法的机理,这有助于我们从算法本源的角度来把握算法的本质。但是,书籍的描述(尤其是数学模型的描述)往往是精炼的、抽象的,很多学习者(尤其是非本专业领域的学习者)发现,仅通过阅读书籍,有很多知识点难以理解,以至于看到后面就越来越看不懂。因此,通过看书的方法来学习算法,通常只能掌握算法的概貌,可定位为“导读”或“背景阅读”。对于学习LBM,华中科技大学郭照立[5]和西安交通大学何雅玲[6]所著的书籍,以及意大利著名教授Succi关于LBM的书籍[7]是比较受推崇的。此外,近年来也出现了一些偏算法程序实现的相关书籍,如A.A.Mohamad所著的书籍[8],这类书籍不要求读者有厚实的数理理论知识,非数学物理学科专业的研究生更易于理解。
2)学位论文及期刊论文
硕士和博士学位论文展示了研究生对算法运用的具体结果,论文对于算法的学习也很有参考价值。虽然论文中关于算法的描述部分与有些书籍中的算法描述会有重复,但由于需要进行算法的具体实现,所以可能会有一些关于算法实现的细节描述。这些被强调的细节对于算法的实现有时具有很重要的参考价值。在LBM方法中,LBGK(Lattice Bhatnagar-Gross-Krook)模型是最常见和基础的模型,其中的松弛因子τ是非常重要的一个系数。然而,关于这个系数的取值范围,在经典的书籍中往往没有描述,但是在某些学位(期刊)论文中能找到参考。期刊论文在算法描述方面往往比较精简,就算法实现来说,其算法细节不会很翔实。然而,在需要对算法的性能进行探讨或对算法本身进行创新时,一些期刊论文能为改进算法提供指导思路。例如,Luo等[9]对比了LBM中几种常见的模型,对比了各种模型的特定适用范围,这对于深入了解各模型的性能特征有很好的指导作用。
2.获得可供参考的样本程序
学习算法,既可以按“基础理论-数学形式-计算机程序”的顺序进行,也可以按“计算机程序-数学形式-基础理论”的倒序进行。通常,计算机程序是算法的最终体现形式,因此只要能结合对算法的理解读懂程序,也就容易理解一个算法的来龙去脉了。一些新近的算法一般在网络上都有基础的、开源的、可参考的样本程序,这些程序往往是我们高效学习算法的重要指导。在LBM的学习过程中,有些重要的网站不仅提供样本程序,还提供开源的软件包。这些网站提供的程序资源有助于我们快速学习LBM。在palabos网站的W IKI中提供了LBM的圆柱绕流、多相流、热对流等的MATLAB语言样本程序,这些样本程序对于理解LBM算法的碰撞、迁移机理、平衡态分布函数、宏(微)观边界设置方法提供了范例。还有一些网站开发了开源的LBM程序软件包,提供了基础的算法平台,如palabos、OpenLB等,这些平台为大家提供了方便和快捷的程序开发工具,但在使用这些开发平台之前,仍需对LBM的基础机理有充分理解。此外,还有一些专门的程序网站(如程序员、GitHub等平台)上也有很多宝贵的程序资源,涉及与LBM相关的各类诸如LBM-MRT模型、3D的LBM模型等可借鉴的程序代码,可为我们学习LBM提供极大的帮助。从笔者学习LBM的经历来看,一边看文献,一边读程序,两者相互对照可显著提高学习效率。
3.获得“在线”学习支持
在算法的学习过程中,通常会遇到一些难以逾越的“关卡”,这些“关卡”既可能是算法的难点部分或新拓展部分,也可能是数学公式向程序转化过程中的细节处理技巧。当这些“关卡”通过文献(或其他方式)难以克服时,学习者则希望能直接请教已经逾越这些关卡的前辈,以得到指点。如果在学习者身边有可方便询问的前辈,问题的解决可能就会变得简单,但如果身边没有这样的前辈,那么获得“在线”支持就十分重要。这里所说的在线支持主要包括三种方式:
(1)QQ群、微信群。LBM方法涉及广泛的理工科学科领域,随着近年来的应用扩展,出现了一批活跃的QQ群、微信群。这些群里有资深专家、青年教师,还有一些研究生和初学者。对于算法和程序中的关键问题,在群里提问一般都会得到合适的解答。例如,LBM的无量纲转化问题令很多初学者头疼;LBM的状态方程来源于稀薄气体动力学,为什么LBM又可以用于液体的流动模拟;等等。(www.chuimin.cn)
(2)专业的网络论坛。有时,论坛也是很好的在线帮手,在论坛中,问题如果能得到广泛关注,往往能被讨论得更加充分。此外,我们也可以通过论坛的搜索功能,搜索在学习过程中可能遇到的共性问题,通过了解相关的问题以及回复,学习者可能会发现自己所关注问题的解决方案。在LBM学习中,流体中文网的LBM模块、Palabos的论坛等,有很多可供学习的问题和解答。
(3)E-mail问询。有时,我们在科技论文中发现有关某种新算法的报道,而这种算法很有希望能解决我们面临的科学研究问题,然而由于是创新的算法,在其他渠道找不到可供学习的参考资料。在这种情况下,我们可以直接联系论文的通讯作者,通过E-mail的方式问询算法中的相关问题。在LBM的学习中,笔者曾采用E-mail问询的方式询问过论文作者的算法问题,也解答过来自其他学者的提问。
4.积极参加学术活动,获得现场学习机会
对于算法学习,现场研讨也是非常重要的方式。现场算法研讨主要针对最新的算法模型及应用,这对于科学创新是非常重要的。现场研讨常见的形式包括:
(1)资深专家的专场报告。专场报告通常聚焦在新算法的机理及创新应用方面,不会太专注算法的细节,比较宏观。专场报告有利于开阔我们的研究视野,同时学习者也可以抓住机会提问,结合报告内容和自身需求向专家征求解答,解决自身在学习和研究中遇到的问题。
(2)学术会议。对于主题明确的学术会议,通常聚焦领域内的重要问题和前沿问题,有较多的同行齐聚和报告,建议学习者应尽量参加。在参加学术会议的过程中,一些报告内容可以激发我们的研究灵感,而且还有认识同行的机会,大家通过互相了解,可在一起询问和探讨算法和模型的细节问题。在LBM领域中,比较重要的学术会议有两个:介观方法国际会议ICMMES(International Conference for Mesoscopic Methods in Engineering and Science)、ICDSFD(International Conference on Discrete Simulation of Fluid Dynamics)。
(3)学术论坛。在LBM领域,一年一度的“LBM与微流动学术研讨会”自2013年组织以来,已经举办九届(截至2021年),笔者是该论坛的主要组织者之一。该论坛以LBM算法及其应用为基础,聚集了国内一大批来自理工科学科领域的中青年学者和研究生,可为他们提供一个学习和使用LBM方法的重要平台。
5.总结、拓展、传承学习成果
算法学习的目标是理解、掌握和运用。对算法的充分了解,应该同时体现在三方面:掌握算法的基本理论;数学形式;程序实现。对于LBM的学习而言,其核心是碰撞和迁移步骤,同时,平衡态分布函数、边界设置等也是重要环节。但是需要说明的是,LBM的算法相对于其他确定性的算法(如C-均值聚类、遗传算法、小波分析、支持向量机等算法)不同的是,LBM本身有着更丰富的内容。除了空间维度不同(包括一维、二维、三维),还包括不同的格子形式(如D2Q7、D2Q9、D3Q15、D3Q19等),不同的松弛因子处理形式(如LBGK、MRT),不同的边界设置(如反弹、外推、非平衡外推、Zhou/He边界等形式),不同的算法升级模式(如LBM多相流模型、浸入边界-LBM模型、LBM动理学模型等),以及不同的程序架构(如串行、MPI并行、GPU并行等)。这些内容之间相互组合,使得LBM可作为一类算法。还需要说明的是,我们在设计程序时,程序语言的选择也需要技巧,根据笔者的经验,在初学LBM时,MATLAB是较好的语言选择,因为MATLAB程序语言精练,便于把握算法的步骤和全局结构,输出、调试等都十分方便。但在程序的应用过程中,MATLAB的运行速度是一个大障碍,尤其是三维程序的计算非常耗时。这时选择C++或Fortran就是更好的选择。基于LBM的系统性和复杂性,在学习LBM的过程中,就需要对LBM进行有条理的总结,最好对常用的具体方法亲自编写程序。实际上,由于一些步骤和代码是通用的,当从一种具体算法(如LBGK)改变为另一种算法(如MRT)时,只需要对程序进行局部调整即可。在对感兴趣的LBM算法已经进行程序实现并进行验证后,就可以相对自由地在原有程序基础上进行适当拓展,以满足各自领域的研究需求。同时,我们对算法和程序本身进行有条理的总结,对于一个大课题组来说,这是良好的传承。这种传承,将是整个课题组的资源积累,后面的同学可以在这个积累的基础上少走弯路,提高学习效率,从而有更多的时间去发展和应用原有的算法,做出更高水平的创新。
有关微流控芯片技术与建模分析的文章
由于前面介绍的LBM并不能处理外力对流场的作用,因此要想实现LBM和IB两种方法的结合,还需要对原有框架进行改进。因此,LBM和IB的结合方式可概括为两方面:一方面,浸入边界将其节点的拉格朗日力转移分配到流体节点上,以影响流体的流动状态;另一方面,在浸入边界附近的流场速度加权累计到相应的节点上,赋予节点一个速度,从而使浸入边界具备运动属性。......
2023-11-03
使用微液滴芯片可能胜任的挑战不仅在于分析单细胞,还包括高通量实现数千个独立单细胞的并行分析,这也是液滴微流控芯片非常适合的一项工作。液滴微流控系统也为核酸扩增提供了一个良好的技术平台。此外,液滴微流控芯片平台也应用于功能性生物材料的合成,特别值得关注的是,使用液滴模板的水凝胶被用于包裹细胞、酶、DNA,甚至微生物。......
2023-11-03
偏微分方程起源于微积分理论形成后不久。在整个18世纪,对偏微分方程的研究都处于不自觉的状态。至此,人们逐渐归纳清楚了二阶线性偏微分方程的类型。法国数学家阿达马在20世纪初建立了偏微分方程定解问题适定性的概念,被誉为二阶线性偏微分方程的总结者。随着20世纪末之后计算机性能的提高,偏微分方程的数值解法得到了充分的发展和应用,典型的例子是有限元法。......
2023-11-03
偏微分方程的解法主要分为两大类,即解析解法和数值解法。其中,有限差分法、有限体积法和有限元法是三种发展成熟并广泛应用的偏微分方程(组)数值解法。所求出的差分方程组的解,就是微分方程定解问题的数值近似解。因此,在某种程度上LBM也可以被视为一种求解偏微分方程的方法。......
2023-11-03
HPP模型能够满足质量和动量守恒定律,被公认为是第一个格子气自动机模型,为格子Boltzmann方法的发展奠定了基础。该模型中格子具有很好的对称性,很大程度上弥补了HPP模型的缺陷,基于FHP模型可以推导出Navier-Stokes方程,开创了格子Boltzmann方法研究的新局面。......
2023-11-03
药物筛选和新药研发需要分析大量候选药物的活性成分、代谢、毒性等,而微流控芯片因其可以模拟体内环境,以及高通量、自动化、快速的特点可用于药物的筛选。细胞水平的药物测试是判定抗肿瘤药物敏感性的有效手段之一,目前已有报道将微流控芯片与质谱联用,整合细胞培养、器官或组织芯片、代谢物采集、样品预处理和检测等单元进行药物代谢研究,集成化的微流控芯片也可同时进行高通量细胞毒性筛选和代谢物的在线监测。......
2023-11-03
而在检测微量样品时,需要提取样品处理单元。样品前处理的目的主要有减少样品的复杂性和浓缩样品。样品前处理手段主要有萃取、过滤、膜分离、等速电泳、自由流电泳、层析技术等。但是芯片样品前处理的技术含量高、操作难度大,芯片样品前处理目前可以有效地重现大多数常规操作,是微流控芯片研究的一个热点方向。......
2023-11-03
微流控芯片在细胞的培养、分离、组分分析及细胞操纵方面都有应用。将光镊(或超声)捕获、光穿孔、细胞裂解、电泳分离和细胞流失计数等操作单元集成到一块微流控芯片,并把得到的信息进行汇总、分析,就可以完成对单细胞的精准操控[3]。这些局限性使得很难在芯片上再现器官的所有特征,利用微流控芯片是一个创建受控环境的方法,还需要其他技术不断提高器官芯片的性能和与真实器官的接近程度[4,5]。......
2023-11-03
相关推荐