数值模拟的发展史
数值模拟技术诞生于1953年Bruce G.H和PeacemanD.W模拟了一维气相不稳定径向和线形流。受当时计算机能力及解法限制,数值模拟技术只是初步应用于解一维一相问题。两相流动模拟诞生于1954年,West W J和GarVIn W.W模拟了油藏不稳定两相流。
1955年Peaceman与Rachford研发的交替隐式解法(ADI)是数值模拟技术的重大突破。该解法非常稳定,而且速度快,所以迅速在包括石油,核物理,热传导等领域得到广泛应用。1958年Douglas,Jim和Blair,P.M第一次进行了考虑毛管压力效果的水驱模拟。1959年,Douglas Jim和Peaceman D.W第一次进行了两维两相模拟,这标志着现代数值模拟技术的开始。在他们的模拟器里全面考虑了相对渗透率,粘度,密度,重力及毛管压力的影响。
60年代数值模拟技术的发展主要在数值解法,第一个有效的数值模拟解法器是1968年Stone推出的SIP(Strong Implicit Procedure)。该解法可以很好地用来模拟非均质油藏和形状不规则油藏。另一个突破是时间隐式法,该方法可以用来有效的解高流速问题,比如锥进问题。60年代其他方面的发展还有1967年Coats K.H和Nielsen R.L首次进行了三维两相模拟,而且提出了垂直平衡和拟相对渗透率及毛管压力方法。1968年Breitenbach E.A发表了三维三相模拟解法。
Stone在70年代发表了三相相对渗透率模型,由油水和油气两相相对渗透率计算油、气、水三相流动时的相对渗透率,该技术现在还广为应用。70年代另一项主要成就是Peaceman提出的从网格压力来确定井底流压的校正方法,及现在通用的Peaceman方程。在解法方面的发展是采用了正交加速的近似分解法。70年代在组分和热采模拟方面也取得很大进展,1973年Nolen J.S描述了考虑油气中间组分分布的组分模拟,Cook提出变黑油模拟来进行组分模拟。Shutler在1970年发表了对两维三相模型的蒸气注入模拟。70年代在EOR方面也取得了极大进展。
80年代最大的成就是Appleyyard J R和Cheshire I.M发表了嵌套因式分解法,该解法非常稳定而且速度快,是目前最为广泛应用的解法。正是基于该解法,Cheshire I.M于1981年同John Appleyard和Jon Holmes成立ECL公司,开始研发后来主导数值模拟软件市场的ECLIPSE软件。80年代见证的另一个主要发展是组分模型,虽然组分模型在60年代就已经推出,但很不稳定。80年代提出的体积平衡和Yong-Stephenson方程解决了组分模型稳定问题,使组分模型可以广为应用。Ponting D.K提出了角点网格来模拟模型,这样可以真实地描述油藏。
90年代数值模拟的进展主要在粗化技术,并行计算,PEBI网格等方面。Zoltan E.Heinemann提出了PEBI网格,PEBI网格结合了正交网格和角点网格的优点,现在正逐渐成为主流数值模拟网格体系。VIP于1994年推出并行算法,ECLIPSE于1996年推出并行算法。CMG于2001年推出并行算法。粗化技术的难点在于渗透率的粗化,基于流动计算进行的渗透率粗化可以较真实的符合地质模型,现在新的粗化技术还在发展。21世纪数值模拟技术发展体现在两方面,一方面是一体化模拟技术,数值模拟将不只是对油藏的模拟,数值模拟将对油藏,井筒,地面设备,管网以及油气处理厂进行一体化模拟,从而最优化管理油田。另一方面是定量进行属性不确定性分析,定量分析属性不确定性对计算结果的影响。
模拟特性
在计算机上实现一个特定的计算,非常类似于履行一个物理实验。这时分析人员已跳出了数学方程的圈子来对待物理现象的发生,就像做一次物理实验。数值模拟实际上应该理解为用计算机来做实验。比如某一特定机翼的绕流,通过计算并将其计算结果在荧光屏上显示,可以看到流场的各种细节:如激波是否存在,它的位置、强度、流动的分离、表面的压力分布、受力大小及其随时间的变化等。通过上述方法,人们可以清楚地看到激波的运动、涡的生成与传播。总之数值模拟可以形象地再现流动情景,与做实验没有什么区别。
数值模拟包含的步骤
从上面的例子可以看到,数值模拟包含以下几个步骤:
首先要建立反映问题(工程问题、物理问题等)本质的数学模型。具体说就是要建
立反映问题各量之间的微分方程及相应的定解条件。这是数值模拟的出发点。没有正确完善的数学模型,数值模拟就无从谈起。牛顿型流体流动的数学模型就是著名的纳维—斯托克斯方程(简称方程)及其相应的定解条件。
数学模型建立之后,需要解决的问题是寻求高效率、高准确度的计算方法。由于人们的努力,目前已发展了许多数值计算方法。计算方法不仅包括微分方程的离散化方法及求解方法,还包括贴体坐标的建立,边界条件的处理等。这些过去被人们忽略或回避的问题,现在受到越来越多的重视和研究。
在确定了计算方法和坐标系后,就可以开始编制程序和进行计算。实践表明这一部分工作是整个工作的主体,占绝大部分时间。由于求解的问题比较复杂,比如方程就是一个非线性的十分复杂的方程,它的数值求解方法在理论上不够完善,所以需要通过实验来加以验证。正是在这个意义上讲,数值模拟又叫数值试验。应该指出这部分工作决不是轻而易举的。
在计算工作完成后,大量数据只能通过图像形象地显示出来。因此数值的图像显示也是一项十分重要的工作。目前人们已能把图作得像相片一样逼真。利用录像机或电影放映机可以显示动态过程,模拟的水平越来越高,越来越逼真。