当前位置: X-MOL 学术J. Comput. Phys. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Sequential fully implicit Newton method for compositional flow and transport
Journal of Computational Physics ( IF 3.8 ) Pub Date : 2021-07-08 , DOI: 10.1016/j.jcp.2021.110541
Jiawei Li , Pavel Tomin , Hamdi Tchelepi

Compositional simulation for flow and transport in porous media is essential for modeling Enhanced Oil Recovery (EOR) processes. The Sequential Fully Implicit (SFI) scheme is considered as a more flexible and potentially more computationally efficient alternative to the commonly used Fully Implicit Method (FIM). SFI was proposed along with the multiscale method where the flow and transport problems are solved in sequence. SFI opens the door for flexible discretizations, specialized linear solvers, and adaptive strategies. In the SFI method, a time step entails several ‘outer’ iterations. Each iteration consists of two steps: (1) a pressure equation is formed and solved implicitly, and then (2) a set of transport equations is solved, also implicitly. The (outer) iterations are conducted in a fixed-point manner until global convergence is reached. SFI can suffer from slow convergence, or even convergence failure, in strongly coupled flow and transport problems. Examples include dominant buoyancy and complex phase behaviors which are typical in compositional processes. Wong et al. [40] proposed the Sequential Fully Implicit Newton (SFIN) method for multi-physics problems in reservoir simulation and achieved superior outer loop convergence. In this work, we develop the SFIN method for compositional flow and transport problems, and in particular, show how the main assumption of fixing the total velocity can be incorporated. The key step of the SFIN method is a global Newton update that is performed at the end of each flow-transport iteration. During this outer Newton step, the pressure and transport variables are updated together to resolve the coupling between them better. The corresponding linear system is solved by a Krylov solver (e.g., GMRES) using a Jacobian-free approach that only entails matrix-vector multiplications. The latter is constructed by reusing previously computed Jacobian matrices and their preconditioners' information in a computationally efficient way. We present several challenging two- and three-dimensional examples and show that the SFIN method can significantly reduce the number of outer and inner loop iterations compared with the original (non-accelerated) SFI method. We analyze both the nonlinear and linear convergence behaviors for the SFIN method's key components and provide potential speedup estimates with respect to the SFI method.



中文翻译:

组合流和输运的序贯全隐式牛顿法

多孔介质中流动和传输的成分模拟对于模拟提高石油采收率 (EOR) 过程至关重要。顺序完全隐式 (SFI) 方案被认为是比常用的完全隐式方法 (FIM) 更灵活且计算效率更高的替代方案。SFI 与多尺度方法一起被提出,其中流动和传输问题按顺序解决。SFI 为灵活的离散化、专门的线性求解器和自适应策略打开了大门。在 SFI 方法中,一个时间步长需要多次“外部”迭代。每次迭代包括两个步骤:(1)形成并隐式求解压力方程,然后(2)同样隐式求解一组输运方程。(外部)迭代以定点方式进行,直到达到全局收敛。在强耦合的流动和传输问题中,SFI 可能会遇到收敛缓慢,甚至收敛失败。例子包括在组成过程中典型的显性浮力和复杂的相行为。王等人。[40]针对油藏模拟中的多物理场问题提出了Sequential Full Implicit Newton(SFIN)方法,并实现了卓越的外环收敛。在这项工作中,我们为成分流和传输问题开发了 SFIN 方法,特别是展示了如何将固定总速度的主要假设结合起来。SFIN 方法的关键步骤是在每次流传输迭代结束时执行的全局牛顿更新。在这个外部牛顿步骤中,压力和传输变量一起更新,以更好地解决它们之间的耦合。相应的线性系统由 Krylov 求解器(例如,GMRES)使用仅需要矩阵向量乘法的无雅可比方法求解。后者是通过以计算高效的方式重用先前计算的雅可比矩阵及其预处理器的信息来构建的。我们展示了几个具有挑战性的二维和三维示例,并表明与原始(非加速)SFI 方法相比,SFIN 方法可以显着减少外循环和内循环迭代的次数。我们分析了 SFIN 方法关键组件的非线性和线性收敛行为,并提供了关于 SFI 方法的潜在加速估计。后者是通过以计算高效的方式重用先前计算的雅可比矩阵及其预处理器的信息来构建的。我们提出了几个具有挑战性的二维和三维示例,并表明与原始(非加速)SFI 方法相比,SFIN 方法可以显着减少外循环和内循环迭代的次数。我们分析了 SFIN 方法关键组件的非线性和线性收敛行为,并提供了关于 SFI 方法的潜在加速估计。后者是通过以计算效率高的方式重用先前计算的雅可比矩阵及其预处理器的信息来构建的。我们提出了几个具有挑战性的二维和三维示例,并表明与原始(非加速)SFI 方法相比,SFIN 方法可以显着减少外循环和内循环迭代的次数。我们分析了 SFIN 方法关键组件的非线性和线性收敛行为,并提供了关于 SFI 方法的潜在加速估计。我们提出了几个具有挑战性的二维和三维示例,并表明与原始(非加速)SFI 方法相比,SFIN 方法可以显着减少外循环和内循环迭代的次数。我们分析了 SFIN 方法关键组件的非线性和线性收敛行为,并提供了关于 SFI 方法的潜在加速估计。我们提出了几个具有挑战性的二维和三维示例,并表明与原始(非加速)SFI 方法相比,SFIN 方法可以显着减少外循环和内循环迭代的次数。我们分析了 SFIN 方法关键组件的非线性和线性收敛行为,并提供了关于 SFI 方法的潜在加速估计。

更新日期:2021-07-16
down
wechat
bug