"An Introduction to Petroleum Reservoir Simulation is aimed toward graduate students and professionals in the oil and gas industry working in reservoir simulation. It begins with a review of fluid and rock properties and derivation of basic reservoir engineering mass balance equations. Then equations and approaches for numerical reservoir simulation are introduced. The text starts with simple problems (1D, single phase flow in homogeneous reservoirs with constant rate wells) and subsequent chapters slowly add complexities (heterogeneities, nonlinearities, multi-dimensions, multiphase flow, and multicomponent flow). Partial differential equations and finite differences are then introduced but it will be shown that algebraic mass balances can also be written directly on discrete grid blocks that result in the same equations. Many completed examples and figures will be included to improve understanding. An Introduction to Petroleum Reservoir Simulation is designed for those with their first exposure to reservoir simulation, including graduate students in their first simulation course and working professionals who are using reservoir simulators and want to learn more about the basics. Presents basic equations and discretization for multiphase, multicomponent transport in subsurface media in a simple, easy-to-understand manner Features illustrations that explain basic concepts and show comparison to analytical solutions and commercial simulators Includes dozens of completed example problems on a small number of grid blocks Offers pseudocode and exercises to allow the reader to develop their own computer-based numerical simulator that can be verified against analytical solutions and commercial simulators."-- Provided by publisher Front Cover DEVELOPMENTS IN PETROLEUM SCIENCE 75 An Introduction to Multiphase, Multicomponent Reservoir Simulation Copyright Dedication Contents Preface Acknowledgments Nomenclature 1 - Review of reservoir rock and fluid properties 1.1 Introduction 1.2 Overview of reservoir engineering principles 1.3 Definitions 1.3.1 Phases and components in subsurface porous media 1.3.2 Porosity, saturation, density, and concentrations 1.4 Phase behavior 1.5 Rock and Fluid Properties 1.5.1 Formation properties 1.5.2 Gaseous phase properties 1.5.3 Oleic phase properties 1.5.4 Aqueous phase properties 1.6 Petrophysical properties 1.6.1 Darcy's law 1.6.2 Relative permeability 1.6.2.1 Definition and relationship with phase saturation 1.6.2.2 Empirical models 1.6.3 Capillary pressure 1.6.3.1 Definition and relationship with phase saturation 1.6.3.2 Capillary pressure models 1.6.4 Capillary pressure scanning curves 1.7 Reservoir initialization 1.8 Pseudocode 1.8.1 Relative permeability 1.8.2 Capillary pressure 1.8.3 Initialization 1.8.4 Preprocess 1.9 Exercises References 2 - Phase mass balances and the diffusivity equation 2.1 Introduction 2.2 Phase mass balances 2.2.1 Mass balance of a phase in Cartesian coordinates 2.3 The continuity equation 2.4 The diffusivity equation 2.4.1 General multiphase flow 2.4.2 Single-phase flow 2.4.2.1 Slightly compressible liquids 2.4.2.2 Compressible gases 2.5 Analytical solutions 2.5.1 1D heat equation in a finite medium 2.5.2 1D heat equation in a semi-infinite medium 2.5.3 Solution in cylindrical coordinates (around a wellbore) 2.5.3.1 Pseudo-steady-state (pss) flow 2.5.3.2 Infinite-acting flow 2.6 Exercises References 3 - Finite difference solutions to PDEs 3.1 Introduction 3.2 Taylor series and finite differences 3.2.1 First-order forward difference approximation 3.2.2 First-order backward difference approximation 3.2.3 Second-order, centered difference approximation 3.2.4 Approximations to the second derivative 3.2.5 Generalization to higher-order approximations 3.3 Discretization of the parabolic diffusivity (heat) equation 3.4 Boundary and initial conditions 3.4.1 Dirichlet boundary condition 3.4.2 Neumann boundary condition 3.4.3 Robin boundary conditions 3.5 Solution methods 3.5.1 Explicit solution to the diffusivity equation 3.5.2 Implicit solution to the diffusivity equation 3.5.3 Mixed methods and Crank–Nicolson 3.5.4 Linear systems of equations 3.6 Stability and convergence 3.7 Higher-order approximations 3.8 Pseudocode for 1D, single-phase flow 3.9 Exercises References 4 - Multidimensional reservoir domains, the control volume approach, and heterogeneities 4.1 Introduction 4.2 Gridding and block numbering in multidimensions 4.2.1 Grid block indexing in 2D and 3D 4.2.2 Grid dimensions 4.2.3 Irregular geometry and inactive grids 4.3 Single-phase flow in multidimensions and the control volume approach 4.3.1 Accumulation 4.3.2 Flux terms 4.3.3 Sources and sinks (wells) 4.3.4 Single-phase flow 4.4 Wells, boundary conditions, and initial conditions 4.4.1 Constant rate wells 4.4.2 Neumann boundary conditions 4.4.3 Dirichlet conditions 4.4.4 Corner blocks 4.4.5 Initial conditions 4.5 Reservoir heterogeneities 4.5.1 Fluid properties 4.5.2 Geometric properties 4.5.3 Accumulation terms 4.6 Matrix arrays 4.6.1 Accumulation and compressibility 4.6.2 Transmissibility 4.6.3 Source terms 4.6.4 Gravity 4.7 Pseudocode for single-phase flow in multidimensions 4.7.1 Preprocessing 4.7.2 Interblock transmissibility 4.7.3 Well Arrays 4.7.4 Grid Arrays 4.7.5 Main code 4.7.6 Postprocessing 4.8 Exercises References 5 - Radial flow, wells, and well models 5.1 Introduction 5.2 Radial flow equations and analytical solutions 5.3 Numerical solutions to the radial diffusivity equation 5.3.1 Gridding 5.3.2 Discretization 5.4 Wells and well models in Cartesian grids 5.4.1 Well constraints 5.4.2 Steady-state radial flow around a well 5.4.3 Mass balance on the well-residing grid block 5.4.4 Extension to horizontal wells and anisotropy 5.5 Inclusion of the well model into the matrix equations 5.6 Practical considerations 5.7 Pseudocode for single-phase flow with constant BHP wells 5.8 Exercises References 6 - Nonlinearities in single-phase flow through subsurface porous media 6.1 Introduction 6.2 Examples of nonlinearities in single-phase flow problems 6.2.1 Gas flow 6.2.1.1 Compressibility 6.2.1.2 Viscosity 6.2.1.3 Permeability and the Klinkenberg effect 6.2.2 Non-Newtonian flow 6.2.3 Forchheimer flow 6.3 Numerical methods for nonlinear problems 6.3.1 Explicit update of fluid and reservoir properties 6.3.2 Picard iteration 6.3.3 Newton's method 6.3.3.1 1D Newton's method 6.3.3.2 Multidimensional Newton's method 6.4 Pseudocode for Newton's method 6.5 Exercises References 7 - Component transport in porous media 7.1 Introduction 7.2 Transport mechanisms 7.2.1 Advection 7.2.2 Hydrodynamic dispersion 7.2.2.1 Diffusive transport 7.2.2.2 Mechanical dispersion 7.2.2.3 Combined effects and hydrodynamic dispersion 7.2.3 Reactive transport and other source terms 7.3 Component mass balance equations 7.3.1 Single-phase flow 7.3.2 Overall compositional equations 7.4 Analytical solutions 7.4.1 1D Cartesian ADE in a semi-infinite domain 7.4.1.1 Constant concentration at xD=0 7.4.1.2 Mixed boundary condition at xD = 0 7.4.2 Semianalytical solution to two-phase flow 7.4.2.1 Fractional flow 7.4.2.2 Buckley–Leverett solution 7.4.2.3 Shock fronts 7.4.2.4 Breakthrough time and oil recovery 7.4.2.5 Capillary pressure and smearing of the shock front 7.4.2.6 Pseudocode for semianalytical Buckley–Leverett solution 7.5 Exercises References 8 - Numerical solution to single-phase component transport 8.1 Introduction 8.2 Finite difference solution to the ADE in 1D for a single component 8.3 Discretization of advective terms 8.3.1 Cell-centered 8.3.2 Upwinding 8.3.3 Matrices 8.4 Wells and boundary conditions 8.4.1 Wells 8.4.2 No flux boundary condition 8.4.3 Constant concentration (Dirichlet) 8.5 Solution methods 8.5.1 Implicit pressure, explicit concentration (IMPEC) 8.5.2 Implicit pressure, implicit concentration 8.5.3 Fully implicit 8.6 Stability 8.7 Numerical dispersion 8.8 Channeling and viscous fingering 8.9 Multicomponents, multidimensions, and additional forms 8.10 Pseudocode for component transport 8.11 Exercises References 9 - Numerical solution to the black oil model 9.1 Introduction 9.2 The black oil model 9.3 Finite difference equations for multiphase flow 9.4 Solution methods 9.4.1 Implicit pressure, explicit saturation 9.4.2 Simultaneous solution method 9.4.3 Fully implicit method 9.5 Interblock transmissibilities and upwinding 9.6 Stability 9.7 Wells and well models 9.7.1 Constant rate injector wells 9.7.2 Constant rate producer wells 9.7.3 Constant BHP injector wells 9.7.4 Constant BHP producer wells 9.7.5 Time-dependent well constraints 9.8 Pseudocode for multiphase flow 9.8.1 Preprocessing 9.8.2 Block properties 9.8.3 Interblock properties 9.8.4 Well productivity index 9.8.5 Well arrays 9.8.6 Grid arrays 9.8.7 Main code 9.8.8 Postprocessing 9.9 Exercises References 10 - Numerical solution to multiphase, multicomponent transport 10.1 Introduction 10.2 Compositional equations for multiphase flow 10.3 Finite difference equations 10.4 Solution method 10.4.1 Flash calculations 10.4.1.1 K-values 10.4.1.2 Rachford–Rice flash 10.4.2 Equations of state 10.4.2.1 Cubic EOS 10.4.2.2 Mixing rules 10.4.2.3 Solution to the cubic EOS 10.4.2.4 K-value calculation 10.4.3 Phase saturation 10.4.4 Two-phase compressibility 10.4.5 Phase viscosity 10.4.6 Relative permeability and transmissibility 10.4.7 Wells and source terms 10.4.8 Pressure and composition solution 10.5 Oleic–aqueous bipartitioning components 10.6 Pseudocode for multiphase, multicomponent transport 10.7 Exercises References Index A B C D E F G H I J K L M N O P R S T U V W Back Cover