Date post: | 09-Apr-2018 |
Category: |
Documents |
Upload: | mahmood731 |
View: | 224 times |
Download: | 0 times |
of 24
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).