+ All Categories
Home > Documents > Simulating Petroleum Reservoirs

Simulating Petroleum Reservoirs

Date post: 09-Apr-2018
Category:
Upload: mahmood731
View: 224 times
Download: 0 times
Share this document with a friend

of 24

Transcript
  • 8/8/2019 Simulating Petroleum Reservoirs

    1/24

    Design and Implementation of a Numerical Model for

    Simulating Petroleum Reservoirs

    Hassan S. Naji*, Rayyan G. Samman**, Mohammad G. Khayat** King Abdulaziz University, Jeddah, Saudi Arabia

    ** The National Commercial Bank, Jeddah, Saudi Arabia

    ABSTRACT. This paper describes the design and implementation of a numericalmodel for simulating fluid flow through petroleum reservoirs. The model can beused to study conventional as well as fractured reservoirs. It is a 3-dimensional, 3-

    phase (gas, oil and water) model. A finite-difference scheme is used to discretizethe model equations. The resulting set of discretized equations is solved fully-

    implicit for phase pressures and saturations. The model is designed for the MS

    windows platform in an Object-Oriented Programming (OOP) fashion using the MSVisual C++ Development System along with the industry-standard MFC library.

    The Component One Active-X control packages (Chart 7.0 and DBTrueGrid 7.0) are

    used to provide full featured 2-dimensional/3-dimensional charts and powerful grid

    control with a variety of features. The well knownNumerical Recipes are used toprovide numerical methods for solving the model equations.

    1. INTRODUCTION

    Numerical Petroleum Reservoir Simulators (NPRS) have proven to be highly successful for

    obtaining solutions to very complex reservoir situations. NPRS require a large number of

    data elements to perform the simulation. These data elements are complex and interrelated. In

    this paper, we present an efficient NPRS package; to be referred to as EdgeSimulator. Thepackage is designed for the MS windows platform in an Object-Oriented Programming (OOP)

    fashion using the MS Visual C++ Development System along with the industry-standard

    MFC library.

    1.1 Problem Definition

    Reservoir Simulation is the process of inferring the behavior of a real reservoir from the performance of a model of that reservoir. The model may be physical, such as a scaled

    laboratory model, or mathematical. A mathematical modelof a physical system is a set of partial differential equations, together with an appropriate set of boundary conditions that

    describe the physical processes taking place in the system. The processes occurring in petroleum reservoirs are basically fluid flow and mass transfer. Up to three immiscible phases (water, oil and gas) may flow simultaneously, while mass transfer may take place

    between the phases (chiefly between gas and oil). Gravity, capillary and viscous forces all

    play a role in the fluid flow process. The model equations must account for all these forces,

    and should also take into account arbitrary reservoir descriptions with respect to heterogeneity

    and geometry. The differential equations are obtained by combining Darcys law for each

    phase with a simple differential material balance for that phase[1-6]

    . To predict the behavior

  • 8/8/2019 Simulating Petroleum Reservoirs

    2/24

  • 8/8/2019 Simulating Petroleum Reservoirs

    3/24

    Fractured Reservoirs: this type of reservoirs is assumed to have two flowing paths,namely, matrix andfracture.

    Table 1: Comparison between petroleum reservoir simulation packages

    Feature MORE 5.5 Exodus 4.00 TurboSim1.0Cost High cost Medium cost Medium cost

    Cost factors Per module Per grid cell N/A

    Complexity Complex Complex Easy

    User interface Complex Complex Easy

    Usage Field implementation- Field implementation

    - Educational purposesEducational purposes

    Target users Advanced users- Advanced users

    - StudentsStudents

    Fluid schemes- Black oil

    - Compositional

    - Black oil

    - CompositionalBlack oil

    Solving Fluid

    Flow Equations Newton-Raphson Newton-Raphson Unknown

    Reservoir types Fractured reservoirs Fractured reservoirs Conventional reservoirs

    Phase 3-phase (oil, gas, water) 3-phase (oil, gas, water) 3-phase (oil, gas, water)

    Dimension

    One, two or three

    dimensions

    Cartesian or cylindrical

    coordinate system.

    One, two or three

    dimensions

    Cartesian or cylindrical

    coordinate system.

    One or two dimensions

    Cartesian coordinate

    system.

    Discretization

    schemeFinite difference Finite difference Finite difference

    Linear solver- LSOR

    - Conjugate gradientConjugate gradient Conjugate gradient

    Wellbore types Vertical, horizontal anddeviated wells

    horizontal wells horizontal wells

    Output dataTabular and graphical

    data

    Tabular and graphical

    data

    Tabular and graphical

    data

    Platforms PC + RISC PC PC

    Figure 1: Model of a reservoir.

  • 8/8/2019 Simulating Petroleum Reservoirs

    4/24

    3.1 Basic Modeling Equations

    The basic equations required for modeling petroleum reservoirs are obtained by

    combining the mass conservation equation with the equation of motion (Darcy's Law).

    ( ) ( ). rk

    K p D q S t

    + =

    (1)

    The above equation is extremely general in its applicability. It includes the effects of

    compressibility, capillary pressure, and relative permeability as well as variations of porosity

    and absolute permeability with respect to position.

    3.2 Analysis of the Conventional Reservoir Equations

    A three-component finite-difference model reservoir is formulated. Each component

    (Gas, Oil, and Water) may exist in any or all of the three phase (gas, oil, and water) equations.

    1. Gas Component Equation

    ( ) ( ) ( ).

    .

    rg ro rw

    g g so o o sw w w g g o o w w

    g go w o W so sw so sw

    o g o w g w

    k k kK p D K R p D K R p D

    B B B

    q Sq q S S R R R R

    B B B t B B B

    + +

    + + + = + +

    (2)

    2. Oil Component Equation

    ( ) ( )

    . .rg g g ro o o

    v g g o o v vo g g o o g o g

    k q Sk q S K R p D K p D R R

    B B B B t B B

    + + + = +

    (3)

    3. Water Component Equation

    ( )

    . .rw w W w ww w w w

    k q S K p D

    B B t B

    + =

    (4)

    3.3 Analysis of the Fractured Reservoir Equations

    In fractured reservoirs, two systems are considered:

    Fracture system Matrix systemThe interaction between matrix blocks and fractures is described by transfer functions. These

    functions can be generated in the laboratory and supplied to the model as a correlation, or as

    digitized data.

    For fractured reservoirs, two sets of equations should be considered:

    The Fracture Flow Equations The Matrix/Fracture Flow Equations1. Fracture Gas Component Equation

    ( ) ( ) ( ).

    rg ro rw g g so o o sw w w

    g g o o w wf

    g g g o w o w o w so sw so sw so sw

    g o w g o w g o wmf f

    k k kK p D K R p D K R p D

    B B B

    q Sq q S S R R R R R R

    B B B B B B t B B B

    + +

    + + + + + + = + +

    .

    f

    (5)

  • 8/8/2019 Simulating Petroleum Reservoirs

    5/24

    2. Fracture Oil Component Equation

    ( ) ( ).

    .

    rg rov g g o o

    g g o of

    g g g o o ov v v

    g o g o g omf f f

    k k K R p D K p D

    B B

    q Sq S R R R

    B B B B t B B

    +

    + + + + = +

    (6)

    3. Fracture Water Component Equation

    ( )

    . .rw w w ww ww w w w wmf ff f

    k q S K p D

    B B B t B

    + + =

    (7)

    4. Matrix/Fracture Gas Component Equation

    ( ) ( ) ( )

    .

    rg ro rwm g g so o o sw w w

    g g o o w wmf

    g o w so sw

    g o w mf

    k k k K p D R p D R p D

    B B B

    S S SR R

    t B B B

    + +

    = + +

    (8)

    5. Matrix/Fracture Oil Component Equation

    ( ) ( ) .rg gro om v g g o o v g g o o o g

    mf mf

    k Sk S K R p D p D R

    B B t B B

    + = +

    (9)

    6. Matrix/Fracture Water Component Equation

    ( ) .rw wm w ww w wmf mf

    k S K p D

    B t B

    =

    (10)

    4. DISCRETIZATION OF THE MODEL EQUATIONSThe finite difference discretizationscheme is either a five-point difference or a nine-point

    difference technique. The five-point formulation considers flow between a block and the fouradjacent blocks. The nine-point formulation considers these blocks as well as the four

    diagonally-adjacent blocks (Figure 2).

    Figure 2: Finite-difference schemes.

  • 8/8/2019 Simulating Petroleum Reservoirs

    6/24

  • 8/8/2019 Simulating Petroleum Reservoirs

    7/24

    5. SOLUTION OF THE MODEL EQUATIONSThe discretized form of the model equations results in a system of nonlinear equations of

    the form:

    ( ) x x b=

    .

    UsingNewton-Raphson method for solving nonlinear equations, we get:

    ( ) ( )n n nR x x R x =

    (11)

    This equation represents a system of linear equations. Any linear system solver (direct or

    iterative) can be used to solve it.

    5.1 Methods of Solving Linear Systems[11-13]

    The above equation can be written as follows:

    A x = b .

    Where A is the matrix of coefficients (NNmatrix), b is the right-hand vector (N1), and x isthe unknown vector (N1). A and b is written as:

    00 01 0, 1 0

    10 11 1, 1 1

    1,0 1,1 1, 1 1

    ...

    ...

    . . ... . .

    ...

    N

    N

    N N N N N

    a a a b

    a a a b

    a a a b

    A = b =

    There are two ways to solve the above linear system:

    Direct: Direct techniques are methods that give an answer in a fixed number of steps,subject only to round off error. The following direct methods are used in our system:

    1. Gauss Jordan2. LU Decomposing 3. QR Decomposition4. Banded System method.

    Iterative: For large systems with a high percentage of zero entries, iterativetechniques are more efficient in terms of both computer storage and computationaltime. The following iterative methods are used in our system:

    1. Jacobi 2. Gauss Seidel 3. SOR 4. Biconjugate Gradient.

    5.2 Setup of the Jacobian Matrix

    The equation of the linear system considered above can be written as,

    ( )n

    n nR x R xx

    =

    ,

  • 8/8/2019 Simulating Petroleum Reservoirs

    8/24

    where the partial derivative

    n

    R

    x

    is called the Jacobian matrix and represents the partial

    derivative of all residuals with respect to every unknown in the system. The Jacobian matrix

    is denoted by ( )nJ x

    , and is written as:

    ( )

    ( ) ( ) ( )

    ( ) ( ) ( )

    ( ) ( ) ( )

    0 0 0

    0 1 1

    1 1 1

    0 1 1

    1 1 1

    0 1 1

    ...

    ...

    . . ... .

    . . ... .

    ...

    n n n

    N

    n n n

    n N

    n n n

    N N N

    N

    R x R x R x

    x x x

    R x R x R x

    x x xJ x

    R x R x R x

    x x x

    =

    ,

    where the derivatives are calculated using the finite difference discretization scheme as

    follows:

    ( ) ( ) ( )i i i

    j

    R x R x x R x

    x x

    + =

    .

    All solution methods require the calculation of the Jacobian matrix in order to solve the model

    equations. The five-point or nine-point finite difference expansion results in the residual

    equations for a given node are only dependant on the unknowns of that node and immediately

    surrounding nodes. Therefore, the resulting matrix is banded and very sparse. If the finite

    difference equations are written in residual form, the following form results, with i, j, and k

    representing node locations.

    1. Five-point FD discretization:

    This is a 3D extension of the 5-point formulation:

    1 1 1 1 1 1ijk ijk ijk ijk ij k ijk i jk ijk ijk ijk i jk ijk ij k ijk ijk R A x B x D x E x F x H x I x + + += + + + + + + .

    2. Nine-point FD discretization:

    This is a 3D extension of the 9-point formulation:

    1 1 1 1 1 1

    1 1 1 1 1 1 1 1 .

    ijk ijk ijk ijk ij k ijk i jk ijk ijk ijk i jk ijk ij k ijk ijk

    ijk i j k ijk i j k ijk i j k ijk i j k

    R A x B x D x E x F x H x I x

    M x P x Q x S x

    + + +

    + + + +

    = + + + + + +

    + + + +

    If a 333 grid system (27 nodes), as shown in Figure 3, is considered, the resulting form of

    the set of simultaneous equations is presented in Figure 4.

  • 8/8/2019 Simulating Petroleum Reservoirs

    9/24

    Figure 3: A 333 grid system (27 nodes).

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

    0 E0 I0 H0 F0 S0

    1 A1 E1 I1 H1 F1 S1

    2 A2 E2 H2 F2 S2

    3 B3 E3 I3 H3 Q3 F3 S3

    4 B4 A4 E4 I4 H4 Q4 F4 S4

    5 B5 A5 E5 H5 Q5 F5 S5

    6 B6 E6 I6 Q6 F6

    7 B7 A7 E7 I7 Q7 F7

    8 B8 A8 E8 Q8 F8

    9 D9 P9 E9 I9 H9 F9 S9

    10 D10 P10 A10 E10 I10 H10 F10 S10

    11 D11 P11 A11 E11 H11 F11 S11

    12 M12 D12 P12 B12 E12 I12 H12 Q12 F12 S1213 M13 D13 P13 B13 A13 E13 I13 H13 Q13 F13 S13

    14 M14 D14 P14 B14 A14 E14 H14 Q14 F14 S14

    15 M15 D15 B15 E15 I15 Q15 F15

    16 M16 D16 B16 A16 E16 I16 Q16 F16

    17 M17 D17 B17 A17 E17 Q17 F17

    18 D18 P18 E18 I18 H18

    19 D19 P19 A19 E19 I19 H19

    20 D20 P20 A20 E20 H20

    21 M21 D21 P21 B21 E21 I21 H21

    22 M22 D22 P22 B22 A22 E22 I22 H22

    23 M23 D23 P23 B23 A23 E23 H23

    24 M24 D24 B24 E24 I24

    25 M25 D25 B25 A25 E25 I25

    26 M26 D26 B26 A26 E26

    Figure 4: A 333 grid system (27 nodes) Jacobian matrix.

    6. DESIGN AND IMPLEMENTATIONFigure 5 illustrates the structure of the EdgeSimulator. There are four types of data sets

    which are fed to the Finite Difference Dynamic Link Library (DLL). The Finite Difference

    DLL, in turn, feeds the simulator with input data. Each simulator run is controlled via control

    data, which is input to the system using the Control Data DLL. Finally, simulator results are

    analyzed using the Output Data DLL.

  • 8/8/2019 Simulating Petroleum Reservoirs

    10/24

    Figure 5: System data structure.

    6.1 Input Data

    Each type of input data is input to the simulator through its own DLL module. Each module

    allows the user to input as many data sets as required. All models are saved as a map, which

    uses a unique key to access each model. The user can efficiently retrieve or delete a model (a

    key/value pair) using the key to access it. Input data are represented by:

    1. Capillary Pressure data DLL (Figure 6).2. Relative Permeability Data DLL (Figure 7).3. Fluid Data DLL (Figure 8).4. Wellbore Data DLL (Figure 9).

    Figure 6: Capillary Pressure DLL structure.

    Figure 7: Relative Permeability DLL structure.

  • 8/8/2019 Simulating Petroleum Reservoirs

    11/24

    Figure 8: Fluid DLL structure.

    Figure 9: Wellbore DLL structure.

    6.2 Finite Difference Grid

    Reservoir finite difference grid data is input to the simulator through the Fdg DLL

    module. Two types of reservoirs are considered in our system, conventionaland fractured.Each type requires its specific Finite-Difference grid data (Figure 10).

    Figure 10: Finite-Difference grid DLL structure.

    6.2.1 Conventional model

    Figure 11: Conventional model structure.

    The conventional model requires three property pages to be filled (Figure 11):

    1. Grid Cell Properties: contains the common properties for each cell in the grid.

  • 8/8/2019 Simulating Petroleum Reservoirs

    12/24

  • 8/8/2019 Simulating Petroleum Reservoirs

    13/24

    Figure 14: Simulation process.

    Step 1

    Figure 15: Simulation process (step 1).

  • 8/8/2019 Simulating Petroleum Reservoirs

    14/24

    Step 2

    Figure 16: Simulation process (step 2).

    Step 3

    Figure 17: Simulation process (step 3).

    Step 4

    Figure 18: Simulation process (step 4).

  • 8/8/2019 Simulating Petroleum Reservoirs

    15/24

    Step 5

    Figure 19: Simulation process (step 5).

    Step 6

    Figure 20: Simulation process (step 6).

  • 8/8/2019 Simulating Petroleum Reservoirs

    16/24

    Step 7

    Figure 21: Simulation process (step 7).

    Step 8

    Figure 22: Simulation process (step 8).

    6.5ExamplesTwo different examples are presented to illustrate our model.

    Example 1: simple 33 one layer modelThis example tests a typical simulation process and analyzes the corresponding output.

    Let us consider a conventional reservoir (331) with the following data:

    1. Capillary Pressure Data (correlated model)

    cowP data page cogP data page

    Connate water saturation (Swc) 0 Connate gas saturation (Sgc) 0

    Residual oil saturation in an oil-water system (Sorw) 0 Residual liquid saturation (SLr) 0

    Value ofPcow at Swc =Pcow(Swc) 120 Value ofPcogat SLr=Pcog(SLr) 23

    Value ofPcow at (1 Sorw) =Pcow(1-Sorw) -30 Value ofPcogat (1 Sgc) =Pcog(1-Sgc) -5

    Exponent parameter for the shape of thePcow curve =nw

    3Exponent parameter for the shape of the Pcogcurve =ng

    4

    Figure 23 shows the plot of the cowP and cogP curves.

  • 8/8/2019 Simulating Petroleum Reservoirs

    17/24

    Figure 23: Plots of cowP and cogP .

    2. Relative Permeability Data (fractured model)

    /rw rowK K data page /rg rog K K data page

    Connate water saturation Swc 0 Connate gas saturation Sgc 0

    Residual oil saturation in an oil/water system (Sorw) 0 Residual oil saturation in an oil/gas system (Sorg) 0

    Value ofkrw at (1 Sorw) 1 Value ofkrgat (1 Sorg) 0

    Value ofkrow at Swc 1 Value ofkrogat Sgc 1

    Exponent parameter for the shape of the krw curve 2 Exponent parameter for the shape of the krgcurve 1

    Exponent parameter for the shape of the krow curve 2 Exponent parameter for the shape of the krogcurve 1

    roK data page

    Use stone | model to getKro Kro scheme

    Figure 24 shows the plots of cowP and cogP .

    Figure 24: Plots of /rw rowK K , /rg rog K K and roK .

    3. Fluid Data (black oil model)

    Oil data page (correlated)Gravity input API

    Solution gas-oil ratio calculation scheme Claso crude

    Solution oil density calculation scheme Standing

    Dead oil viscosity calculation scheme Claso

    Under saturated oil viscosity calculation scheme Vasques

    Saturated oil viscosity calculation scheme Beggs

    Oil API gravity input 45.375

    Average specific gravity of total surface gasses 0.7

    Figure 25 shows the plot of oil properties.

  • 8/8/2019 Simulating Petroleum Reservoirs

    18/24

    Figure 25: Plots of oil properties.

    Gas data page (correlated)Gas characterization scheme Standing (natural)Viscosity calculation scheme Dean

    gas specific gravity of at surface conditions 0.7

    Figure 26 shows the plot of gas properties.

    Figure 26: Plots of gas properties.

    water data page (correlated)Gravity input SG

    Water specific gravity 1

    Average specific gravity of total surface gasses 0.7

    Figure 27 shows the plot of water properties.

  • 8/8/2019 Simulating Petroleum Reservoirs

    19/24

    Figure 27: Plots of water properties.

    4. Wellbore Data

    a. Producer wellbore

    b. Injector wellbore

    5. Finite difference grid Data

    Number of grid cells in the X 3

    Number of grid cells in the Y 3

    Number of grid cells in the Z (no. of layers) 1

    a. Grid Cell PropertiesGrid cell size in the X-direction 10000

    Grid cell size in the Y-direction 9000

    Grid cell size in the Z-direction 130

    Grid cell net thickness 100

    b. Wellbore LocationsX Y Z

    Injector wellbors 1 1 1

    Producer wellbores 3 3 1

    c. Rock DataProperties

    Mid-point depth 7485

    Reference pressure. 3900

    Radius 0.35

    Skin factor 0

    kh 0

    PI index 0

    Time IWC Code IWC Value

    0 Total Rate, RB/D 1000

    10000 Total Rate, RB/D 1000

    Radius 0.34

    Skin factor 0.5

    kh 0

    PI index 0

    Time IWC Code IWC Value Tracer Concentration

    0 Water Rate, STB/D 700 0.85

    10000 Water Rate, STB/D 700 0.85

  • 8/8/2019 Simulating Petroleum Reservoirs

    20/24

    Porosity at reference pressure 0.25

    Rock compressibility 1.0e-6

    Absolute permeability along x-direction 1000

    Absolute permeability along y-direction 1000

    Absolute permeability along z-direction 35

    Absolute permeability along NE-direction 1000

    Absolute permeability along NW-direction 10000

    Residual oil saturation 0.15

    Connate gas saturation 0.05Irreducible water saturation 0.01

    Rock initialization dataInitial bubble-point pressure 2700

    Initial oil-phase pressure 4000

    Initial gas saturation 0.05

    Initial water saturation 0.1

    6. Control Data

    a. Time dataTime stepping scheme Manual

    Initial time step size 0.1Minimum time step size 0.1

    Maximum time step size 20

    Maximum saturation change over the time step 0.05

    Maximum pressure change over the time step 50

    Total simulation time 2000

    Time at which tracer injection started 120

    Tracer injection time duration 300

    b. Output dataSummary output time-step size 10

    Rock output time-step size 10

    Fracture output time-step size 10

    wellbore output time-step size 10

    c. FD scheme dataBlock connection Nine point

    Nine point formulation Unit weighting

    d. Solver dataMethod of solution Direct-Banded

    Now, after running the simulation, the output after approximately 500 days is shown in Figure

    28.

    Time step 500 days

  • 8/8/2019 Simulating Petroleum Reservoirs

    21/24

    Gas pressurePg Oil pressurePo

    Water pressurePw Gas saturationSg

    Oil saturationSo Water saturationSw

    Figure 28: Simulation after a period of around 500 days.

    Example 2: A Quadrant of Five-Spot Pattern [14]

    In this model problem, water is injected into one quarter of a developed conceptual five-

    spot pattern at a rate of 200 STB/D. Total liquid production rate is set at 210 STB/D. the

    reservoir is assumed to be fractured uniformly and modeled using 2D grid. Reservoir

    properties are given in Table 2.

  • 8/8/2019 Simulating Petroleum Reservoirs

    22/24

    Table 2: Reservoir properties of example 2

    Reservoir dip angle 0 Fracture residual oil saturation 0

    Area 8.265Matrix connate water

    saturation0.25

    Reservoir grid 881 Matrix residual oil saturation 0.3Grid size x = y = 75 Pressure at water/oil contact 3959.89

    Reservoir thickness 30 Water formation volume factor 1

    Matrix block size 101030 Oil formation volume factor 1

    Matrix blocks shape factor 0.08 Water density 64

    Fracture porosity 0.01 Oil density 52

    Matrix porosity 0.19 Water compressibility 3.03 10-6

    Fracture compressibility 3 10-6 Oil compressibility 1.5 10-5

    Matrix compressibility 3 10-6

    Water viscosity 0.5

    Fracture permeability 10000 Oil viscosity 2

    Matrix permeability 1 Water injection rate 200

    Fracture connate watersaturation 0 Total production rate 210

    Time steps were calculated automatically using a maximum fracture saturation change of

    0.01. Time step size was restricted to a minimum of 0.01 day and a maximum of 10 days. A

    comparison of water/oil ratio (WOR) from this work with that calculated by Kazemi et al. and

    Dutra and Aziz[14]

    is shown in Figure 29. The FD model shows WOR values intermediate

    between Kazemi and Dutra models at earlier times. After almost three years, the model tends

    to follow the Dutra model.

    Additional runs using maximum time step sizes of 20, 30, 40, 50, and 60 days were made

    to test the stability of the model. The model gives essentially identical results as shown in

    Figure 30 for WORs and by Figure 31 for fracture pressure at the production well. As can be

    seen from Figure 31, the fracture at production well has declined to 2400 psi after almost 3years of continuous production.

    0

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    4.5

    5

    0 200 400 600 800 1000 1200

    Time, Days

    Water-OilRatio(WOR)

    This work

    Kazemi's work

    Dura and Aziz model

    Figure 29: Comparison between calculated Water/Oil Ratios

  • 8/8/2019 Simulating Petroleum Reservoirs

    23/24

    0

    0.5

    11.5

    2

    2.5

    3

    3.5

    4

    4.5

    0 200 400 600 800 1000 1200 1400

    Time, days

    Water-

    OilRatio(WOR)

    DT = 10 days

    DT = 20 days

    DT = 30 days

    DT = 40 days

    DT = 50 daysDT = 60 days

    Figure 30: Comparison Water/Oil Ratios for different time step sizes

    2200

    2400

    2600

    2800

    3000

    3200

    3400

    3600

    3800

    0 200 400 600 800 1000 1200 1400

    Time, Days

    Pressureattheprodu

    ctionwell,

    psi

    DT = 10 days

    DT = 20 daysDT = 30 days

    DT = 40 days

    DT = 50 days

    DT = 60 days

    Figure 31: Fracture pressure at the production well vs. time

    7. CONCLUSIONIn this study, a three-dimensional, three-phase numerical model for simulating petroleum

    reservoirs has been developed. Finite-difference scheme is used to discretize the model

    equations and the resulting set of discretized equations is solved fully-implicit for phase

    pressure and saturations. The model is designed for MS windows platform in an Object-

    Oriented Programming (OOP) fashion using the MS Visual C++ Development System along

    with the industry-standard MFC library.

    Following are some recommendations for future development:

    Implement Finite-Element discretization scheme. This scheme will allow us tosimulate very complex reservoir geometries. Visual C++ .NET is an option for another development platform.

    MATLAB Libraries can be used to provide efficient numerical solvers.

    8. REFERENCES[1] Craft, B.C., M. Hawkins, Revised by R.E. Terry, Applied Petroleum Reservoir Engineering," Prentice-

    Hall, Inc., Englewood Cliffs, NJ (1991).

    [2] Donald W. Peaceman, Fundamentals of Numerical Reservoir Simulation, Elsevier Scientific PublishingCompany, Amsterdam-Oxford-New York (1977).

  • 8/8/2019 Simulating Petroleum Reservoirs

    24/24

    [3] Norman J. Clark, "Elements of Petroleum Reservoirs," Henry L. Doherty Series, Dallas, Texas (1969).[4] G. W. Thomas, Principles of Hydrocarbon Reservoir Simulation, International Human Resources

    Development Corporation, Boston-USA (1982).

    [5] Aguilera, R., "Naturally Fractured Reservoirs," Penn Well Publishing Company, Tulsa, OK (1980).[6] John R. Fanchi, Integrated Flow Modeling, Elsevier Science B.V., Amsterdam-Lausanne-New York-

    Oxford-Shannon-Singapore-Tokyo (2000).

    [7] Rayyan G. Samman, Design and Implementation of a Numerical Model for Simulating PetroleumReservoirs, Master Degree Thesis, King Abdulaziz University, Jeddah (2003).[8] Roxar ASA Inc, MORE 5.5, www.roxar.com, Huston, USA (1999).

    [9] T.T. and Associates Inc, Exodus Simulator version 4.00, c/o PetroStudies Consultants Inc, Alberta,Canada (1997).

    [10] Production and reservoir simulation, Turbosim version 1.0, www.turbosim.com, France (1996).[11] William H. Press, Saul A. Teukolsky, William T. Vetterling, Brain P. Flannery, Numerical Recipes in

    C++, The Art of Scientific Computing, 2nd

    Edition, Cambridge University Press, Cambridge, UK (2002).

    [12] William H. Press, Saul A. Teukolsky, William T. Vetterling, Brain P. Flannery, Numerical Recipes inC++, The Art of Scientific Computing, Code CDROM v 2.10, Cambridge University Press, Cambridge,

    UK (2002).

    [13] Richard L. Burden, J. Douglas Faires, Numerical Analysis, Sixth Edition, Broks/Cole PublishingCompany, CA (1997).

    [14] Dutra, T.V., K. Aziz, A New Double-Porosity Reservoir Model for Oil/Water Flow Problems, PaperSPE 21248 was Prepared for Presentation at the 11

    thSPE Symposium on Reservoir Simulation, Anaheim,

    CA (Feb. 17-20, 1991).


Recommended