
The goal of this three-year research project is the development of a new-generation framework for reservoir simulation suitable for massively parallel computers and clusters of heterogeneous workstations. This tool will initially serve as a vehicle for research and will ultimately offer a basis for the development of simulators by oil and environmental companies and commercial software vendors. Several key features will distinguish this next generation of codes:
Existing sequential reservoir simulators are unable to achieve this level of performance in a reasonable time frame. Moreover, it is very difficult to efficiently port these codes to parallel computing environments because the data structures employed are not specifically designed for high performance parallel computers. Although specialized parallel simulators have recently been written for research purposes, no general purpose production codes are currently available for massively parallel processors (MPPs).
We therefore propose to construct a prototype code to establish the foundation for general purpose parallel simulation. The design of the code will permit incorporation of several existing and emerging technologies of modern petroleum engineering such as:
Some of these technologies have been used in existing simulators, but none have been efficiently incorporated into simulators for parallel systems.
The project will leverage the many man-years of work and expertise of the collaborators in reservoir simulation, parallel numerical algorithms, and portable enabling technologies for parallel computing. The design and implementation of the proposed tools will allow the industry collaborators to further develop the codes for either research or commercial purposes.
The code will be designed to ensure portability and scalability on distributed memory architectures. The project will have access to a range of systems for development and testing including workstation clusters, an IBM SP1 at Argonne, and Intel Paragon at Rice, and a Cray T3D at Cray Research. (To ensure modularity and efficiency, we will use object oriented coding as appropriate.)
Our approach to parallelization will focus on data decomposition and message passing. If machine dependent code is necessary, it will be isolated to facilitate portability. Each function or utility will be written so that future developers may readily construct custom code for particular applications. Software engineering management will be used to control the code as it is developed by teams at the three organizations.
The first step in the development of the prototype code will be to decide on the formulation of the physical model, code, and data structures capable of handling the flexible gridding required to model faults and other complex geological features. The treatment of physical and chemical phenomena will be modular so that the more accurate descriptions of these phenomena can be included as they become available. For example, better ways of modeling three phase relative permeability and capillary pressure with hysteresis for mixed wet formations are likely to be developed in the future.
The model equations describing the reservoir processes will be discretized by using higher-order flux limited schemes that have already proven to be successful in multiphase, multicomponent reservoir simulation codes developed at The University of Texas at Austin and Rice University. We will include conventional discretization schemes as options.
Automatic differentiation software developed at ANL and Rice (ADIFOR) will be used to calculate the derivatives needed for the implicit version of these algorithms. The most robust and accurate formulation will be fully implicit, higher-order approximation to the differential equations, since this allows large time steps even when the problem involves high flow rates or gradients, but adaptive switching between implicit and explicit algorithms will be included.
The solution techniques for solving the nonlinear discrete system will include domain decomposition and multilevel algorithms as well as preconditioners for the solution of the linearized Newton step by Krylov space methods. Codes will be able to treat a full permeability tensor.
Local grid refinement will be used to obtain the accurate results efficiently by using finer gridding only where gradients are high such as close to wells. Effective properties will be recalculated using upscaling techniques as needed when the grid changes. Dynamic load balancing will be used to accommodate changes in phase behavior and other variations during the simulation.
Results will be displayed using contemporary and emergent visualization techniques including 3D immersive virtual reality software developed at ANL.
Extensive validation will be performed during development using realistic data supplied by the industrial partners. We will use the new code in our own improved oil recovery research; this will provide additional testing of the code and feedback on its practicality. As in the past, we expect some of our students will go to work for companies who develop reservoir simulation codes; this will greatly facilitate the use and further development of the code.
Back to New Generation Framework homepage
Page maintained by:
joanna@mail.utexas.edu
Last modified: October 24, 1996
URL: http://www.pe.utexas.edu/CPGE/new_generation/proposal.html