湍流与超级计算
2021-07-27李新亮
李新亮
无论在工程应用上还是在理论上,湍流都是非常重要的研究课题。目前,直接数值模拟是研究湍流的重要工具,被认为是通向解决湍流的重要路径,而直接数值模拟严重依赖于计算资源。因此,业界有言:一代超算,一代湍流直接数值模拟。
物理学最后一个难题
湍流是一种非常复杂的流动,广泛存在于航空航天、工业生产与自然界中。比如说大型飞机、火箭表面气体的流动,发动机内气体的流动,基本都是以湍流状态存在的,河流、海洋、大气以及宇宙空间内的流动,通常也表现为湍流状态。
湍流是一个百年的理论难题——难点在于这种流动是多尺度、非线性、非定常的复杂流动。从19世纪雷诺通过实验开展湍流研究以来,150多年过去了,湍流的难题还没有完全解决,甚至连严格的定义都没有提出来。
德国物理学家海森堡曾经说过,他见到上帝的时候,会问上帝两个问题,一个是相对论,另外一个问题就是关于湍流。他相信上帝会给出第一个问题的答案。言下之意是湍流这么难的问题,恐怕上帝都很难给出答案。美国物理学家费曼说,湍流是物理学最后一个尚未解决的理论难题,在科学史上都是很罕见的难题。湍流问题一旦解决,必将大幅促进数学、物理学的研究水平。
湍流的控制方程相对比较简单,就是一个非线性的偏微方程,如果湍流问题得到解决,偏微方程的存在性、唯一性、解的特性等问题将得到解决,有重要的数学理论价值。
更为关键的是,湍流的研究有非常重要的实际应用价值。比如,减阻降噪,这是大飞机空气动力学经常要考虑的问题。飞机在空中飞的时候,它的大部分阻力来自于与空气的摩擦力,而流动从层流转变成湍流以后,单位面积的摩擦阻力会扩大到原来的五六倍。如果能够对流动的机理进行深入的认识,从而对湍流进行控制就可以大幅降低湍流的阻力,大大提高飞机的经济性。
此外,飞机的相当一部分噪声也是来自于湍流,如果我们能够对湍流有准确的认识,就可以在降噪方面有所突破。
湍流的研究方法
对湍流的研究有哪些手段?概括来说,无外乎是三种手段:理论、实验、数值计算。我们课题组主要是对它进行数值计算。
对湍流进行数值计算,主要有三类手段:一类叫雷诺平均方法。湍流太复杂,流动里面大尺度的、小尺度的涡非常混乱,模拟起来难度很大。因此,工程上常用雷诺平均方法,对流动进行长时间的平均,这样原本复杂的流动就光滑多了,然后再求解平均后的流场。不过,平均后的流场虽然好解,模型却很难建立。因为原先的方程一平均,多了一个雷诺应力,现在在建立模型方面还有巨大的挑战。
第二类方法叫大涡模拟,就是对流动进行滤波,把小尺度的物理量过滤掉,只保留大尺度的物理量并对它进行求解,最后通过模型体现出来。
第三个研究手段叫直接数值模拟,它所用的纳维斯克斯方程是用最密集的網格分辨出湍流所有尺度的流场,相当于从头计算的一种方法。这种方法的优势是可以不用建立模型了,而且具有非常好的普适性,计算的可靠度是最高的,计算出来的数据的分辨率也是最高的。因此,它是研究湍流机理、进行湍流模型研究、进行湍流流动控制的非常有效的手段。
此外,直接数值模拟还有一个重要使命:我们认为它是通往解决湍流难题的一条重要途径。当然这个方法的难度也是很大的——它计算量太大了。我们仍然以飞机来举例。一架飞机长度达几十米,翼展也有几十米,这么大尺度的流场我们要给它打上网格,而湍流大大小小的涡很多,最小尺度的涡是微米量级。要在这么大尺度的流场上打上微米量级间隔的网格,可想而知计算量是一个天文数字了。
美国的流体力学家Splart在本世纪初进行了估算,按照计算机当时的发展速度,他得出结论说整架飞机的直接数值模拟要到2080年才能够实现。当然,现在直接数值模拟技术、大型计算机的发展速度,都超出了他的估算,因此最终实现会比他的预测早一些。另外,虽然整架飞机尺度的直接数值模拟现在难度很大,但是,部件级的直接数值模拟已经可以实现了。
直接数值模拟的发展
1997年,笔者在读博士期间,使用超级计算机Power Challenge进行直接数值模拟研究。Power Challenge是当时中国最快的计算机之一,每秒可运算10亿次。当时我们用这个计算机计算了一个槽道流动的数值模拟,方法是在两块平板中间夹一个槽道,风从槽道里吹过,它里面是湍流。别看这个流动简单,却是直接数值模拟的最经典算例,也是直接数值模拟最早的范例。在这个计算里,网格已经达到100万量级。
到了2000年,数学科学院张林波研究员建立了中国的第1个PC cluster(高性能计算集群),就是把若干PC机串起来,串成一个大的机器。现在主要的并行机都是cluster构架,是那个时代发展起来的。
笔者2000年到清华大学做博士后研究,也建了一个cluster,它具有每秒100亿次的计算能力。这样的能力能够计算一个小的方块内流动的直接数值模拟,它是研究湍流深层次的一个典型的模型。有了它,网格可以达到千万量级,能研究湍流里深层次的东西,比如湍流的能谱、标度律、拟序结构等等一系列的要素。
这之后,中国做出了每秒运算能力达千亿次的计算机。用这台机器计算槽道里的湍流,网格可以达到1997年时的8倍,而槽道的宽度,也到了厘米量级,基本上接近工业中所使用的小槽道了。
2002年至2005年,中国的超算能力进一步发展到每秒万亿次。当时还提出了一个新的概念叫网格计算。什么叫网格计算?就是在中国建立若干超算中心,每个超算中心作为全国超算能力网格的一个节点,把它统合起来就叫网格计算,实际上就是咱们现在云计算的雏形。
有了这个能力,就可以进行平板边界层的直接数值模拟。直观地讲,就是风吹过一个平板,在这个平板上的流动会有边界层,开始转变成湍流。这个平板不简单,是飞行器大范围平直段的模型。飞行器有弯曲的面,也有平直的面,平直段边界层内的流动都可以用这个平板来模拟。平板的尺度可以达到分米量级,基本上接近工业应用领域的尺度。通过这个模拟我们对湍流的机理有了深入的认识。
进入21世纪的第2个十年后,中国的天河一号、天河二号超级计算机相继建成,天河一号的运算能力达到千万亿次每秒,天河二号的性能比天河一号又要高10倍,用这个机器可以模拟更复杂的流动现象。比如,对冲压发动机里面的核心的流动激波边界层干扰进行数值模拟。在模拟之外,还可以做流动控制。比如上文例举的平板,在平板的右侧布上若干条纹,风吹过这块平板时,我们发现在条纹区域,湍流就被抑制了,涡都发生在平板的光滑区域。
再往后又有了每秒运算能力达10亿亿次级的超算。有了这样的计算能力,我们模拟了一个三维的机翼,做了大涡模拟,这时的网格已经能达到百亿量级了。