You are on page 1of 182

DOE/BC/10033-3(Vol.

1)
(DE83000529)


FOSSI L ENERGY


BOAST: A THREE-DIMENSIONAL, THREE-PHASE BLACK OIL APPLIED
SIMULATION TOOL (VERSION 1.1)

Volume 1: Technical Description and FORTRAN Code


By J. R. Fanchi
K. J. Harpole
S. W. Bujnowski


September 1982


Work Performed Under Contract No. AC19-80BC10033


Keplinger and Associates, Inc.
Tulsa, Oklahoma

and

The BDM Corporation
Bartlesville, Oklahoma




Bar t l esvi l l e Pr oj ec t Of f i c e
U.S. DEPARTMENT OF ENERGY
Bar t l esvi l l e, Ok l ahoma



















DISCLAIMER

This report was prepared as an account of work sponsored by an agency
of the United States Government. Neither the United States Government
nor any agency thereof, nor any of their employees, makes any warranty,
express or implied, or assumes any legal liability or responsibility for the
accuracy, completeness, or usefulness of any information, apparatus,
product, or process disclosed, or represents that its use would not
infringe privately owned rights. Reference herein to any specific
commercial product, process, or service by trade name, trademark,
manufacturer, or otherwise, does not necessarily constitute or imply its
endorsement, recommendation, or favoring by the United States
Government or any agency thereof. The views and opinions of authors
expressed herein do not necessarily state or reflect those of the United
States Government or any agency thereof.
















Printed from the best available copy.




DOE/BC/10033-3(Vol. 1)
(DE83000529)




BOAST: A THREE-DIMENSIONAL, THREE-PHASE BLACK OIL APPLIED SIMULATION
TOOL (VERSION 1.1)

Volume 1: Technical Description and FORTRAN Code




By

J. R. Fanchi
K. J. Harpole
Keplinger and Associates, Inc.
Tulsa, Oklahoma

and

S. W. Bujnowski
The BDM Corporation
Bartlesville, Oklahoma





Herbert B. Carroll, Jr., Technical Project Officer
Bartlesville Energy Technology Center
Bartlesville, Oklahoma





Work Performed for the Department of Energy
Under Contract No. DE-AC19-80BC10033



Date Published-September 1982





UNITED STATES DEPARTMENT OF ENERGY


ii
ACKNOWLEDGMENTS


We would like to thank Herb Carroll of the DOE-BETC office for supporting this project. The
difficult task of preparing these volumes for publication was made possible through the efforts of
Bette Tucker, Carolyn Hill, Charlene Inda, Donna St. Clair, and Patty Willis of Keplinger and
Associates, Inc.







iii
TABLE OF CONTENTS

VOLUME I: PART A BOAST Technical Description

1. Introduction 1

2. Derivation of the Flow Equations 2
Conservation of Mass 2
Flow Equations For Three-Phase Flow 3

3. Recasting the Flow Equations 7
Introduction of the Capillary Pressure Concept 8
The Pressure Equation 10

4. Finite Difference Formulation: IMPES Procedure 14
The Finite Difference Concept 14
Finite Difference Approximations 15
Evaluation of Transmissibilities 17
Finite Difference Equations 20
Finite Difference Grids and Boundary Conditions 22
The IMPES Procedure 22

5. Solution Methods 24
Direct Methods 24
The BAND Algorithm 25
The D4 Algorithm 28
Iterative Methods 31
Choice of Solution Method 34

6. Well Representation 36
Rate Constraint Representation 36
Case 1: Oil Production Rate Specified 36
Case 2: Total Production Rate Specified 37
Case 3: Injection Rate Specified 38
Implicit Pressure Constraint Representation 38
Explicit Pressure Constraint Representation 39
Case 1: Oil Production Wells 39
Case 2: Injection Wells 39
Determining Layer Flow Index (PID) 40

7. Special Topics 41
Pressure Initialization 41
Bubble Point Tracking 42
Automatic Time Step Control 43
Material Balance Calculation 44
Numerical Dispersion 44

8. Recommended Program Uses 46

9. Comments on Conducting a Simulation Model Study 48
Reservoir Description and Grid Selection 48
Data Collection and Reduction 49
Comments on Relative Permeability and Fluid PVT Data 50
Sensitivity Studies and Oil-in-Place Calculations 51
History Matching 51
Prediction Runs 52

References 53


iv
TABLE OF CONTENTS (Cont.)

Appendix A: Multidimensional Numerical Dispersion--SPE 9018 55
Abstract 56
Acknowledgments 56
Introduction 56
Truncation Error Analysis 57
Explicit Backward-Difference Representation 57
Interpretation of Results 62
Principal Axis Transformation 63
Two Dimensional Case 64
Conclusions 68
Nomenclature 69
References 71
Appendix A -- Physical Dispersion 72
Appendix B -- Orthonormal Basis Vectors 73
Appendix C -- Numerical Examples 75

Appendix B: An Illustrative Simulation Study 82
The Role of Numerical Simulation in Reservoir Management of a West
Texas Carbonate Reservoir--SPE 10022
Introduction 83
Reservoir Description 86
Geologic Study 86
Porosity and Permeability Distribution 87
Pressure Transient Work 90
Native State Core Tests 90
Simulation Model 91
Model Grid Configuration 91
Grid Size Sensitivity 92
History Matching 93
Pressure and Production Performance 93
Sensitivity to Vertical Communication 95
Predictions of Future Performance 97
Proposed Reservoir Management Plan 99
Comparison of Field Performance with Model Predictions 99
Conclusions 101
References 101


VOLUME I: PART B BOAST FORTRAN Code

10. Program Structure 103
11. Redimensioning Instructions 105
12. BOAST Fortran Code 109

ILLUSTRATIONS

Figures
2.1 Reservoir block: the coordinate convention follows Sawyer and Mercer (1978). 2
4.1 Core with pressure taps. 15
4.2 Typical Grid Setup Using Above Notation. 17
4.3 Transmissibility between two grid blocks 17
4.4 Node representation of three dimensional array of reservoir grid blocks. 21
4.5 Node locations. 22
5.1a Natural Ordering for 4 x 3 x 2 Grid. 27
5.1b D4 Ordering for 4 x 3 x 2 Grid. 27
5.2 Coefficient Band Matrix A Corresponding to Natural Ordering for 4 x 3 x 2 Grid. 28


v
TABLE OF CONTENTS (Cont.)

ILLUSTRATIONS (Cont.)

5.3 Coefficient Matrix A Corresponding to D4 Ordering for 4 x 3 x 2 Grid. 30
7.1 Grid Block i,j,k, for Pressure Initialization. 41
7.2 Oil Properties: 43
7.3 Smearing of saturation fronts by numerical dispersion. 45


TABLES
5.1 29
9.1 Sources of Common Reservoir Data Required for Simulation Studies 50
10.1 BOAST Subroutine Summary 104
11.1 Dimensions of Arrays in Common 106
11.2 Main Program Data Statements 108
11.3 Dimenstion Statements in Subroutines 109



1
PART A
BOAST TECHNICAL DESCRIPTION


INTRODUCTION

Computer programs are an integral part of a modern petroleum engineering effort. These
programs are time-saving tools for performing evaluation and design work. Probably the most
routinely used of the technically sophisticated programs is the black oil simulator. The black oil
simulator is the workhorse of modern reservoir engineering in particular, yet it is generally
accessible only for a substantial and often prohibitive fee. This report provides technical
information about a newly developed three-dimensional, three-phase black oil simulator. The
documentation includes the code for the black oil applied simulation tool (BOAST), and is
presented such that it can be readily used by the public. BOAST was developed primarily for
support of Department of Energy (DOE) contract number DE-AC19-80-BC10033. The simulator is
a substantially upgraded version of the publicly available but incomplete simulator developed by
Sawyer and Mercer (1978).

These volumes provide a discussion of the methods used and show how to implement them in the
development of a useful engineering tool. Volume I contains a detailed discussion of the methods
used in deriving the flow equations, converting them to finite difference form, solving the
subsequent linear algebraic systems, and evaluating the results. Volume II is designed to function
as an easy-to-use program user's manual.

The implementation aspect of these volumes helps to fill a gap in the existing reservoir simulation
literature. Many of the program subroutines are suitable for use in other programs. This is
especially true for the solution method subroutines.

BOAST is designed to be an easy-to-use program which would be suited to simulation of primary
depletion, pressure maintenance by water and/or gas injection, and basic secondary recovery
operations (such as waterflooding) in a black-oil reservoir. Unlike commercially available
simulators, which may have a confusing array of formulation and solution options to cover a wider
range of special applications problems such as coning, BOAST contains only an IMPES
formulation with direct elimination (BAND and D4) and LSOR solution options. As such, the
program can be used to evaluate many of the common field production situations encountered in
actual practice and, when properly applied (see discussion of Program Uses for limitations of the
IMPES formulation), it should be competitive with, if not faster than, commercially available
simulators because BOAST is not encumbered by the myriad of seldom-used options available in
most commercial simulators.

The documentation procedure we have adopted will present in detail what BOAST is actually
doing. This makes it possible to avoid misinterpreting what a commercial "black box" simulator is
doing for those authorized to apply the simulator but not allowed access to the simulator's code. If
the versatility of a commercial simulator is needed, then BOAST can function as an inexpensive
tool for performing preliminary or complementary history matching and performance prediction
work.




2
2. DERIVATION OF THE FLOW EQUATIONS


Many derivations of the oil, water, and gas fluid flow equations exist in the literature, e.g. Crichlow
(1977) and Peaceman (1977). Consequently, only a brief discussion will be presented here.


Conservation of Mass

We begin by considering the flow of fluid into and out of a single reservoir block (Figure 2.1).
Assume fluid flows into the block at x (J
x
) and out of the block at x + Ax (J
x + Ax
). J denotes the fluid
flux and is defined as the rate of flow of mass per unit cross-sectional area normal to the direction
of flow, which is the x-direction in the present case. By conservation of mass, we have the
equality:

mass entering the block - mass leaving the block
= accumulation of mass in the block.

If the block has length Ax, width Ay, and depth Az, then we can write the mass entering the block in
a time interval At as


[(J
x
)
x
AyAz+(J
y
)
y
AxAz+(J
z
)
z
AxAy] At = Mass in 2.1

where we have generalized to allow flux in the y and z directions as well. The notation (J
x
)
x

denotes the x-direction flux at location x, with analogous meanings for the remaining terms.


Figure 2.1.
Reservoir block: the coordinate convention follows Sawyer and Mercer (1978).

A X

y

J
X
J
X
+ AX X


Z


Corresponding to mass entering is a term for mass exiting which has the form

[(J
x
)
x+Ax
AyAz + (J
y
)
y+Ay
AxAz + (J
z
)
z+Az
AxAy] At 2.2

+ qAxAyAzAt = Mass out

where we have added a source/sink term q which represents mass flow into (source) or out of
(sink) a well. A producer is represented by q > 0, and an injector by q < 0.

Accumulation of mass in the block is the change in concentration of phase p
( )
C
p
in the block
over the time interval At. If the concentration C
p
is defined as the total mass of phase p (oil,
water, or gas) in the entire reservoir block divided by the block volume, then the accumulation term
becomes


3

[(C
p
)
t+At
- (C
p
)
t
] AxAyAz 2.3

Using Equations (2.1) through (2.3) in the mass conservation equality

Mass in - Mass out = Mass accumulation

gives
[(J
x
)
x
AyAz + (J
y
)
y
AxAz + (J
z
)
z
AxAy] At

- [(J
x
)
x+Ax
AyAz + (J
y
)
y+Ay
AxAz (J
z
)
z+Az
AxAy] At - qAxAyAzAt

= [(C
p
)
t+At
- (C
p
)
t
] AxAyAz 2.4


Dividing Equation (2.4) by Ax Ay Az At and rearranging gives


( ) ( )
( ) ( )
( ) ( ) ( ) ( )


=

+
+
+
+
J J
x
J J
y
J J
z
q
C C
t
x
x x
x
x
y
y y
y
y
z
z z
z
z
p t t p t
A
A
A
A
A A
A A
2.5

In the limit as Ax, Ay, Az and At go to zero Equation (2.5) becomes the continuity equation

=
c
c
c
c
c
c
c
c
J
x
J
y
J
z
q
C
t
x
y
z
p
2.6

The oil, water, and gas phases each satisfy a mass conservation equation having the form of
Equation (2.6).


Flow Equations For Three-Phase Flow

The flow equations for an oil, water, and gas system are determined by specifying the fluxes and
concentrations of the conservation equations for each of the three phases. A flux in a given
direction can be written as the density of the fluid times its velocity in the given direction. Letting
the subscripts o, w, and g denote oil, water, and gas, respectively, the fluxes become:


( )


J
B
v
o
osc
o
o
=

2.7


( )


J
B
v
w
wsc
w
w
=

2.8


( )


J
B
v
R
B
v
R
B
v
g
gsc
g
g
so gsc
o
o
sw gsc
w
w
= + +

2.9

where R
so
and R
sw
are gas solubilities in SCF/STB, B
o
, B
w
, and B
g
are formation

volume factors in
units of reservoir volume/standard volume, the subscripts sc denote standard conditions (usually


4
60F and 14.7 psia), and denotes fluid densities. The velocities

v are assumed to be Darcy


velocities and their x-components are

v K
x
P
gz
g
xo x o o
o
c
=

c
c

144
*
2.10

v K
x
P
gz
g
xw x w w
w
c
=

c
c

144
2.11

v K
x
P
gz
g
xg x g g
g
c
=

c
c

144
2.12

where g is the acceleration of gravity in ft/sec
2
, and g
c
is 32.174 ft/sec
2
(BOAST assumes
g = g
c
).

The phase mobility
p
is defined as the ratio of the relative permeability to flow of the phase
divided by its viscosity, thus


p
= k
rp
/
p
2.13

The phase densities are related to formation volume factors and gas solubilities by


| |

o
o
osc so gsc
B
R = +
1
, 2.14


| |

w
w
wsc sw gsc
B
R = +
1
, 2.15



g
gsc
g
B
= . 2.16

Besides fluxes, we also need concentrations. These are given by

C S B
o osc o o
= | / , 2.17

C S B
w wsc w w
= | / , 2.18

C
S
B
R S
B
R S
B
g gsc
g
g
so o
o
sw w
w
= + +

(
(
| 2.19

where | is the porosity and S
p
is the saturation of phase p. The saturations satisfy the constraint

S
o
+ S
w
+ S
g
= 1 2.20

*
Similar expressions can be written for the y and z components.


5
Combining Equations 2.6, 2.7 through 2.9, and 2.17 through 2.19 gives a mass conservation
equation for each phase:

Oil


( )

|
\

|
.
| +
|
\

|
.
| +
|
\

|
.
|

(
(
=
c
c
c
c
c
c

c
c
|
x B
v
y B
v
z B
v
q
t
S B
osc
o
xo
osc
o
yo
osc
o
zo
o osc o o
/
2.21

Water


( )

|
\

|
.
| +
|
\

|
.
| +
|
\

|
.
|

(
(
=
c
c
c
c
c
c

c
c
|
x B
v
y B
v
z B
v
q
t
s B
wsc
w
xw
wsc
w
yw
wsc
w
zw
w wsc w o
/
2.22

and Gas


+ +
|
\

|
.
|
|
+ +
|
\

|
.
|
|
+ +
|
\

|
.
|
|

= + +
|
\

|
.
|
|

(
(
c
c

c
c

c
c

c
c
|
x B
v
R
B
v
R
B
v
y B
v
R
B
v
R
B
v
z B
v
R
B
v
R
B
v q
t
S
B
R S
B
R S
B
gsc
g
xg
so gsc
o
xo
sw gsc
w
xw
gsc
g
yg
so gsc
o
yo
sw gsc
w
yw
gsc
g
zg
so gsc
o
zo
sw gsc
w
zw g
gsc
g
g
so o
o
sw w
w
2.23

The densities at standard conditions are constants and can, therefore, be divided out of the above
equations. This reduces the equations to the following form:

Oil


( )

|
\

|
.
| +
|
\

|
.
| +

|
\

|
.
|

(
(
=
c
c
c
c
c
c

c
c
|
x
v
B y
v
B z
v
B
q
t
S B
xo
o
yo
o
zo
o
o
osc
o o
/
2.24

Water


( )

|
\

|
.
| +
|
\

|
.
| +
|
\

|
.
|

(
(
=
c
c
c
c
c
c

c
c
|
x
v
B y
v
B z
v
B
q
t
S B
xw
w
yw
w
zw
w
w
wsc
w w
/
2.25



6
and Gas


+ +
|
\

|
.
|
|
+ +
|
\

|
.
|
|
+ +
|
\

|
.
|
|
= + +
|
\

|
.
|
|

(
(
c
c
c
c
c
c

c
c
|
x
v
B
v
R
B
v
R
B
v
y
v
B
R
B
v
R
B
v
z
v
B
R
B
v
R
B
v
q
t
S
B
R S
B
R S
B
xg
g
xg
so
o
xo
sw
w
xw
yg
g
so
o
yo
sw
w
yw
zg
g
so
o
zo
sw
w
zw
g
gsc
g
g
so o
o
sw w
w
2.26

Equations (2.10) through (2.16), (2.20), and (2.24) through (2.26) are the basic fluid flow equations
which are numerically solved in a black oil simulator.



7
3. RECASTING THE FLOW EQUATIONS


A glance at Equations 2.24 through 2.26 shows part of the complexity of the basic three-
dimensional, three-phase black oil simulator equations. An equivalent but much simpler appearing
form of the equations is

( ) V =

V
B
q
t
S B
o
o
o
osc
o o

c
c
| / ,

3.1

( ) V =

V
B
q
t
S B
w
w
w
wsc
w w

c
c
| / , 3.2

and


V + +
|
\

|
.
|
|

= + +
|
\

|
.
|
|

(
(

V
B
R
B
v
R
B
v
q
t
S
B
R S
B
R S
B
g
g
so
o
o
sw
w
w
g
gsc
g
g
so o
o
sw w
w

c
c
|
3.3

where the symbol V

v is shorthand for

V = + +

v
x
v
y
v
z
v
x y z
c
c
c
c
c
c
3.4

The form of the Darcy velocities (Equations 2.10 through 2.12) may also be simplified by defining
the potential of phase p (u
p
) as


( )
u
p p
p
p
z
=

144
3.5

where we have used the assumption that g = g
c


In this notation, including x, y, and z direction permeabilities and unit vectors i, j, k, the Darcy
velocities may be written as


v i j k
o o o o
x
x
y
y
z
z
o o o
= Vu = + +

(
(
K K K K
cu
c
cu
c
cu
c

3.6


v i j k
w w w w
x
x
y
y
z
z
w w w
= Vu = + +

(
(
K K K K
cu
c
cu
c
cu
c

3.7

and


8


v i j k
g g g g
x
x
y
y
z
z
g g g
= Vu = + +

(
(
(
K K K K
cu
c
cu
c
cu
c

3.8

We have used the dyadic notation

K to signify that permeability is a tensor of rank two. The


expanded form of Equations 3.6 through 3.8 employs the common assumption that the coordinate
axes of our reference system are aligned along the principal axes of

K . Combining Equations 3.1


through 3.3 with Equations 3.6 through 3.8 gives


V Vu
=
|
\

|
.
|

c
c
|
o o
o
o
osc
o
o
B
q
t
S
B
3.9


V Vu
=
|
\

|
.
|

K c
c
|
w w
w
w
wsc
w
w
B
q
q t
S
B
3.10

and


V
Vu
+
Vu
+
Vu

(
(

= + +
|
\

|
.
|

(
(

c
c
|
g g
g
so o o
o
w sw w
w
g
gsc
g
so o
o
sw w
w
B
R
B
R
B
q
t
S
Bg
R S
B
R S
B
3.11

Equations 3.9 through 3.11 are equivalent to Peacemans 1977 Equations 1-105 through 1-107 for
a three-dimensional system, except we have also allowed gas to dissolve in the water phase. Our
rate and coordinate system sign conventions also differ. If these differences are taken into
consideration, the formulations are seen to be equivalent.


Introduction of the Capillary Pressure Concept

The presence of oil, water, and gas phase pressures in Equations 3.9 through 3.11 complicates the
problem. For many situations, the difference between phase pressures is much smaller than the
individual phase potentials and can be either ignored or treated less rigorously mathematically.
We can simplify the handling of the phase pressures and potentials in the flow equations by using
the capillary pressure concept. Let us define the difference in phase pressures as

p
cow
= p
o
- p
w
3.12

and
p
cgo
= p
g
- p
o .
3.13

The differences p
cow
and p
cgo
are the capillary pressures of oil-to-water and gas-to-oil phases,
respectively. Experimentally p
cow
and p
cgo
have been observed to be principally functions of
water and gas saturations, respectively. Using Equations 3.12 and 3.13 lets us write the water and
gas phase potentials as

u
w o cow
w
p p
z
=

144
3.14


9
and

u
g o cgo
g
p p
z
= +

144
3.15

Combining Equations 3.9 through 3.11 with Equations 3.14 and 3.15 and rearranging yields

Oil

V
|
\

|
.
| V + =
|
\

|
.
|

c
c
|
o
o
o o
o
osc
o
o
B
p CG
q
t
S
B
3.16

Water

V
|
\

|
.
|V + =
|
\

|
.
|

c
c
|
w
w
o w
w
wsc
w
w
B
p CG
q
t
S
B
3.17

and Gas


V + +
|
\

|
.
|
|

(
(
V +
= + +
|
\

|
.
|
|

(
(

c
c
|
g
g
so o
o
sw w
w
o g
g
gsw
g
g
so o
o
sw w
w
B
R
B
R
B
p CG
q
t
S
B
R S
B
R S
B
3.18

The gravity and capillary contributions to the phase pressures have been collected in the terms
CG CG and CG
o w g
, , :

CG
B
z
o
o
o
o
= V
|
\

|
.
|V
|
\

|
.
|

K

144
3.19

CG
B
z
p
w
w
w
w
cow
= V
|
\

|
.
|V
|
\

|
.
|
+

K

144
3.20

and

CG
B
p
z
R
B
z R
B
p
z
g
g
g
cgo
g
so o
o
o sw w
w
cow
w
= V
|
\

|
.
|
|
V
|
\

|
.
| V
|
\

|
.
|
V +
|
\

|
.
|

(
(

K


144 144 144
3.21

Essentially our task is to solve Equations 3.16 through 3.18 and Equation 2.20 for the four
unknowns p S S and S
o o w g
, , , . All other physical properties in the equations are known, in principle,
as functions of the four unknowns, or from field and laboratory data.


10
The Pressure Equation

The procedure we use in BOAST to solve the flow equations requires that we first combine
Equations 2.20 and 3.16 through 3.18 such that we have remaining only one equation for the
unknown pressure p
o
. We proceed by using the following shorthand for Equations 3.16 through
3.18:

Oil

L
t
S
B
o
o
o
=
|
\

|
.
|
c
c
| 3.22

Water

L
t
S
B
w
w
w
=
|
\

|
.
|
c
c
| 3.23

and Gas

L
t
S
B
R S
B
R S
B
g
g
g
so o
o
sw w
w
= + +
|
\

|
.
|
|

(
(
c
c
| 3.24

where

L
B
p CG
q
o
o
o
o o
o
osc
= V V +

, 3.25


L
B
p CG
q
w
w
w
o w
w
wsc
= V V +

, 3.26

and

L
B
R
B
R
B
p CG
q
g
g
g
so o
o
sw w
w
o g
g
gsc
= V + +
|
\

|
.
|
|

(
(
V +

3.27

Recognizing that the formation volume factors, gas solubilities, and porosity are functions of
pressure, we use the chain rule to expand the accumulation terms (time derivatives) of Equations
3.22 through 3.24:

Oil
L
B
S
t
S
B p
S
B
B
p
p
t
o
o
o o
o o
o
o
o
o
o
= +

(
(
| c
c
c|
c
| c
c
c
c
2
, 3.28


11
Water

L
B
S
t
S
B p
S
B
B
p
p
t
w
w
w w
w o
w
w
w
o
o
= +

(
(
| c
c
c|
c
| c
c
c
c
2
, 3.29

and Gas


L
B
S
t
S
B p
S
B
B
p
p
t
R
B
S
t
S R
B p
S
B
R
p
S R
B
B
p
p
t
R
B
S
t
S R
B p
S
B
R
p
S R
B
B
p
p
t
g
g
g g
g o
g
g
g
o
o
so
o
o o so
o o
o
o
so
o
o so
o
o
o
o
sw
w
w w sw
w o
w
w
sw
o
w sw
w
w
o
o
= +

(
(
+ + +

(
(
+ + +

(
(
|
c
c
c|
c
| c
c
c
c
| c
c
c|
c
| c
c
| c
c
c
c
| c
c
c|
c
| c
c
| c
c
c
c
2
2 2
2
3.30

The equality

S
o
+ S
w
+ S
g
= 1 3.31
is now used to remove c c S t
g
from Equation 3.30. Differentiation of Equation 3.31 by t and
rearranging gives


c
c
c
c
c
c
S
t
S
t
S
t
g
o w
= 3.32

Substituting Equation 3.32 into Equation 3.30 and simplifying yields

L
R
B B
S
t
R
B B
S
t
g
so
o g
o sw
w g
w
=
|
\

|
.
|
|
+
|
\

|
.
|
|
| | c
c
| | c
c


+

+ + +
S
B p
S
B
B
p
S R
B p
S
B
R
p
g
g o
g
g
g
o
o so
o o
o
o
so
o
c|
c
|
c
c|
c
| c
c
2


+ +

`

| c
c
c|
c
| c
c
| c
c
c
c
S R
B
B
p
S R
B p
S
B
R
p
S R
B
B
p
p
t
o so
o
o
o
w sw
w o
w
w
sw
o
w sw
w
w
o
o
2 2
. 3.33

Equations 3.28, 3.29, and 3.33 are three equations for the three unknowns p S S
o o w
, , . Multiplying
Equation 3.28 by
( )
B R B
o so g
, Equation 3.29 by
( )
B R B
w sw g
, Equation 3.33 by B
g
, and adding
the results gives

(B
o
- R
so
B
g
) L
o
+ (B
w
- R
sw
B
g
)L
w
+ B
g
L
g



12

( ) ( )
| |
| |
= +
+
|
\

|
.
|
|
+
|
\

|
.
|
|
+

(
(
+

(
(
+

B R B
B
S
t
B R B
B
S
t
B
R
B B
S
t
B
R
B B
S
t
B R B
S
B p
S
B
B
p
p
t
B R B
S
B p
S
B
B
p
p
t
S
p
S
B
o so g
o
o
w sw g
w
w
g
so
o g
o
g
sw
w g
w
o so g
o
o o
o
o
o
o
o
w sw g
w
w o
w
w
w
o
o
g
o
g
| c
c
| c
c
| | c
c
| | c
c
c|
c
| c
c
c
c
c|
c
| c
c
c
c
c|
c
|
2
2
g
g
o
g o so
o o
g o
o
so
o
g o so
o
o
o
g w sw
w o
g w
w
sw
o
g w sw
w
w
o
o
B
p
B S R
B p
B S
B
R
p
B S R
B
B
p
B S R
B p
B S
B
R
p
B S R
B
B
p
p
t
c
c
c|
c
|
c
c
|
c
c
c|
c
|
c
c
|
c
c
c
c
+ +
+ +

`

2 2
3.34

where some simplification has been performed. This mess can be greatly simplified by multiplying
the bracketed terms and then combining with appropriate terms in the curly brackets. We also
notice the terms involving time derivatives of S
o
and S
w
vanish identically. The result is


( ) ( )
( )
B R B L B R B L B L
S S S
p
S
B
B
p
S
B
B
R
p B
B
p
S
B
B
R
p B
B
p
p
t
o so g o w sw g w g g
g w o
o
g
g
g
o
o
g
o
so
o o
o
o
w
g
w
sw
o w
w
o
o
+ + =
+ + +
|
\

|
.
|

+
|
\

|
.
|
(

(
(
c|
c
| c
c
|
c
c
c
c
|
c
c
c
c
c
c
1
1
3.35

The oil, water, gas, rock, and total compressibilities are identified as

c
B
B
p
B
B
R
p
o
o
o
o
g
o
so
o
= +
1 c
c
c
c
, 3.36

c
B
B
p
B
B
R
p
w
w
w
o
g
w
sw
o
= +
1 c
c
c
c
, 3.37

c
B
B
p
g
g
g
o
=
1
c
c
, 3.38

c
p
r
o
=
1
|
c|
c
, 3.39

and

c
t
= c
r
+ c
o
S
o
+ c
w
S
w
+ c
g
S
g
3.40

respectively. Employing these definitions, Equations 3.25 through 3.27, and 3.31 in Equation 3.35
gives


13


( )
( )
B R B
B
p CG
q
B R B
B
p CG
q
B
B
R
B
R
B
p CG
q
c p
t
o so g
o
o
o o
o
osc
w sw g
w
w
o w
w
wsc
g
g
g
so o
o
sw w
w
o g
g
gsc
t o
V V +

(
+ V V +

(
+ V + +
|
\

|
.
|
|
V +

(
(
=

K
K
K

c c
c
.
3.41

Equation 3.41 is called the pressure equation because no explicit time derivatives of saturations
are present. Our approach is to solve the three-dimensional, three-phase flow equations by first
numerically solving the pressure equation for p
o
, then using the results in Equations 3.22, 3.23, and
3.31 to find the phase saturations. This solution procedure will be discussed in subsequent
chapters.



14
4. FINITE DIFFERENCE FORMULATION: IMPES PROCEDURE


Simulation of three-phase, three-dimensional flow in a reservoir requires solving the system of
coupled, nonlinear partial differential equations. These equations arise, as we have seen, from
application of the conservation of mass principle to an oil-water-gas system. For most practical
situations, the flow equations cannot be solved analytically. Instead, the partial differential
equations are approximated by algebraic equations known as finite difference equations. The finite
difference equations are obtained by replacing derivatives with approximations derived from
truncated Taylor series expansions (von Rosenberg (1977) or Kreyszig (1972)). It is worthwhile to
review how this is done before converting our partial differential equations to finite difference form.

From this point forward our technical description will move away from the more rigorous theoretical
formulation of fluid flow equations to the more practical implementation methods capable of
obtaining meaningful results from the equations. Many of the methods we will discuss are justified
more by industry experience than by theoretical principles. With complex physical systems such
as we are considering, this is unavoidable. Bearing in mind our time constraints and objectives, we
tended to choose proven methods whenever a choice existed. Refinements to our methods can be
made when the occasion dictates.


The Finite Difference Concept

Our objective is to replace unknown derivatives such as cp/cx with more manageable
mathematical quantities. We can do this by manipulating the Taylor series:

( ) ( )
( ) ( ) ( ) ( ) ( )
p x x p x x
p x
x
x p x
x
x p x
x
x
x
+ = + + + + A A
A A c
c
c
c
c
c
2
2
2
3
3
3
3
2 6
. . . 4.1

where
x
means the derivative is evaluated at x. If we know the value of p and its derivatives at x,
then by Equation 4.1 we can compute the value of p at x + Ax. Alternatively, if we know the values
of p(x) and p (x + Ax) , we can approximate the derivative cp(x)/cx as follows.

Subtracting p(x) from both sides of Equation 4.1, dividing by Ax, and suppressing the notation (
x

gives


( ) ( ) ( )
( )
p x x p x
x
p x
x
x
+
= +
A
A
A
c
c
c 4.2

( )
( ) ( ) ( )
c
c
c
c
c
x
x
p x
x
x p x
x
+ +
A
A
2 6
2
3
2
3
3
. . . 4.3

Subtracting c(Ax) from both sides of Equation 4.2 yields


( ) ( ) ( )
( )
c
c c
c
p x
x
p x x p x
x
x =
+

A
A 4.4

If c(Ax), which is known as the truncation error, is small compared to (p(x + Ax) - p(x))/Ax, then we
have the approximation

( ) ( ) c
c
p x
x
p x x px
x
~
+ A
A
4.5


15

Equation 4.5 becomes an equality when c(Ax) vanishes. For sufficiently small values of Ax, we
can use Equation 4.5 to replace our first order derivatives of a quantity p with respect to x by a
difference between two neighboring values of p separated by a finite interval Ax. Hence the right
hand side of Equation 4.5 is said to be a finite difference approximation of cp(x)/cx which is correct
to first order in Ax, where the order of correctness is equal to the power of Ax in the leading term of
Equation 4.3. Expressions similar to Equation 4.5 can be written for derivatives with respect to y, z,
or t. The increment in time At is called the time step size. Increments (or differences) along a
spatial axis -- such as Ax, Ay, or Az -- are called grid block lengths along that axis. For example,
Az is the grid block length along the z-axis.


Finite Difference Approximations

We can extend the concepts of the previous section to find a number of useful approximations.
Suppose we have a continuous function p of x (such as the pressure drop across a core that is
being waterflooded) and we want to estimate the value of cp/cx . This situation is illustrated in
Figure 4.1.

Figure 4.1
Core with pressure taps.

p(x)






x
1
x
i-1
x
i
x
i+1
x
L




If we have values of p at locations x
i
(from, for example, pressure tap measurements), we can
estimate cp/cx using Equation 4.5 in the following form:


( ) c
c
p x
x
p p
x
x x x
i i
i i
~

=
+
+
1
1
A
A , 4.6

where the notation p
i
means the value of p at x
i
, and x
i
is known as the i
th
node location.

An alternative approximation can be obtained by starting with the Taylor series:

( ) ( )
( ) ( ) ( ) ( ) ( )
p x x p x
x p x
x
x p x
x
x p x
x
x
x x
= + + A
A A A c
c
c
c
c
c
2
2
2
3
3
3
2 6
. . . 4.7

Manipulating Equation 4.7 like we did with Equation 4.1 and dropping the truncation error term
gives
Ax


16

( ) ( ) ( ) c
c
p x
x
p x p x x
x
~
A
A
4.8

or, in the notation of Equation 4.6, Equation 4.7 becomes


( ) c
c
p x
x
p p
x
x x x
i i
i i
~

=

1
1
A
A , , 4.9

Equation 4.6 is called the forward difference or downstream approximation of cp/cx, while Equation
4.9 is termed the backward difference or upstream approximation of cp/cx.

Subtracting Equation 4.7 from 4.6 and rearranging gives in our discrete notation


( )
( )
c
c
c
p
x
p p
x
x
i i
=


+ 1 1 2
2 A
A 4.10

where the truncation error is now second order in Ax. Equation 4.10 is called the centered
difference approximation of cp/cx and is more accurate than either Equation 4.6 or 4.9. This
method is, in essence, applied twice to produce the finite difference approximation for second-
order derivatives. However, despite this method's improved error estimate, there are situations
when this approximation method should not be used. For example, in solving the parabolic
differential equation c
2
p/cx
2
=cp/ct, use of a time-centered difference approximation will lead to an
unconditionally unstable finite difference equation (Peaceman, p. 53.)

If we add Equations 4.1 and 4.7 we obtain


( ) ( )
p p p
x p
x
p
x
x
i i i
x
x
i
i
+
+ = + +

(
(
+
1 1
2
2
2
4
4
4
2
2
24
A A c
c
c
c
. . . 4.11

Solving for the second derivative gives


( )
( )
c
c
c
2
2
1 1
2
2
2
2 p
x
p p p
x
x
i i i
=
+

+
A
A 4.12

where the second-order truncation error term is

( )
( )
c
c
c
2
2
4
4
2
12
A
A
x
p
x
x
= + . . . 4.13

Equation 4.12 provides an approximation for second-order derivatives.

Many other finite difference approximations can be constructed using manipulations of the Taylor
series such as presented above. They have been described extensively in the literature and there
is little value in rederiving them here since the basic ideas are the same. For our purposes, the
only other approximation we need is



17

c
c
c
c x
p
x
p p
x
p p
x
x x
i
i i
i
i i
I
I
A
I
A
A A
|
\

|
.
|
~

''
|
\

|
.
|


'
|
\

|
.
|
' + ''
+
+


1 2
1
1 2
1
2
/ /
4.14a

where


A
A
' =
'' =

+
x x x
x x x
i i
i i
1
1
,
.
4.14b


Figure 4.2.
Typical Grid Setup Using Above Notation.

P
i-1
P
i
P
i+1


X
i-1
- X
i
- X
i+1
-




The notation I
i-1/2
, I
i+1/2
means the coefficients should be evaluated at x
i-1/2
, x
i+1/2
respectively
where for now x
i+1/2
denotes a location somewhere between x
i
and x
i+1
, (similarly for x
i-1/2
).
However, since the values for I are usually known at the nodes x
i
, i = 1 through L, some sort of
averaging procedure must be used in order to arrive at an acceptable approximation for these
intermediate values of I. Such a procedure will be outlined in the next section.


Evaluation of Transmissibilities

We are concerned with the movement of fluids between two blocks such as those in Figure 4.3.


Figure 4.3.
Transmissibility between two grid blocks.

P
i-1
P
i
P
f
x - axis
Q
p




A ' X A '' X
Ax
i
Ax
i-1



18
Assuming that the conditions needed for Darcy flow are satisfied (and ignoring for the moment
changes in phase mobility (
p
) and phase formation volume factor (B
p
)), we have:

Q KA
k
B
p p
x x
p c
rp
p p
i i
i i
=

+


1
1
2
A A
4.15

where Q is the absolute average phase volumetric flow rate, K is the Darcy-equivalent absolute
permeability associated with a pressure drop from x
i-1
to x
i
, and A
c
is the Darcy-equivalent cross-
sectional area between x
i-1
and x
i
. To make use of the above equation, it becomes necessary to
express the product KA
c
in terms of known variables, namely x
j
, K
j
, A
cj
, where j = i-1 and i.

First Darcy's law is expressed for each shaded volume element with homogeneous physical
properties:

Q K A
k
B
p p
x
p i c i
rp
p p
i f
i
=


1 1
1
1
2
,

A
4.16

Q K A
k
B
p p
x
p i c i
rp
p p
f i
i
=

,

A
2
4.17
where p
f
refers to the pressure at the interface of block (i-1) and block (i). Solving for (P
i-1
-p
f
) and
(p
f
-p
i
) in Equations 4.16 and 4.17, respectively, and then adding the results yields:

p p Q
x
k
B
K A
x
k
B
K A
i i
i
rp
p p
i c i
i
rp
p p
i c i

= +

(
(
(
(
(
1
1
1
2 2
A A

, ,
4.18

Inserting this expression into Equation 4.15 and solving for KA
c
gives:

KA
x x
x
K A
x
K A
c
i i
i
i c i
i
i c i
=
+
|
\

|
.
|
|
+
|
\

|
.
|
|


A A
A A
1
1
1 1 , ,
4.19

If one finally substitutes this expression back into Equation 4.15, the result after some simplification
is


( ) ( )
( ) ( )
( ) Q
k
B
KA KA
x KA x KA
p p
p
rp
p p
c
i
c
i
i c
i
i c
i
i i
=

+

(
(

2
1
1
1
1
A A
4.20

We still have the task of determining a suitable average for the product k
rp
/
p
B
p
. Industry
experience (Crichlow (1977) for example) has shown that use of a phase mobility in the block
which has the larger phase potential of the two neighboring blocks yields more reliable results. The
calculation in BOAST uses the value of the phase saturation of the upstream block at time level n
to determine an upstream phase relative permeability. This is then combined with the arithmetic
mean values of the phase viscosities and phase formation volume factors, giving:


19


k
B
k
B B
rp
p p
rp upstream
p i p i p i p i

=
+ |
\

|
.
|
+ |
\

|
.
|

( )
, , , , 1 1
2 2
4.21

The final form of Equation 4.20 thus becomes:


( )
( )
( ) ( )
( ) ( ) ( )
( ) ( )
Q A p p
k
B B
KA KA P p
x KA x KA
p p i i i
rp upstream
p i p i p i p i
c
i
c
i
i i
i c
i
i c
i
= '

+ +

+

(
(




, /
, , , ,
1 2 1
1 1
1
1
1
1
4
2
A A
4.22

where '

A
p i , / 1 2
is called the Darcy Phase Transmissibility between block p (i-1) and block (i).

If we now return to the pressure equation (Equation 3.41), we see frequent occurrence of the form:

V V =
|
\

|
.
|
|
+
|
\

|
.
|
|
+
|
\

|
.
|
|

K
B
p
x
K
B
p
x y
K
B
p
y z
K
B
p
z
p
p
p x
p
p
p
y
p
p
p
z
p
p
p

c
c
c
c
c
c
c
c
c
c
c
c


Expanding the first term in Equation 4.23 in finite difference form according to Equation 4.13 and
using the definition of phase transmissibility, we find:


( ) ( )
c
c
c
c

x
K
B
p
x
A
y z
p p
A
y z
p p
x x
K
B
p p
x
K
B
p p
x
x x
x
p
p
p
i
p i
i i
i i
p i
i i
i i
x
p
p
i
i i
x
p
p
i
i i
i
|
\

|
.
|
|
~
'

'

' + ''

|
\

|
.
|
|

''
|
\

|
.
|

|
\

|
.
|
|
|
\

|
.
|
' + ''
+
+

+
+

, / , /
/ /
1 2
1
1 2
1
1 2
1
1 2
1
2
2
A A A A
A A
A A
A A
4.24

Here we have assumed that the cross-sectional area remains constant from block to block, as
would be the case for any rectangular grid system. If the cross-sectional area changes from block
to block, the assumption would only hold approximately, since there would arise the question of
mass balance at the block interface. However, the option to include varying cross-sectional areas
is a nonrigorous yet practical feature of BOAST that yields approximate results for many realistic
situations.

Equation 4.24 is now multiplied through by the i
th
bulk volume element V
B
= Ax
i
Ay
i
Az
i
, so
that we have

V
x
K
B
p
x
B x
p
p
p
i

|
\

|
.
|
|
~
c
c
o
c
4.23

( ) ( )
| |
A
A A
x
x x
A p p A p p
i
p i i i p i i i
' + '' |
\

|
.
|
' '
+ +
2
1 2 1 1 2 1 , / , /




20
( ) ( )
+ +
A p p A p p
p i i i p i i i , / , / 1 2 1 1 2 1
4.25

where A
p i , / 1 2
is the finite difference phase transmissibility between block (i-1) and block (i). It is
this value of transmissibility that BOAST uses in its internal calculations. It should be observed
that the Darcy phase transmissibility ' A
p
equals the finite difference phase transmissibility A
p
when
the grid spacing is uniform. A similar procedure is used to obtain transmissibility values for the
other two dimensions.


Finite Difference Equations

Using finite difference approximations we can convert the black oil simulator partial differential
equations to the algebraic equations. Figure 4.4 illustrates the coordinate and node locations used
in our three dimensional formulation. The equations to be solved are the pressure equation 3.41,
the oil saturation equation 3.22, and the water saturation equation 3.23. These three equations are
first multiplied through by the bulk volume element (V
B
)
i,j,k
. Next, a linear difference operator is
defined as follows:

AAAp = A
x
A
x
Ap
x
+ A
y
A
y
Ap
y
+ A
z
A
z
Ap
z
4.26
where
A
x
A
x
Ap
x
= A
i-1/2,j,k
(p
i-1,j,k
- p
i,j,k
) + A
i+1/2,j,k
(p
i+1,j,k
- p
i,j,k
) 4.27

Using the above notation, the resulting difference equations become:

Pressure


( )
( )
( )
( )
B B R A p GOWT
q V
B B R A p GWWT
q V
B A p R A p R A p GGWT
q V
V C
t
p p
o
n
g
n
so
n
ijk
o
n n o B
osc
ijk
w
n
g
n
sw
n
ijk
w
n n w B
wsc
ijk
g
n
ijk
g
n n
so
n
o
n n
sw
n
w
n n g B
gsc
ijk
p
n
t
n
ijk
n n
ijk
+
|
\

|
.
|
+ +
|
\

|
.
|
+ + + +
|
\

|
.
|
|
=
|
\

|
.
|
|

+
+
+ + +
+
A A
A A
A A A A A A
A
1
1
1 1 1
1

4.28

Oil

A A
A
A p GOWT
q V
t
V S
B
V S
B
o
n n o B
osc
ijk
p o
o
n
p o
o
n
ijk
+
+
+
|
\

|
.
| =
|
\

|
.
|
|
\

|
.
|

(
(
1
1
1

4.29


21
and Water

A A
A
A p GWWT
q V
t
V S
B
V S
B
w
n n w B
wsc
ijk
p w
w
n
p w
w
n
ijk
+
+
+
|
\

|
.
| =
|
\

|
.
|
|
\

|
.
|

(
(
1
1
1

4.30

where V
p
is the grid block pore volume:
V
p
= |V
B
4.31
Observe that a forward difference approximation has been used for representing time derivatives.
The superscripts n and n+1 denote the present and next future time level respectively. Quantities
with superscript n can be computed using existing data, whereas quantities with superscript n+1
are the unknown variables we are trying to find.

Gravity and capillary pressure effects (Equations 3.14 - 3.21) are contained in GOWT, GWWT and
GGWT:

GOWT A
z
o
n o
n
=
|
\

|
.
|
A A

144
4.32

GWWT A
z
p
w
n w
cow
n
= +
|
\

|
.
|
A A

144
4.33

GGWT A p
z
R A
z
R A p
z
g
n
cgo
g
n
so
n
o
n o
n
sw w
n
cow
w
n
=
|
\

|
.
|
|
\

|
.
|
+
|
\

|
.
|

(
(
A A A A


144 144 144
4.34


Figure 4.4. -- Node representation of three dimensional array of reservoir grid blocks.










y
x
z
(i,j,k) i+1
j+1
k+1
j-1
i-1
k-1




22
Finite Difference Grids and Boundary Conditions

Until now we have not worried about enclosing our system within finite boundaries or specifying the
location of our grid block nodes. We have tacitly assumed, though it is not necessary
mathematically, that the nodes are located at the center of an element of symmetry (such as the
center of a cube). In general, two types of grids are used: block-centered; and lattice- or point-
centered. They are illustrated in Figure 4.5.

Figure 4.5.
Node locations.

RESERVOIR
GRID




The choice of grid and the choice of boundary conditions are intimately related, as has been
discussed extensively in the literature (Peaceman, (1977), Crichlow (1977) and von Rosenberg
(1977) are examples). Selection of a grid is important in deciding how to treat differences at
boundaries. For example, if we are considering the blocks on the boundary i = 1, how do we
evaluate the backward difference approximation


c
c
p
x
p p
x x
p p
x x
i i
i i
o
o
~

1
1
1
1
4.35

when p and x are undefined? The usual approach is to assume the boundary of the finite difference
grid is a no-flow boundary. This means there is no pressure gradient across the boundary and, in
our example, p
1
= p
o
.

A block-centered grid with the no flow boundary condition has been used in the BOAST
formulation. Implementation is achieved by setting transmissibilities at boundary interfaces to
zero.


The IMPES Procedure

We now have all of the basic elements necessary for writing down the algebraic system of
equations corresponding to the nonlinear, partial differential flow equations of our black oil
simulator. Once again it is useful to define new variables to simplify the notation. In particular, the
pressure equation is cast in a relatively simple form by making the following definitions:


( )
( )
QOWG B B R
q V
GOWT
B B R
q V
GWWT B
q V
GGWT
o g so
o B
osc
w g sw
w B
wsc
g
g B
gsc
=
|
\

|
.
|
+
|
\

|
.
| +
|
\

|
.
|
|


,
4.36
BLOCK CENTERED LATTICE


23

( )
| |
( )
| |
AE B B R R A
B B R R A B A
i o g soi so i oi
w g sw i sw i w i g gi
= +
+ + +
+ +
+ + +
1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.37


( )
| |
( )
| |
AW B B R R A
B B R R A B A
i o g soi soi oi
w g sw i swi w i g gi
= +
+ + +


1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.38


( )
| |
( ) | |
AN B B R R A
B B R R A B A
j o g so j so j o j
w g sw j sw j w j g g j
= +
+ + +
+ +
+ + +
1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.39


( )
| |
( ) | |
AS B B R R A
B B R R A B A
j o g so j so j o j
w g sw j sw j w j g g j
= +
+ + +


1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.40


( )
| |
( )
| |
AB B B R R A
B B R R A B A
k o g sok sok ok
w g swk swk w k g gk
= +
+ + +
+ +
+ + +
1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.41


( )
| |
( )
| |
AT B B R R A
B B R R A B A
k o g so k sok o k
w g swk swk w k g gk
= +
+ + +


1
2
1 1 2
1
2
1 1 2 1 2
, , , /
, , , / , /
,
4.42

All of the quantities in Equations 4.36 - 4.42 are evaluated at the present (n
th
) time level and many
subscripts have been suppressed. The pressure equation 4.28 becomes


AT p AS p AW p
AB p AN p AE p E B
k k
n
j j
n
i i
n
k k
n
j j
n
i i
n
p
n

+
+
+
+
+
+
+ +
+ +
+ + + + =
1
1
1
1
1
1
1
1
1
1
1
1 1
4.43

E AT AS AE AW AN AB
V c
t
k j i i j k
p
n
t
n
= + + + + + +

(
( A
4.44

B QOWG
V c p
t
p
n
t
n n
= +

(
( A
4.45

In principle and practice the coefficients of the n+1 pressures in Equation 4.43 are all known at the
present time level, and an equation like Equation 4.43 exists for each grid block. The total system
of algebraic equations is solved for the pressures at the new n+1 time level. These solution
methods are discussed in the next chapter. When the new pressures have been computed, they
are used in Equations 4.29, 4.30 and 3.31 to find the new saturations S S S
o
n
w
n
g
n + + + 1 1 1
, , . The new
pressures and saturations are then considered the present values and the calculation is repeated.
In this way, the approximate numerical solution of the black oil simulator flow equations may be
obtained for an arbitrarily long time. This procedure is known as the implicit pressure explicit
saturation (IMPES) procedure.


24
5. SOLUTION METHODS


The finite difference form of the pressure equation (Equation 4.43) leads to a system of linear
equation for the I-J-K unknowns pp i I j J k K Here p
i j k
n
i j k
n
, , , ,
, , , .
+ +
s s s s s s
1 1
1 1 1 denotes the
pressure at grid block (i,j,k) at the new (n+1) time level. Such a system of equations may be
written as


a p a p a p q
a p a p a p q
a p a p a p q
N N
N N
N N NN N N
11 1 12 2 1 1
21 1 2 2 2 2 2
1 1 2 2
, , ,
, ,
, , ,
+ + + =
+ + + =
+ + + =

5.1

where N = I-J-K, and the new (n+1) time level superscripts have been suppressed.

Alternatively, the same set of equations may be expressed in a more compact form using matrix
notation as follows:

A p q = 5.2

where A is the coefficient matrix, and p q , are column vectors as given below.

A
a a a
a a a
a a a
p
p
p
p
q
q
q
q
N
N
N N NN N N
=

(
(
(
(
(
=

(
(
(
(
(
=

(
(
(
(
(
11 12 1
21 2 2 2
1 2
1
2
1
2
, , ,
, , ,
, , ,


5.3

Various methods exist for solving such a system of linear equations, but generally these methods
fall into one of two groups - direct methods, or iterative methods. BOAST has the option of
selecting one of two direct methods (BAND or D4), or selecting an iterative technique (LSOR) to
solve its system of equations. It is standard practice to present the user with a choice of several
different techniques for solving systems of equations, since the efficiency of any one technique is
highly problem-dependent and "a priori" it is usually difficult to tell which technique would work the
best for any one problem.

The details of each of these three methods, along with some implementation considerations, will
now be presented.


Direct Methods

Direct methods are techniques for solving the system of linear equations 5.2 in a fixed number of
steps. These methods make use of elementary row operations to transform the system of
equations 5.2 into other systems of equations which have identical solutions but are in some ways
easier to solve than 5.2. Thus, in notational form, we have:

A p q A p q A p q
el row op el row op el row op
m m
= = =
. . . . . . . . .
1 1
5.4
Usually, one performs the necessary elementary row operations so that A
m
is an upper triangular
matrix, because it then becomes an easy matter to solve for p by backward substitution. This


25
procedure, known as Gaussian elimination, provides a basis for other direct methods, each of
which is suited for a particular type of system of equations.

An alternative approach (but one which can be shown to be completely equivalent to the
elementary row operation approach) involves the factorization of matrix A
m
into a lower triangular
matrix L and an upper triangular matrix U. That is, first seek to find matrices L and U such that

A L U = - 5.5

where, upon inserting this expression into Equation 5.2 we get:

L Up q = 5.6

If such matrices can be found, then we try to solve the system of equations

L z q = 5.7

for z by forward substitution (since L is a lower triangular matrix), and finally solve the system

Up z = 5.8

for p by backward substitution.

There are many ways to factor the matrix A , since there are N degrees of freedom in choosing the
diagonal elements for L and U. One such method requires that the diagonal elements for U be
one; this method is called Crout's method and is the one employed in the BAND algorithm
described below.


The BAND Algorithm:

The system of equations to be solved in BOAST leads to an N x N matrix A which is sparse - that
is, there are only a few (at most seven) nonzero elements in any given row of A . Because of this
fact, it is possible to label the unknowns p
i
in such a manner that the matrix A has the appearance
of a banded matrix. If this is done, then the resulting direct method used (in this case direct
factorization using Crout's method) becomes much more efficient, since the entries outside of the
bandwidth will remain zero for the matrices L and U, as well as for A .

The "labeling" of points alluded to earlier is known as the natural ordering: points are ordered first
by increasing k, then by increasing j, and finally by increasing i. Figure 5.1a shows a natural
ordering of points for a 4 x 3 x 2 grid and serves as an example for our discussion. With this
formulation, it can be seen that there are, for example, only three blocks adjacent to Block 1,
namely: Blocks 2, 3, and 7. Since these are the only blocks by which fluid can either enter or exit
Block 1 (assuming the transmissibilities between these blocks are nonzero), it follows that Equation
1 can contain at most 4 nonzero terms - the coefficients for P P P andP
1 2 3 7
, , , . Proceeding similarly,
a matrix A is produced which has a form as shown in Figure 5.2 (an x in the figure denotes a
nonzero coefficient).



26
Upon inspection of matrix A , the maximum width of the band containing nonzero values - the
bandwidth W - is seen to be:

W = 2JK + 1 5.9

Since it can be shown that the amount of computational work involved in factoring the matrix A is
strongly dependent on the size of the bandwidth W, the grid should be oriented in such a manner
as to reduce the size of W as much as possible. In terms of practical implementation in BOAST,
this means the user should align the grid so the longest side is in the x-direction, in order to
maximize the efficiency of the BAND routine.

The specific equations used in BAND will now be presented. First three limits are defined in terms
of the bandwidth W:

L
1
( i ) = max (1, i - (W-1)/2 5.10

L
2
( i ) = min (N, i + (W-1)/2) 5.11

L
3
( j ) = max (1, j - (W-1)/2) 5.12

The factorization algorithms now become


( )
1 1 1
1
1
1 1 ij ij
k L i
j
i k kj
a u j L L i = = +
=

, , , 5.13


( )
u a u j i L
ij ij
k L j
i
i k kj ii
=
|
\

|
.
|
|
= +
=

3
1
2
1 1 1 , , . 5.14


Here 1
ij ij ij
u and a ,
,
are the i
th
, j elements of matrices L U and A , , , respectively. Note that in BAND,
however, the new entries for L and U, are written over the old entries for A (which are no longer
needed) in order to conserve storage space.

Once the factorization is complete, we solve Equation 5.7 using forward substitution:


( )
z q z i N
i i
k L i
i
ik k ii
=
|
\

|
.
|
|
=
=

1
1
1 1 1 2 , , , . 5.15a

Finally, Equation 5.8 is solved for the unknown pressure p
i
using backward substitution:


( )
p z u p i N N
i i
k i
L i
ik k
= =
= +

1
2
1 1 , , , . 5.15b

A more complete treatment of this algorithm may be found in Peaceman, pp. 88-90 (1977).


Figure 5.1a -- Natural Ordering for 4 x 3 x 2 Grid.



27


















Figure 5.1b -- D4 Ordering for 4 x 3 x 2 Grid.


















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


28
Figure 5.2
Coefficient Band Matrix A Corresponding to Natural Ordering for 4 x 3 x 2 Grid.

XXX X
XX X X
X XXX X
XXX X X
X XX X
XXX X
X XXX X
X XX X X
X X XXX X
X XXX X X
X X XX X
X XXX X
X XXX X
X XX X X
X X XXX X
X XXX X X
X X XX X
X XXX X
X XXX
X XX X
X X XXX
X XXX X
X X XX
X XXX


The D4 Algorithm:

In the last section a natural ordering scheme was described which produced a banded matrix. In
general, however, for a given system of N equations in N unknowns, many different orderings (up
to N!) are possible. If, using one such ordering, the matrix form of the equation is

A x = b 5.16

then, using another such ordering, the matrix form of the equation will be

' ' = ' A x b 5.17

where Equation 5.17 is related to Equation 5.16 by the transformation

' = = ' =

A P A P x P x b P b
1
; ; . 5.18

The matrix P, which relates a vector in one ordering to a vector in another ordering, is called a
permutation matrix. It is a nonsingular matrix consisting of zeros and ones; furthermore, any row
or column contains only one nonzero element.

Among these various orderings there are several which have been shown to produce a substantial
decrease in the subsequent matrix calculations compared to natural ordering. One such ordering,
due to Price and Coats (1973), is called D4 ordering, and will be described below.

The concept of ordering by alternate diagonal planes is first introduced. If x
i,j,k
is any point in a grid
system, it is said to belong to a (diagonal) plane m if its indices satisfy the relation:

i + j + k = m 5.19


29

From this definition, it is evident that the smallest plane number is three, while the largest is M,
where M = I + J + K.

The planes are ordered first by increasing odd-numbered planes, and then by increasing even-
numbered planes. Thus, all points in the grid system will satisfy the following relationship: if x
i,j,k

belongs to plane m, x
i j k ' ' ' , ,
belongs to plane m, and plane m is ordered before plane m', then point
x
i,j,k
will be ordered before point x
i j k ' ' ' , ,
.

Next, within each plane an ordering must be defined. Consequently, for all points x
i,j,k
within a
plane m, the points are ordered first by decreasing k, and then, for a fixed k, by decreasing j. We
note that here, as in our definition for natural ordering, the most efficient implementation in BOAST
requires that the grid be oriented so the longest side is along the x-axis.

As an example, the 4 x 3 x 2 grid used for the natural ordering example (Figure 5.1a) will now be
reordered using D4 ordering. Since the maximum number of planes is 4 + 3 + 2 = 9, the planes
are ordered as follows:

3, 5, 7, 9, 4, 6, 8 5.20

and the minimum plane number is 1 + 1 + 1 = 3.

Upon reordering within each plane, Table 5.1 is produced which shows the D4 ordering index for
every grid point in the system.


TABLE 5.1

Plane D4 Plane D4
i j k Number Point i j k Number Point

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


Using BOAST's notation and referring to Table 5.1, we would have, for example, that

INDD4 (4, 1, 2) = 9 5.21

From Table 5.1 we can now label the grid points - this is demonstrated in Figure 5.1b. As was
done for the natural ordering case, the figure can be used to construct the form for the coefficient
matrix, which is shown in Figure 5.3. The nonzero entries are again denoted by x's; the
significance of the o's appearing in the lower right-hand quadrant will be explained presently.


Figure 5.3


30
Coefficient Matrix ACorresponding to D4 Ordering for 4 x 3 x 2 Grid.




Upon examination of this matrix A , it becomes clear why D4 ordering has an advantage over
natural ordering. Since there are no nonzero terms below the main diagonal in the upper half of
matrix A , the upper half of A is already upper triangular and no matrix reduction operations need
be performed there. As a result, this upper half of A remains the same throughout the matrix
reduction computations, thereby reducing the total number of computations, especially if the matrix
A is large. In practice, D4 ordering might not be as efficient as natural ordering for small A , since
some overhead computations are incurred in setting up the D4 ordering scheme.

In applying Gaussian elimination, the lower left-hand quadrant needs to be zeroed out; in doing so,
new nonzero elements are created in the lower right-hand quadrant. It is these nonzero entries
which are designated by o's in Figure 5.3. To eliminate the left-hand quadrant, the program must
somehow keep track of where the lower diagonal block of nonzero entries is, so that no extraneous
calculations will be performed. This is accomplished by recognizing the following limits:

1. The lower diagonal block of nonzero entries starts at row (N + 1)/2 + 1, and ends at row N.

2. The bandwidth for this lower diagonal block is given by: B
1
= JK + 1.

3. There is a maximum of (JK + 1) / 2 + 1 nonzero entries in the first nonzero row of the lower
diagonal block. For each subsequent row, the position of the last nonzero entry in the row is
increased by one.
In the above limits, and in the rest of this section, it is assumed that integer arithmetic has been
used. For example, for our previous problem with N = 4 x 3 x 2 = 24, the first nonzero row starts
on row (24 + 1) / 2 + 1 = row 13. Also, the same results apply to the upper diagonal block if we
replace the word "row" by the word "column".

After Gaussian elimination has been performed to zero-out the lower left-hand quadrant, a band
matrix having bandwidth W = 2JK + 1 is produced in the lower right-hand quadrant. We can
consider this band matrix as being the coefficient matrix for the lower half of unknowns; i.e. one is


31
now in a position to solve for the unknowns
( )
p p
N N + + ' 1 2 1 /
using the band algorithm discussed
earlier. Finally, backward substitution is used to solve for the remaining unknowns:


( )
p p p
N 1 2 1 2
, , .
/

+



Iterative Methods

Direct methods are usually applied for systems of equations which are, at most, intermediate in
size (say Ns 1000 , ). Because of the drastic increase in computational effort as the grid size
increases (for example, for the BAND algorithm, the amount of calculations increases
approximately as the cube of the bandwidth), there exists a grid size, such that for any grid size
larger than this, an iterative method would have a computational advantage over a direct method.
More importantly, perhaps, is the fact that direct methods require large amounts of storage for the
coefficient matrix A , so there could be systems of equations which simply would not fit into even
the largest computers.

Iterative methods, on the other hand, are particularly well suited for large, sparse systems of
equations. The general idea in any iterative method is to start out with an initial guess for the
solution vector, and to somehow iterate upon this initial guess until some convergence criterion is
satisfied. One such iterative method receiving wide-spread industry use is the line successive
overrelaxation (LSOR) iterative method, which has been implemented in BOAST.

Consider again the linear system given by Equation 5.2. First define a splitting for matrix A as
follows:


( )
A D D A = 5.22

where Dis a diagonal matrix having the same diagonal entries as matrix A . Inserting 5.22 into
Equation 5.2 and rearranging yields the iterative procedure:


( )
p D D A p D q
n n +
= +
1 1 1
, 5.23

or
p B p c
n n +
= +
1
5.24

where


( )
B D D A =
1
5.25

and
C D q =
1
5.26

The iterative procedure 5.24 is known as the Jacobi method. This procedure is equivalent to
solving each of the N equations in the system 5.2 for p
i
, and then generating each p fromp
i
n
i
n +1
by
using the formula:



32

( )
( )
p
a p q
a
i
n
j
j i
N
ij j
n
i
ii
+
=
=
=
+

1
1
5.27

However, this method does not make full use of the most recent estimates of p
i
n+1
. A method
which takes the recent estimates into account is called the Gauss-Seidel method, and is defined
by:

p L p Up C
n n n + +
= + +
1 1
5.28
or

p I L UP I L C
n n +

=
|
\

|
.
| +
|
\

|
.
|
1
1 1
5.29

where L and U are strictly lower and upper triangular matrices, respectively, such that

B = L + U 5.30

Another refinement of this iterative method involves a weighting procedure between new and old
iterates. Introducing a weighting parameter e, Equation 5.28 is modified to read:

p
n+
=
1
(L p
n+1
+ U p
n
+ C) + (1 - e) p
n
5.31

Equation 5.31 can be simplified to read:

p
n+
=
1
p
n
+ (I - eL)
-1
e C 5.32

where

( ) =
|
\

|
.
| +
|
\

|
.
|

I L U I e e e
1
1 5.33

If e > 1, then e is known as the overrelaxation parameter, since we are in some sense
overcorrecting" the new iterate p
n+1
, where p
n+1
would be the new iterate for the Gauss-Seidel
method. For a complete treatment of the above discussion, see Young (1971), Chapter 3.

The methods treated so far have been point iterative methods, which could be solved explicitly. As
an extension of this SOR theory, we could require that all points in a line (say, along the x-axis) be
solved first implicitly (using a tridiagonal system of equations), and then these values would be
appropriately weighted using e. As we proceed from line to line, the updated values of the
unknowns from the previous line could be used. It is this method, an extension of Equation 5.32,
which is known as the LSOR method, and it is the LSOR method that is the iterative method used
in BOAST. More details of the LSOR method can be found in either Young (1971) or Peaceman
(1977).

There still remains the problem of choosing a suitable value for e to optimize convergence. It can
be shown that under rather general assumptions for the matrix A , the optimal value of e (=e
b
)
for use in Equation 5.32 can be related to the spectral radius ( B) of the Jacobi matrix B by the
following formula:


33


( ) ( )
e

b
B
=
+
2
1 1
2
1 2 /
5.34

where the matrix B is assumed to have real eigenvalues and ( B) < 1. This formula also holds
for an optimal overrelaxation parameter e
b
associated with an LSOR matrix, as long as ( B) is
now the spectral radius of the line Jacobi matrix B (see Peaceman or Young).

One method to compute ( B), and hence e
b
, involves an iterative procedure, and as such it can
be carried out along with the main iterative procedure of determining p
n+1
. First one defines the
difference vector o
n
by

o
n n n
p p =
+1
5.35

Many convergence criteria may be defined; the one which is used in BOAST requires that

o

< 5.36

where

is the infinity norm of a vector and is equal to the maximum absolute value of the
components of o
n
. The parameter is a user-supplied positive constant, and is usually much less
than one. A value for e is then selected, and its convergence rate is estimated in an attempt to
determine whether a better value of e could in fact be used. The rate at which the solution
converges is estimated by the following:

O
n
n n
=

+

o o
1
5.37

When the values for O
n
are "sufficiently close" to a limiting value O, this value is used as an
approximation for the spectral radius of . In BOAST, "sufficiently close" means:

O O
n n +
<
1
o 5.38

where o is a positive user-supplied constant such that o is much less than one.

A value for ( B) is estimated by the formula:


( ) ( )
e e B O O ~ + 1
1 2 /
5.39

A new value for w is then re-computed using Equation 5.34 and the process continues. It should
be noted that this process will converge properly only if the current value for e is less than the
newly computed value for e. Otherwise, the values for O
n
will oscillate slightly and an accurate
approximation for the spectral radius of e will be difficult to obtain. For an in-depth discussion of
the above topic concerning the optimal choice for e, the reader is referred to Young (1971),
Chapter 6, and in particular, page 210.


Choice of Solution Method



34
The three solution methods described above can be collectively used to solve a wide variety of
problems encountered in numerical reservoir simulation. However, for any one problem, one
solution method might be more suited than the others in efficiently computing an accurate solution.
In this section, we briefly look at the advantages, disadvantages, and recommended uses for each
method.

In order to compare work requirements for the three methods, a representative two-dimensional
grid is chosen, where I > J. The work (which equals the total number of multiplications and
divisions) for each method is given as follows:

W I J
BAND
~
- 3
5.40

W I J J
D4
3 4
2 4 ~
-
5.41

W I N
LSOR iter
~
-
5.42

where N
iter
is the number of iterations per time step. As can be seen from the above formulas,
using the D4 algorithm can result in a two-fold to four-fold decrease in computational work over the
BAND algorithm, especially for large I, J. In practice, this advantage is somewhat lessened by the
additional overhead computations needed to set up the D4 ordering. The LSOR method, on the
other hand, can result in even greater savings if N
iter
is sufficiently small.

Besides the work requirements, we must also consider storage requirements. In using the BAND
or D4 algorithms, a coefficient matrix A is set up, which takes up N
2
storage elements. (It is
possible to store the nonzero elements of A more efficiently, but the programming complexity
would have increased greatly, leading to a lack of program readability, which BOAST was intended
to present.) Therefore, for large grid sizes, the user may be forced to choose the LSOR method,
which does not suffer from storage constraints.

The LSOR method, however, is not without drawbacks. A judicious use of the convergence
parameter TOL and the omega-updating parameter TOL1 is necessary to insure rapid convergence
and a minimum number of iterations. Typical ranges for these parameters are as follows:

0.1 s TOL s 1.0 5.43

0.0001 s TOL1 s 0.01 5.44

Note that these ranges are only intended to give ballpark figures; the user must experiment with
several different values to see which will yield the optimal results for the user's particular problem.

In summary, it is recommended that the BAND algorithm be reserved for one-dimensional or small
two-dimensional problems. For intermediate problems, the D4 algorithm will probably be the most
efficient. Finally, for large three-dimensional problems (or those for which the storage constraint
precludes any of the direct methods), LSOR should be used. These recommendations are only
intended as a general guide; again, a little experimenting with these methods is the best way to
insure that the optimal method is chosen.



35
6. WELL REPRESENTATION


Relatively little information has appeared in the literature about representing wells in numerical
simulators. Some recent discussions are contained in Williamson and Chappelear (1981), and in
Crichlow (1977). These sources form the basis for the well model used in BOAST and should be
referred to for a more detailed discussion of the model and its alternatives.

There are essentially two methods for representing a well in a simulator: by rate constraint, or by
pressure constraint. The reason for this may be seen as follows:

Assume, for example, that we want to represent an oil production well in the simulator. The
appropriate sink term Q
o
in units of oil volume flowing per unit time at standard conditions is

Q q V
o o B osc
= / . 6.1

Employing the productivity index (PI) concept, the oil production rate Q
o
can also be written as

( ) Q PI
B
p p p p
o
o
o
e wf e wf
=
|
\

|
.
| >

; 6.2

where p
e
is the reservoir pressure and p
wf
is the well flowing pressure. The well grid block pressure
p is usually substituted for p
e
:

( ) Q PI
B
p p p p
o
o
o
wf wf
=
|
\

|
.
| >

; . 6.3

The definition of PI implicit in Equation 6.3 contains rock and wellbore properties. Fluid mobility
has been explicitly written. This should be kept in mind when comparing Equation 6.3 with similar
equations from other reference sources.

The variables in Equation 6.3 are Q
o
and p, while the remaining terms are considered parameters.
When one of the variables is specified, the other can be computed. For a rate constrained well, Q
o

is specified and the simulator solves the pressure equation for p. Alternatively, when a well is
pressure constrained, Equation 6.3 is used in place of Q
o
in the pressure equation. The
subsequent well block pressure is then substituted into Equation 6.3 from which Q
o
is found. Either
constraint method is valid; the method used depends on the physical system being modeled. Both
constraint methods are contained in BOAST and are summarized below.


Rate Constraint Representation

Case 1: Oil Production Rate Specified

In this representation, rates may be specified for injectors or producers. If the well of interest is a
producer, its specified rate may be either the oil rate Q
o
or the total fluid rate Q
T
. Assuming the
well may be completed in K layers, as we will throughout, the production rates of layer k for a
specified oil rate are:



36
Oil


( )
| |
( )
| |
Q Q
PI B
PI B
ok o
o o k
o o k
k
K
=
=

1
6.4

Water

Q Q
B
B
wk ok
w w
o o
k
=
|
\

|
.
|

6.5

and Gas

( ) ( ) Q
B
B
Q R Q R Q
gk
g g
o o
k
ok so
k
ok sw
k
wk
=
|
\

|
.
| + +

6.6

Notice that PI's may be specified by layer. This capability lets the BOAST user take into account
permeability contrast.


Case 2: Total Production Rate Specified

When Q
T
is specified, we first compute the phase mobility ratio for all layers:

Oil Mobility Ratio

o


oT
o
o w g
k
k
K
=
+ +
|
\

|
.
|
|
=

1
6.7

Water Mobility Ratio

o


wT
w
o w g
k
k
K
=
+ +
|
\

|
.
|
|
=

1
6.8

and Gas Mobility Ratio

o


gT
g
o w g
k
k
K
=
+ +
|
\

|
.
|
|
=

1
6.9


We now compute the total oil rate

Q Q
o
oT
oT wT gT
T
=
+ +
|
\

|
.
|
|
o
o o o
6.10

Given Equation 6.10, we simply proceed as in Equation 6.4 through 6.6 above.


37
Case 3: Injection Rate Specified

If the well is a water or gas injector, the user must specify the total water or gas injection rates Q
w

or Q
g
, respectively, and well injectivity indexes (WI) for each layer. The injection rate for each
layer is then allocated as follows:

Water Injection Rate


( )
| |
( ) | |
Q Q
WI
WI
wk w
o w g k
o w g k
k
K
=
+ +
+ +
=



1
6.11

Gas Injection Rate


( )
| |
( ) | |
Q Q
WI
WI
gk g
o w g k
o w g k
k
K
=
+ +
+ +
=



1
6.12

It is important to note that allocation of injection fluids is based on total mobilities, and not just
injected fluid mobility. This is necessary for the following reason.

If an injector is placed in a block where the relative permeability to the injection fluid is zero, then
the simulator using injection fluid mobility only would prohibit fluid injection even though a real well
would allow fluid injection. A common example would be water injection into a block containing oil
and irreducible water. To avoid the unrealistic result of no fluid injection, it is assumed the total
mobility of the block should be used. For most cases, the error of this method will only persist for a
few time steps because, in time, the mobile fluid saturation in the block will be dominated by the
injected fluid. Consequently, Equations 6.11 and 6.12 contain total fluid mobilities.


Implicit Pressure Constraint Representation

The source/sink terms in Equation 4.21 may be written as

( )
q V
PID
B
p PWF
p B
psc
p
p
k
n
n


=
|
\

|
.
|
|

(
(

+1
6.13

where the subscript p signifies the appropriate oil. water, or gas phase. If the well is a producer,
PID = PI and p
n+1
> PWF where PWF is the well flowing pressure p
wf
. If the well is an injector, PID
= WI and p
n+1
< PWF.

Substituting Equation 6.13 into Equation 4.21, we can implicitly solve for pressure. The computed
pressure p
n+1
is then replaced in Equation 6.13 to yield rates. This procedure is accomplished in
BOAST simply by redefining the coefficients of the pressure equation such that

E E CPI
ijk
new
ijk
old
= 6.14


38

B B CPI PWF
ijk
new
ijk
old
= - 6.15
where


( ) ( )
CPI PID B B R
B
B B R
B
B
B
k o g so
o
o
w g so
w
w
g
g
g
=
|
\

|
.
| +
|
\

|
.
| +
|
\

|
.
|
|

(
(
5 615 ,

6.16

The 5.615 factor converts barrels per day to cubic feet per day. The new E and B terms are
defined immediately before solving the linear system of pressure equations and after the E and B
matrices defined by Equations 4.44 and 4.45 are first computed.


Explicit Pressure Constraint Representation

The most commonly used method of calculating rates when wells are under pressure constraint is
based on the method described below:

Case 1: Oil Production Wells

We assume that flowing bottomhole pressures (PWF) and well PI's are specified for a pressure
constrained well. The oil rate for layer k is given by


( )
Q PID
B
p PWF
ok
o
o
k
n
n
k
=
|
\

|
.
|

(
(

6.17

where PID = PI and the explicit pressure p
n
is used. If p
n
< PWF, then the well is shut in. When
p
n
> PWF, Q
ok
is calculated and then substituted into Equations 6.5 and 6.6 to find Q
wk
and Q
gk
,
respectively.


Case 2: Injection Wells

The injection rate for a water or gas injection well is computed from


( )
Q PID
B
p PWF
pk
o w g
p
k
n
n
k
=
+ + |
\

|
.
|
|

(
(


6.18


where the subscript p denotes water or gas, and PID = WI. Fluid injection occurs when p
n
< PWF.
If p
n
> PWF, the injection well is shut in. Also, note that total mobility is used for the injection well
rate calculation. The reason for this was discussed under Case 3 of the Rate Constraint
Representation section.

Improvements in the above methods can be made by calculating semi-implicit mobilities (Crichlow
(1977), and Williamson and Chappelear (1981)). This is not presently done in BOAST, because
the explicit mobility calculation now used is sufficient for all cases handled by IMPES. The
principal limitation of the explicit mobility - explicit pressure representation is its inability to properly
model coning. Since the use of BOAST for modeling coning is not recommended, the calculation
of semi-implicit mobilities is not needed.


39


Determining Layer Flow Index (PID)

A value of the layer flow index PID can be estimated from the formula (Peaceman, 1978)

PID
Kh
L
r
S
k
w
k
=
|
\

|
.
| +

0 00708
0121
.
ln
. A
6.19

where AL = Ax for a square well block, and A A A L x y for a rectangular well block. The subscript k
in Equation 6.19 denotes the k
th
layer. The remaining parameters are defined as:

K = air permeability of layer k, md,
h = thickness of layer k, feet,
r
w
= wellbore radius, feet,
and s = dimensionless skin factor.

It is possible to relate Equation 6.19 to measured well PI's. For example, suppose the PI of an oil
producer is measured to be PI
obs.
PI
obs
is the ratio of the rate of oil production Q
obs
for a given
pressure drop P
obs
, thus

PI
Q
P
obs
obs
obs
= 6.20

Assuming uniform, radial Darcy flow, it can be shown that PI
obs
is related to formation and fluid
parameters by (Crichlow, pg. (1977)):

PI
Kh
n
r
r
S
k
B
obs
e
w
ro
o o
=
|
\

|
.
| +

(
(
(
(
(
0 00708
1
0 472
.
.
6.21

where r
e
is the drainage radius of the well. Combining Equations 6.19 and 6.21 gives for a single
layer well

( )
( )
PID PI
r r S
L r S
B
k
obs
e w
w
o o
ro
= =
+
+

(
(
ln .
ln .
0 472
0121A

6.22

In principle, then, the layer flow index could be related to measured values. In practice, however,
the terms r
e
, S, and k
ro
/
o
B
o
are seldom well known, especially for a multiphase flowing well. As a
matter of expediency, therefore, it is often better to use Equation 6.19 to compute an initial
estimate of PID. This value can then be improved by adjusting it until the simulator computed well
rates match the initial observed well rates.


40
7. SPECIAL TOPICS


A number of disparate, special topics which do not come under the purview of the preceding
chapters are discussed below. These topics include a pressure initialization algorithm, a bubble
point tracking algorithm, an automatic time step controlling method, a material balance calculation,
and a brief discussion of numerical dispersion. Each of the topics is important to the understanding
and correct application of BOAST.


Pressure Initialization

It is important when making cross-section or 3-D runs that the pressures in the model are correctly
initialized. If not, phase potential differences due to gravity terms could cause fluid migration even
though no wells are operative. Consequently, a simple pressure initialization algorithm is used in
BOAST. Consider a grid block which may have a gas-oil contact and a water-oil contact as in
Figure 7.1.


Figure 7.1
Grid Block i,j,k, for Pressure Initialization.

y
GOC
x



z WOC


We assume the pressure in the block is dominated by the density of the phase at the block
midpoint and that there are no transition zones between different phases initially. The pressure
and depth at the gas-oil contact are PGOC and GOC, respectively. Similarly, for the water-oil
contact we have PWOC and WOC.

The initial pressure assigned to the grid block in Figure 7.1 is determined by the depth of the node
(midpoint) relative to the respective contact elevations.

Let us define the depth of the block midpoint from datum as EL
ijk
With this definition, the pressure
in the block is given by the following algorithm:

a. If EL
ijk
< GOC then
g
=
gsc
/B
g
7.1
and P
ijk
= PGOC +
g
(EL
ijk
- GOC) / 144 7.2
b. If EL
ijk
> WOC then
w
=
1
B
w
(
wsc
+ R
sw

gsc
) 7.3
and P
ijk
= PWOC +
w
(EL
ijk
- WOC) / 144 7.4
c. If GOC < EL
ijk
s WOC then
o
=
1
B
o
(
osc
+ R
so
-
gsc
) 7.5
and P
ijk
= PWOC +
o
(EL
ijk
- WOC) /144 7.6



41
This algorithm should be reasonable for systems with initial transition zones that are small relative
to the total thickness of the formation. other initialization schemes which can be incorporated in
BOAST, but are not now used, are discussed by Hearn (1971) and Coats, et al (1973).


Bubble Point Tracking

Among the fluid data needed by BOAST are the oil formation volume factor B
o
, the solubility of
gas in oil R
so
, and the oil viscosity
0
. These properties are functions of pressure. Under-saturated
curves are shown as solid lines in Figure 7.2, and saturated curves are depicted by dashed lines
for a bubble point
B
. The user specifies the saturated curves and the slopes of the straight lines
representing the undersaturated curves for the initial bubble point p
B
.

As the reservoir is depleted, the value of each oil property moves along the appropriate curve in
the direction of decreasing pressure. When the pressure goes below bubble point, a free gas
saturation will form. If the free gas saturation exceeds the trapped gas saturation, gas becomes
mobile and can be produced. Production of the gas will change the local total gas/oil ratio and as a
consequence, the local saturation pressure (bubble point) will change. If the reservoir is
repressured by, for example, waterflooding, the initial bubble point will no longer be correct. To
account for this effect, the following procedure has been included as an option in BOAST.

Assume we have free gas in a block containing saturated oil. The problem of interest here is to
estimate the pressure at which the free gas will completely dissolve in the grid block oil. If we
estimate a new gas solubility R
so
new
from the volumes of oil and gas in the block, we can use the
saturated R
so
versus p curves to find a new bubble point P
B
new
. The new solubility is estimated as
the sum of the dissolved gas and the free gas in the block divided by the stock tank oil in the block:
thus


( ) ( )
R
R S V B S V Bg
S V B
so
new
so o p o g p
o p o
=
+
7.7

or


( )
R R S B S B
so
new
so g o o g
= + 7.8

The saturation pressure corresponding to R
so
new
is the new bubble point pressure P
B
new
.
Undersaturated curves for pressures above P
B
new
are parallel to the initial undersaturated curves.



42
Figure 7.2 -- Oil Properties:







































Saturated Undersaturated



Automatic Time Step Control

The BOAST user has the option of specifying the time step size, or else specifying an initial time
step size which the program will either increase or decrease depending on the maximum saturation
and pressure changes occurring within the model. It is often useful to activate the automatic time
step control (ATSC) - the latter of the above choices - because the ATSC can increase the time
step size when changes occur slowly in the model, or decrease the time step size when rapid
changes are being computed.

P PB PMAX
Rso
P PB PMAX
BO
P PB PMAX
O


43
If the ATSC is activated, the program will compute the maximum saturation (DSMC) and pressure
(DPMC) changes which occurred over the previous time step. When the maximum computed
changes are less than the user-specified maximum allowable changes in saturation (DSMAX) and
pressure (DPMAX), the time step size will be multiplied by a user-specified factor (FACT1) which
should equal or exceed unity. On the other hand, if either DSMC exceeds DSMAX or DPMC
exceeds DPMAX, the time step size is multiplied by a user-specified factor (FACT2) which should
be equal to or less than unity.

The new time step size is used in the next time step. It is important to note that BOAST repeats a
time step if DSMC or DPMC exceeds user-specified values DSMAX or DPMAX, respectively. The
time step size is never allowed to be less than a user-specified value (DTMIN), nor larger than a
user-specified value (DTMAX). If FACT2, the factor for decreasing time step size, equals one, the
program will not repeat a time step. Consequently, the user should monitor the material balance
values printed in the Summary Report to be sure no serious numerical problems have occurred
whenever FACT2 = 1.

Calculation stability and maximum time step size are closely related. If the time step size is too
large, there is a good chance BOAST will compute saturations larger than one. The occurrence of
this unphysical result can be minimized if the user specifies DTMAX such that the maximum
saturation change in any one grid block for the maximum time step is from 5 to 10 percent.


Material Balance Calculation

A simple material balance calculation is performed by BOAST as a check on the accuracy of the
finite difference calculations. The volumes-in-place of oil, gas, and water at the beginning of the
time step are compared to their respective volumes-in-place at the end of the time step with
account being taken of injected and produced fluids. The percent change over the time step is
output for each of the three phases in the Summary Report.

If the material balances are a percent or less, the program accuracy may be considered acceptable
for most problems. By contrast, a large material balance indicates the IMPES formulation is
having problems with the input data. This does not mean BOAST cannot handle the reservoir
problem. It does mean the user should adjust calculation parameters such as time step size and
solution tolerances. As a rule-of-thumb, the first thing to do when faced with a large material
balance error is to reduce the time step size.


Numerical Dispersion

BOAST, like most simulators in use today, solves the black oil fluid flow equations by replacing
derivatives by finite difference approximations as was shown in Chapter 4. The truncation error
introduced by the approximation is small for many systems of practical interest and the
approximate solutions of the finite difference equations are accurate enough for engineering
purposes. For some systems, however, the truncation error cannot be ignored. Such systems are
convection-dominated with sharp displacement fronts. Examples include miscible floods and
immiscible floods in which the ratio of capillary to viscous forces is small.

A dominant characteristic of numerical truncation error is the smearing of otherwise sharp
saturation fronts. This is readily demonstrated when a simulator is used to model the Buckley-
Leverett problem. Illustrative results are depicted in Figure 7.3. The truncation error makes the
saturation front appear more dispersed than it should, hence the truncation error is known as
numerical dispersion or numerical diffusion.

Lantz (1971) showed that the total dispersion D tot in a one dimensional simulator run is the sum of
physical dispersion and numerical dispersion:


44

D
tot
= D
phy
+ D
num
.

7.9

An extension of Lantz's method to three dimensions by Fanchi (1980) demonstrated the validity of
Equation 7.9 for multidimensions, and also showed multidimensional numerical dispersion (MND)
can cause rotation of the principal flow axes for a given system. Fanchi's paper (1980) contains a
method for estimating the magnitude of the rotation effect. Computation of the magnitude of the
front smearing and rotation effects can help the user of a finite difference simulator evaluate the
validity of the simulator. The reader is referred to Appendix A for further details and examples.


Figure 7.3.
Smearing of saturation fronts by numerical dispersion.






















INJECTOR DISTANCE BETWEEN WELLS PRODUCER
1.0
FRACTION OF
DISPLACING FLUID
BUCKLEY-LEVERETT
SIMULATOR
SMEARING DUE TO NUMERICAL DISPERSION
0.0


45
8. RECOMMENDED PROGRAM USES


A numerical reservoir simulation program, such as BOAST, is an engineering tool which, when
properly applied, can provide an estimation of reservoir performance under a variety of user
specified conditions and constraints. The key concept in the foregoing definition is that the
reservoir simulator is an engineering tool and must be applied with a great deal of engineering
judgment. Too many people view the simulation program as a "black box" which will provide the
answer, i.e. exact production forecasts and answers to operating problems. Reservoir simulators
do not provide answers; they provide estimates of performance for user defined reservoir models.
These performance estimates can then be used along with economic evaluations to allow the
engineer to make the required operating or field development decisions.

Many users of simulation programs feel that it is necessary to rigorously model their reservoir,
often using a fieldwide, three-dimensional reservoir model, in order to have a respectable and valid
simulation model study. This attitude often results in a great deal of wasted time and money
through overkill. In many cases, a simple cross-sectional or two-dimensional areal simulation
model will be adequate to allow the engineer to solve the operating problem or reach the decision
he faces. Several excellent papers have been published (Coats, 1969; Odeh, 1969; Staggs and
Herbeck, 1971) which discuss the approach to be taken when considering using reservoir
simulation to solve a particular problem. Those users who have not had much experience with
reservoir simulation would be well advised to read these references before beginning a simulation
model study. The general rule-of-thumb expressed in these references is that a simulation study
should use the simplest model and coarsest reservoir description which produce a sufficient
performance estimate to allow the engineer to make the necessary operating or field development
decisions.

When applying a numerical reservoir simulator to solve a particular problem, a number of
decisions must be made to insure that the correct tool is being applied and that the reservoir model
is appropriate to the problem at hand. The first requirement is a clear and concise statement of the
problem to be solved and for the objectives or questions to be addressed by the study.

The choice of a simulator will depend on the specific problem. Note that here and throughout the
discussion the term "simulator" refers to a computer program independent of any specific
application, and "model" refers to the simulator input data (model grid system, reservoir
description, etc.) representing a specific physical system. Simulators can be categorized by type
(e.g. black oil, dry gas, compositional, thermal, chemical flood, etc.), by formulation (e.g. IMPES,
sequential, implicit, variational, finite-difference, five-point, nine-point, etc.), and by solution
technique (e.g. direct solution, SOR, SIP, ADIP, etc.). Coats (1982) presents a readable overview
of the various simulator types, formulations, and solution techniques.

The BOAST program is a three-dimensional, three-phase black oil, finite-difference, IMPES
simulator incorporating both direct solution and LSOR solution techniques.

The BOAST three-phase black oil simulator assumes the reservoir fluids can be described by three
fluid phases (oil, gas, and water) of constant composition whose physical properties are single-
valued functions of pressure only. These reservoir fluid approximations are found to be acceptable
for a large percentage of the world's oil and gas reservoirs. Thus, black oil simulators have a wide
range of application and are the most commonly used reservoir simulation programs.

The BOAST program simulates isothermal, darcy flow in three dimensions. A conventional finite-
difference, implicit pressure-explicit saturation (IMPES) formulation is used. The IMPES formu-
lation is discussed in more detail in Chapter 4 of Part A of this volume.

As is true for any of the formulations, IMPES has both advantages and limitations which must be
recognized to properly apply the BOAST program. The IMPES formulation is straightforward,


46
requires less arithmetic per time step than other formulations, and has much smaller storage
requirements than a fully implicit formulation. This allows simulation of larger problems on small
computers.

The major disadvantage of the IMPES formulation is that the solution is not as stable for some
problems as simultaneous solution or strongly implicit formulations due to the explicit treatment of
saturations. This will be a major concern only in cases where small grid cells and/or very high flux
rates combine to produce rapid saturation changes. In such cases, the time step size may have to
be reduced severely in order to maintain stability. This can cause computing time requirements to
become very large. An example of a class of problems for which these conditions become so
limiting as to render the IMPES formulation unsuitable is near-wellbore coning problems. For this
reason, the BOAST program is not recommended for use in simulating single-well coning
phenomena.

While the BOAST simulator does have some limitations in its scope of applications, there are a
large number of commonly encountered black oil reservoir simulation problems which can be
handled very efficiently and on relatively small computers by the BOAST program. BOAST can
simulate oil and/or gas recovery by fluid expansion, displacement, gravity drainage, and capillary
imbibition mechanisms.

Some of the more common field production problems for which BOAST is particularly well suited
include: primary depletion studies, pressure maintenance by water and/or gas injection, and
secondary recovery waterflood operations.


47
9. COMMENTS ON CONDUCTING A SIMULATION MODEL STUDY


This chapter contains a brief outline of the major steps involved in conducting a reservoir
simulation model study and presents some hints, suggestions, and ideas to consider. The major
steps in the conduct of a simulation study which will be discussed are:

1 obtain a clear statement of the problem and objectives for the study,
2 select the appropriate simulation tool (program) for the problem,
3 examine all available geologic and engineering data to develop the best possible reservoir
description,
4 choose a grid system to model the reservoir,
5 locate the necessary reservoir and production data and reduce it to the form required for
input into the model,
6 obtain estimates of oil-in-place from volumetric or material balance calculations as
appropriate,
7 conduct parameter sensitivity studies and make history matching runs as needed to obtain
a satisfactory performance match, and
8 make prediction runs to estimate production performance under alternative operating plans
as needed.

An example of a simulation study by Harpole and Hearn (1982) is presented in Appendix B. This
study contains all of the steps discussed here.

The outline above is very general and may need to be changed and/or expanded to fit the specific
problem being investigated. Points 1 and 2 above are discussed in Chapter 8 of this volume.
Before beginning an expensive numerical simulation study, the following criteria should be met:

a. An economically important problem, such as determining the optimum reservoir pro-
duction strategy, exists.
b. All required input data are available.
c. The solution to the economically important problem cannot be satisfactorily solved using
simpler and less expensive tools such as a material balance program.


Reservoir Description and Grid Selection

The first step in the study is to develop the best possible reservoir description using all available
geologic and engineering data. An accurate reservoir description is essential to the success of the
simulation study (Harris, 1975). Previous geologic and engineering reports often provide an
excellent starting point for this. The degree of detail or complexity of the reservoir description
required will be determined by the scope of the problem and the grid system chosen for the model.
However, a good understanding of the reservoir and the geologic controls on production
performance is needed regardless of the model grid chosen or the complexity of the simulation
approach taken.

The development of the reservoir description and understanding of the producing characteristics of
the reservoir are not things that are done only once at the start of the study, but rather they are part
of an ongoing and continuing process throughout the study. The description of the reservoir must
remain flexible and evolve as the study proceeds or new data become available. However, having
a good reservoir description at the outset will make the study easier and greatly improve the
chances for success.

One of the most important steps in construction of the reservoir model is the selection of the grid
system to be used. This decision is fundamental in that it will determine the complexity of the
simulation approach and the amount and format of the data input required.


48

Grid selection includes determining grid block size and grid orientation. An important rule of
reservoir modeling is to choose the coarsest grid that adequately describes the known features of
the reservoir. This will keep computer costs to a minimum without adversely affecting the
reliability of the simulation study.

Computing time and cost depend on the procedure used to solve the finite difference equations, on
the number of grid blocks used, and on the number of spatial dimensions. Since computer cost is
proportional to the number of arithmetic operations per time step, an increase in the number of grid
blocks or number of dimensions can result in a large increase in costs. Sometimes it is worthwhile
to use a large number of grid blocks or a three-dimensional grid for large or complex problems.
Usually, however, attempts to increase the number of grid blocks or dimensions are motivated by a
desire to increase accuracy. Although justifiable in some cases, the temptation to increase
accuracy should be tempered with the knowledge that the input data are occasionally unreliable
and are often representative of only a small fraction of the actual reservoir.

In some cases, the storage capacity of the computer will be a limiting constraint. Some
approaches which can be used to reduce the number of grids and storage requirements include
cross-sectional simulations, 2-D areal simulations, simulations of a small symmetry element or a
part of a pattern (e.g. five-spot or quarter five-spot), simulation of a "typical" portion of the field
using average reservoir properties, and use of pseudo functions to reduce the number of grid cells
(Hearn, 1971; Kyte and Berry, 1975; Coats, 1973).

Other areas of concern when choosing a model grid include numerical dispersion, grid orientation,
and the required areal and vertical resolution of the pressure or saturation distributions. More
information about numerical dispersion and grid orientation can be found in Lantz (1971), Fanchi
(1980), or their references. Desired resolution depends, on the other hand, on the demands of the
study and must be decided by the user.


Data Collection and Reduction

A necessary phase of every simulation study is the gathering of data to be used in the simulator.
Values for the physical quantities must be specified before a simulation can begin. The particular
data needed will depend on the nature and complexity of the study.

The required data can be classified into three groups: reservoir rock properties, fluid properties,
and field performance history. Some reservoir rock and fluid properties and their common sources
are presented in Table 9.1.. The lack of detailed rock data anywhere in the reservoir except at well
sites requires that the data be inferred using the best available geologic description and the
following procedure:

a. Collect all data pertaining to the relevant physical quantity. Plot these data by location on
a plan map of the region being modeled.
b. Contour the data points to obtain a spatial distribution consistent with good engineering
judgment and known geological trends in the region.
c. Digitize the contoured data to obtain the required rock data values at each node of the grid
being employed. This step is performed after the grid has been selected.


49
TABLE 9.1
SOURCES OF COMMON RESERVOIR DATA REQUIRED FOR SIMULATION STUDIES

Property Sources

Permeability Pressure Transient Testing, Core Analyses,
Correlations

Porosity Core Analyses, Well Log Data

Structure, Thickness Geologic Maps, Core Analyses, Well Log Data

Relative Permeability and Capillary Pressure Laboratory Core Flow Tests

Saturations Well Log Data, Core Analyses, Pressure Cores, Log-
Inject-Log, Single-Well Tracer Tests

PVT Data Laboratory Analyses of Reservoir Fluid
(Formation Volume Factors, Samples, Correlations
Gas Solubility, Viscosity, Density)


Reservoir fluid properties (PVT data) include fluid viscosities, densities, formation volume factors,
gas solubilities, etc. These data are usually obtained by laboratory analyses applied to fluid
samples taken from the reservoir. Often the PVT data are not known over as wide a range of
pressures as would be desirable for a computer run. When this occurs, the fluid data base can be
broadened by complementing the laboratory data with correlations.

The combination of reservoir rock and fluid properties comprises the initialization data for the
model, i.e., the data which must be coded before the simulation of the field performance can begin.
The remaining data that must be coded are called recurrent data and are taken from the field
performance history.

Included in the field performance history are the production and injection histories, time-dependent
pressure distributions, and well indexes (PI). The production and injection histories include water-
oil ratios; gas-oil ratios; oil, gas, and water production and injection data; and fluid breakthrough
times. The simulator calculates production and pressure performance based on the input data
provided. Simulator performance calculations are then compared to the observed production
performance.

Obtaining data in the field is often difficult and time consuming. Consequently, field
measurements are made only when necessary. Furthermore, the analysis of the measured results
may not be correct due to the complexity of the measuring process. For these reasons and others,
it is not uncommon to find that needed information is inaccurate, incomplete, or missing altogether.
By employing good engineering judgment and experience, it is possible to determine which data
are valuable and which should be used with caution. The unreliable data are usually the first to be
adjusted during the history match, whereas data deemed accurate should be changed only as a
last resort, if at all.


Comments on Relative Permeability and Fluid PVT Data

Some of the most critical data in terms of their effect on simulator performance are the relative
permeability curves. Unfortunately, relative permeability curves are often among the missing or
poorer quality data. Relative permeability data are affected significantly by alterations in wettability
conditions in the core. Ideally, the relative permeability data should be measured in the laboratory
under the same conditions of wettability that exist in the reservoir. One method of approaching this


50
ideal is to use preserved, "native-state" core samples. These are cores which are drilled using
crude oil or some special coring fluid designed to minimize wettability alterations. The cores are
then sealed at the wellsite to minimize exposure to oxygen or drying and then preserved until ready
for flow testing in the laboratory. However, this process is expensive and most relative
permeability data are obtained on restored-state cores in the laboratory.

Laboratory reservoir fluid analyses generally provide data from both a differential liberation
experiment and a flash experiment approximating field separator conditions. The differential and
flash liberation data can be significantly different for some oils. The actual reservoir production
process is some combination of the differential and flash processes. The assumption normally
made in preparing PVT data for use in a black oil simulator is that the differential liberation data
represent the process occurring in the reservoir and the flash data represent production to stock-
tank conditions. Thus, for use in the simulator, the differential liberation data should be corrected
to flash values at field separation conditions. This procedure is described in several standard
reservoir engineering texts including Amyx, Bass, and Whiting (1960).


Sensitivity Studies and Oil-in-Place Calculations

Accurate simulation results are dependent on having high quality data on a large number of
reservoir parameters. Much of this data may be of questionable accuracy or even missing for any
given study. Also, it is generally not possible to predict "a priori" which parameters will control
model performance.

One- technique that is frequently used to help guide the data gathering effort and to allocate the
data collection time to the critical parameters, is to use the simulation model to do sensitivity
analyses on selected parameters. By varying each of several selected parameters over a
reasonable range of uncertainty and observing the effect on simulator performance, the critical
parameters controlling performance can be identified. Further efforts to gather better data should
be concentrated on these critical parameters.

Some estimate of oil-in-place, either by volumetric or material balance calculations, should be
made before beginning any field-wide simulation study. This independent oil-in-place calculation
provides a check on the simulator input data and reservoir description.

Also, in a larger study, the material balance calculation will provide a check on the consistency of
the pressure, production, and fluid PVT data. If these data cannot give a reasonably consistent
material balance calculation, then proceeding to an expensive simulation study probably is not
justified until the inconsistency in the data is corrected or additional data are obtained.


History Matching

The objective of the history match is to reproduce with the simulator the actual reservoir
performance. This is achieved by manipulating two fundamental processes that are controllable
during history matching: the quantity and distribution of fluid within the system; and the movement
of fluid within the system. These processes are manipulated by adjusting input data within
reasonable limits of conditions existing in the field until a minimal difference remains between the
historical data and the simulator calculations at the same point in time.

Thus, history matching is the process of determining the values of poorly known or unknown
physical parameters which are needed as input to the mathematical reservoir model. Much, if not
most, of the physically measurable information used in the simulator is based on incomplete or
inaccurate field measurements. The reliability of this information and its consistency is improved
by using the simulator to model the performance history of the reservoir. Values of the physical
parameters are adjusted within reasonable limits determined by geological and engineering


51
judgment until the simulator calculated results match the observed performance data. Geological
input can be extremely valuable in guiding this history matching effort. When an acceptable
history match is found, the engineer can proceed to the prediction stage of the study.

As can be noted from the above discussion, history matching is a qualitative procedure. The
reliability of a history match depends, in large part, on the knowledge and experience of the
individual performing the simulation. A common and legitimate criticism of history matching
results is that the set of physical parameters resulting from the history matching work is not
necessarily unique. It is possible to find another set of parameters that provide as good a match to
the reservoir history as-the accepted set, yet the two sets of data may yield substantially different
performance predictions. Consequently, it is worthwhile to update history matches periodically
using recently obtained data in order to refine the accepted set of parameters as well as validate or
correct the projected reservoir behavior. Obtaining an accurate reservoir description at the start of
the study will minimize the amount of parameter adjustment required during history matching.

Perhaps the most pervasive source of error in the history matching process is the lack of reliable
field data. There are many reasons why reported field data may be unreliable. Furthermore, the
amount of data is usually limited. Thus, the history match may characterize the reported data, but
the reported data may not characterize the reservoir.

Another source of error arises when the derivatives in the mathematical formulation of the model
are replaced by finite differences. This error is the truncation error called numerical dispersion. It
can cause a correct set of parameters to yield incorrect results, such as predicting premature water
breakthrough. The non-uniqueness of parameter sets, the inaccuracy or incompleteness of field
data, and the presence of truncation errors are the most typical problems encountered during the
history matching process. The engineer should be aware that these problems exist and can cause
inexact performance projections. Because of the uniqueness problems, results from any reservoir
simulation should be judged critically as to their "reasonableness" in the light of experience with the
type of reservoir, the area, and the production systems being used in the field.


Prediction Runs

After a satisfactory history match of field performance is obtained with the simulator, prediction
runs can be made. A number of alternative field operations or development scenarios can be
evaluated and compared in a short period of time to optimize future reservoir management
planning for the field. Because there is no field history to use for comparison with the simulation
results for a prediction run, it is even more important that critical engineering judgment and
experience be applied to the results using the test of "reasonableness".

Less accuracy in the simulation predictions should be expected when the prediction runs are
simulating operations under a different flow system than that of the history matching work. A
common example of this is history matching primary production performance (dominantly a gas/oil
flow system) and then making predictions of performance under waterflood operation (dominantly a
water/oil flow-system). The reason for this is that some uncertain reservoir parameters may have
little effect on performance under flow in a gas/oil system but may be of critical importance in a
water/oil system. This same caution applies in the case of simulator predictions of enhanced oil
recovery process performance. These potential problems can be minimized by obtaining the best
possible reservoir description prior to the simulation work.
REFERENCES


Amyx, J. W., D. M. Bass, and R. L. Whiting (1960); Petroleum Reservoir Engineering, McGraw-
Hill, N.Y.



52
Coats, K. H. (November 1969); "Use and Misuse of Reservoir Simulation Models", J. Pet. Tech.,
pp. 1391-1398.

Coats, K. H. (1982); "Reservoir Simulation: State-of-the-Art", paper presented at the International
Petroleum Exhibition and Technical Symposium of SPE, Beijing, China, 18-26, March, 1982.

Coats, K. H., J. R. Dempsey, and J. H. Henderson (1973); "The Use of Vertical Equilibrium in Two-
Dimensional Simulation of Three-Dimensional Reservoir Performance", SPE Reprint Series
No. 11, Numerical Simulation.

Craft, B. C. and M. F. Hawkins (1959); Applied Petroleum Reservoir Engineering, Prentice-Hall,
Englewood Cliffs, N.J.

Crichlow, H. B. (1977); Modern Reservoir Engineering - A Simulation Approach, Prentice-Hall,
Englewood Cliffs, N.J.

Fanchi, J. R. (June 1980); "Multidimensional Numerical Dispersion", SPE paper No. 9018, Soc.
Pet. Eng. Headquarters, Dallas, TX.

Fanchi, J. R. and K. J. Harpole (1982); "BOAST: A Three-Dimensional, Three-Phase Black Oil
Applied Simulation Tool, Volume II: BOAST User's Manual", U.S. DOE, BETC.

Harpole, K. J. (November 1980); "Improved Reservoir Characterization - A Key to Future Reservoir
Management for the West Seminole San Andres Unit", J. Pet. Tech., pp. 2009-2019.

Harpole, K. J. and C. L. Hearn (1982); "The Role of Numerical Simulation in Reservoir
Management of a West Texas Carbonate Reservoir", SPE paper No. 10022, presented at the
International Petroleum Exhibition and Technical Symposium of SPE, Beijing, China, 18-26,
March, 1982.

Harris, D. G. (May 1975); "The Role of Geology in Reservoir Simulation Studies", J. Pet. Tech.,
pp. 625-632.

Hearn, C. L. (July 1971); "Simulation of Stratified Waterflooding by Pseudo Relative Permeability
Curves", J. Pet. Tech., pp. 805-813.

Kreyszig, E. (1972); Advanced Engineering Mathematics, J. Wiley and Sons, N.Y.

Kyte, J. R. and D. W. Berry (August 1975); "New Pseudo Functions to Control Numerical
Dispersion", Soc. Pet. Eng. J., pp. 269-276.

Lantz, R. B. (September 1971); "Quantitative Evaluation of Numerical Diffusion", Soc. Pet. Eng. J.
11, pp. 315-320.

Odeh, A. S. (November 1969); "Reservoir Simulation - What is it?", J.. Pet. Tech., pp. 1383-1388.

Peaceman, D. W. (1977); Fundamentals of Numerical Reservoir Simulation, Elsevier N.Y.

Peaceman, D. W. (1978); "Interpretation of Well-Block Pressures in Numerical Reservoir
Simulation", Soc. Pet. Eng. J., pp. 183-194.

Price, H. S. and K. H. Coats (1973); "Direct Methods In Reservoir Simulation", SPE Reprint Series
No. 11, Numerical Simulation.

Rosenberg, Dale U. von (1977); Methods for the Numerical Solution of Partial Differential
Equations, G. L. Farrar and Assoc., Tulsa.


53

Sawyer, W. K. and J. C. Mercer (August 1978); "Applied Simulation Techniques for Energy
Recovery", DOE report METC/RI-78/9, Morgantown, W. Va.

Staggs, H. M. and E. F. Herbeck (December 1971); "Reservoir Simulation Models - An Engineering
Overview", J. Pet. Tech., pp. 1428-1436.

Williamson, A. E. and J. E. Chappelear (June 1981); "Representing Wells in Numerical Reservoir
Simulation: Part 1 - Theory", Soc. of Pet. Eng. J., pp. 323-338; and "Part 2 - Implementation",
Soc. of Pet. Eng. J., pp. 339-344.

Young, D. M. (1971); Iterative Solution of Large Linear Systems, Academic Press, N.Y.



54
APPENDIX A




SPE 9018










MULTIDIMENSIONAL NUMERICAL DISPERSION








John R. Fanchi












June 1980






55
ABSTRACT

Numerical dispersion can cause a smearing of otherwise sharp saturation fronts. The usual
methods of estimating the magnitude of the smearing effect in one-dimension are shown to apply
in two and three dimensions as well. Besides the smearing effect, numerical dispersion affects the
finite-difference solution of a multidimensional flow problem by rotating the principal flow axes. A
method for determining the importance of the rotation effect is discussed. Numerical illustrations
are appended.


ACKNOWLEDGMENT

I would like to thank the management of Cities Service Company for permission to publish this
paper.


INTRODUCTION

Most reservoir simulation models available today obtain solutions to fluid flow equations--usually
nonlinear partial differential equations--by replacing derivatives with finite-difference
approximations.
1-2
The use of these approximations, which are derived by manipulating Taylor's
series, introduces an error known as truncation error. For many problems the error is small and the
approximate solutions of the subsequent finite-difference equations are sufficiently accurate for
engineering purposes.

However, truncation error can cause significant solution inaccuracies for certain types of problems.
Examples of these problems
1
include miscible floods and immiscible floods in which viscous forces
are much larger than capillary forces. The most common example of the latter is the Buckley-
Leverett problem with capillary pressure set to zero.

A relatively simple equation which exhibits the effect of truncation error is the one-dimensional
convection-dispersion equation:

|
c
c
c
c
c
c
S
t
D
S
x
v
S
x
=
2
2
1

where the constant coefficients |, D, and v are porosity, the dispersion coefficient, and velocity,
respectively. The solution, S, of Equation 1 may be saturation or concentration. The finite-
difference solution of Equation 1 introduces truncation error which can smear an otherwise sharp
saturation front as if additional physical dispersion was present. This smearing, which is caused by
truncating Taylor's series, is often called numerical dispersion or numerical diffusion.

Truncation error studies
3-8
often begin with a one-dimensional convection-dispersion equation, such
as Equation 1, after tile space and time coordinates (x and t) are redefined to remove two of the
three constant coefficients (|, D and v). It appears that the effects of numerical dispersion in more
than one-dimension have not been studied analytically, though attempts to minimize numerical
dispersion in two dimensions--particularly the grid orientation effect--based on numerical analyses
do exist.
6-10
The purpose of this work is to analytically examine the effects of numerical dispersion
on the multidimensional convection-dispersion equation in order to obtain a better understanding of
the role numerical dispersion plays in more than one dimension.

Analytical expressions for multidimensional numerical dispersion (MND) coefficients will be derived
by performing a truncation error analysis on the three-dimensional convection-dispersion equation.
This analysis will be analogous to that used by Lantz in one dimension.
3
The significance of the
results will then be examined. It will be concluded that MND not only changes the magnitude of


56
the elements of the dispersion tensor, but also rotates the principal flow axes. Expressions for the
angles of rotation associated with two-dimensional problems will be presented. It will be shown
that reducing time step size can eliminate the rotation effect.


TRUNCATION ERROR ANALYSIS

The three-dimensional convection-dispersion equation has the form

|
c
c
c
c c
c
c
S
t
D
S
x x
v
S
x
ij
phy
i j
i
i
j i
=

(
(
= =

2
1
3
1
3
2

where {X
i
: i = 1, 2, 3} denote Cartesian coordinates and D
ij
phy
is the ij
th
element of the
dispersion tensor. A discussion of the physical significance of Equation 2 in terms of hydrodynamic
dispersion
11
is presented in Appendix A. It is usually assumed that the principal values of the
dispersion tensor are known and that the coordinate system is aligned along the orthogonal
principal axes. This assumption is implicit, for example, whenever cross-derivative terms (such as
D S x x for i j
ij
phy
i j
c c c
2
= ) are not included in fluid flow equations. Thus almost all reservoir
simulators assume the principal axes have been chosen. Given this assumption, Equation (2)
simplifies to

|
c
c
c
c
c
c
c
c
c
c
c
c
c
c
S
t
D
S
x
D
S
y
D
S
z
v
S
x
v
S
y
v
S
z
x y z x y z
= + +
2
2
2
2
2
2
3

where (x, y, z) have replaced (x
1
, x
2
, x
3
) and the non-zero elements of the dispersion tensor are


D Dx
D Dy
D Dz
phy
phy
phy
11
22
33
=
=
= .
3a

The question of interest here is: what is the effect of multidimensional numerical dispersion on the
solution of the convection-dispersion equation when it is solved using finite-differences? The
answer to this question is the subject of the present work. A detailed analysis of the simpler
convection-dispersion equation, Equation 3, will be presented. Results for the more general
equation, Equation 2, are summarized.


Explicit Backward-Difference Representation

The explicit backward-difference representation of Equation 3 is obtained by replacing the time
derivative with

( ) ( ) | |
c
c
S
t
S x y z t t S x y z t
t
= + , , , , , , A
A
1
4

and the first-order spatial derivatives with

( ) ( ) | |
c
c
S
x
S x y z t S x x y z t
x
~ , , , , , , A
A
1
5


57

Expressions analogous to Equation 5 are written for cs/cy and cs/cz. All of these approximations
are obtained by manipulating Taylor's series. The second-order spatial derivatives are replaced by
( ) ( ) ( ) | |
c
c
2
2
2
2
1
2
S
x
S
x
S x x y z t S x x y z t S x y z t
x
= + + A
A
A A , , , , , , , , , , 6

and similarly for A A
y z
S and S
2 2
. The finite-difference representation of Equation 3 in terms of the
above approximations is


( ) ( ) | |
( ) ( ) | |
( ) ( ) | |
( ) ( ) | |
|
A
A A A A
A
A
A
A
A
A
t
S x y z t t S x y z t D S D S D S
v
x
S x y z t S x x y z t
v
y
S x y z t S x y y z t
v
z
S x y z t S x y z z t
x x y y z z
x
y
z
, , , , , ,
, , , , , ,
, , , , , ,
, , , , , , .
+ = + +


2 2 2
7

What is the truncation error that results when Equation 7 is solved instead of Equation 3?

Recall that the truncation error c
T
of a finite difference approximation is defined as

c
T
= L
D
S - LS 8

where L
D
S represents the difference form of the equation (Equation 7) and LS denotes the
differential form (Equation 3). Before substituting Equations 3 and 7 into Equation 8, it is
customary to re-express the finite-difference terms as Taylor's series expansions. In this case it is
sufficient to keep terms only up to second order in the increments. Thus the terms
(
( )
A A A
x y z
S S S) and S x S y S z
2 2 2 2 2 2 2 2 2
, , , , c c c c c c are equivalent to this order of approximation.
The remaining finite-difference terms are given by

( ) ( ) S x y z t t S x y z t t
S
t
t S
t
, , , , , , + = + A A
A c
c
c
c
2 2
2
2
9

( ) ( ) S x y z t S x x y z t x
S
x
x S
x
, , , , , , = A A
A c
c
c
c
2 2
2
2
10

with similar expressions for [S(x, y, z, t) - S(x, y - Ay, z, t)] and [S(x, y, z, t) - S (x, y, z - Az, t)].
The difference form L
D
S becomes


L S
S
t
t S
t
D
S
x
D
S
y
D
S
z
v
S
x
x S
x
v
S
y
y S
y
v
S
z
z S
z
D x y z
x y z
= +

(
(
+ +

(
(

(
(

(
(

|
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
A
A A A
2
2 2 2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
11

while the differential form LS is



58
LS
S
t
D
S
x
D
S
y
D
S
z
v
S
x
v
S
y
v
S
z
x y z x y z
= + +

|
c
c
c
c
c
c
c
c
c
c
c
c
c
c
2
2
2
2
2
2
12

The truncation error c
T
is the difference between Equations 11 and 12, hence

c |
c
c
c
c
c
c
c
c
T x y z
t S
t
v
x S
x
v
y S
y
v
z S
z
= + +

A A A A
2 2 2 2
2
2
2
2
2
2
2
2
13

This result can be converted into a more revealing form by rewriting the c c
2 2
S t

term as follows.
First differentiate Equation 3 with respect to t:

|
c
c
c
c c
c
c c
c
c c
c
c c
c
c c
c
c c
2
2
3
2
3
2
3
2
2 2 2
S
t
D
S
x t
D
S
y t
D
S
z t
v
S
x t
v
S
y t
v
S
z t
x y z x y z
= + + 14

Next assume that the third-order derivatives such as c c c
3 2
S x t are negligible. This leaves only
the second-order derivative terms. Expressions for these derivatives are obtained by
differentiating Equation 3 with respect to x, y, and z separately:

|
c
c c
c
c
c
c c
c
c c
c
c
c
c c
c
c c
2 3
3
3
2
3
2
2
2
2 2
S
x t
D
S
x
D
S
y x
D
S
z x
v
S
x
v
S
x y
v
S
z x
x y z x y z
= + + 15

and similarly for y and z. Again the third order derivatives like c c
3 3
S x

are neglected. Using the
subsequent relations in Equation 13 yields the following expression for the truncation error:


c
|
c
c
c
c c
c
c c
c
c c
c
c
c
c c
c
c c
c
c c
c
c
c
c
c
c
c
c
T x x y z y x y z
z x y z x y z
t
v v
S
x
v
S
x y
v
S
x z
v v
S
x y
v
S
y
v
S
y z
v v
S
x z
v
S
x z
v
S
z
v
x S
x
v
y S
y
v
z S
z
=

(
(

(
(

(
(

+ +


`
A
A A A
2
2 2 2
2
2
2 2 2 2
2
2
2 2 2
2
2
2
2
2
2
2

16

Equation 16 is simplified by rearranging terms to yield


c
|
c
c
|
c
c
|
c
c
|
c
c c
c
c c
c
c c
T
x
x
y
y
z
z
x y x y x y
v
x v
t S
x
v
y v
t S
y
v
z v
t S
z
t
v v
S
x y
v v
S
x z
v v
S
x z
=

(

`

+ + +

2 2 2
2
2 2 2
2
2
2
2
2
2
2 2 2
A
A
A
A
A
A
A
17

The effort expended in obtaining Equation 17 is justified by first noting that Equation 8 can be
written as

L
D
S = LS + c
T
18

In other words, the equation solved numerically (L
D
S) is equivalent to the original equation (LS)
plus the truncation error (c
T
). The form of c
T
in Equation 17 was derived so that the combination LS
+ c
T
could be expressed in the following relatively simple form:


59

L
D
S = LS + c
T



{ = +
|
\

|
.
|

(
(
+ +
|
\

|
.
|

(
(
+ +
|
\

|
.
|

(
(

+ +

|
c
c |
c
c
|
c
c
|
c
c
c
c
c
c
c
c
c
c c
c
c c
c
c c
S
t
v
D
v
x v
t S
x
v
D
v
y v
t S
y
v
D
v
z v
t S
z
v
S
x
v
S
y
v
S
z
v v
S
x y
v v
S
x z
v v
S
y z
x
x
x
x y
y
y
y
z
z
z
z x y z
x y x z y z
1
2
1
2
1
2
2
2
2
2
2
2
2 2 2
A
A
A
A
A
A
(

(
(

`

At
|
19

The solution of L
D
S = 0 is the desired solution; thus the differential equation corresponding to the
numerical solution of L
D
S = 0 is


|
c
c |
c
c
|
c
c
|
c
c
c
c
c
c
c
c
c
c c
c
c c
c
c c
S
t
v
D
v
x v
t S
x
v
D
v
y v
t S
y
v
D
v
z v
t S
z
v
S
x
v
S
y
v
S
z
v v
S
x y
v v
S
x z
v v
S
x z
x
x
x
x y
y
y
y
z
z
z
z x y z
x y x z x z
= +
|
\

|
.
|

(
(
+ +
|
\

|
.
|

(
(
+ +
|
\

|
.
|

(
(

+ +

1
2
1
2
1
2
2
2
2
2
2
2
2 2 2
A
A
A
A
A
A
(

(
(
At
|
20

A check of the validity of Equation 20 is to reduce it to the simpler one-dimensional form. This is
accomplished by setting

v
z
= D
z
= 0 21a

and
v
y
= D
y
= 0 21b

in Equation (20). The result is

|
c
c |
c
c
c
c
S
t
v
D
v
x v
t S
x
v
S
x
x
x
x
x x
= +
|
\

|
.
|

(
(

1
2
2
2
A
A
22

which corresponds to Lantzs result
3
.

The above truncation-error analysis shows that by solving the difference equation L
D
S = 0, the
resulting solution corresponds to Equation 20, not to the original equation (Equation 3). The
difference is due to c
T
and appears as an alteration of the dispersion tensor. This is clearly shown
when the above analysis is performed on the more general Equation 2. The result is

|
c
c
c
c c
c
c
S
t
D
S
x x
v
S
x
ij
i j
j
i
i
i
=

(
(

)
= =

2
1
3
1
3
23

where the total dispersion {D
ij
} is given by


60
D D D
ij ij
phy
ij
num
= + 24
The quantity
{ }
D
ij
num
is known as numerical dispersion since it is due to truncation error, and its
values for different finite-difference representations are summarized in Table 1.


TABLE 1 -- SUMMARY OF MND RESULTS

Difference Technique Numerical Dispersion Tensor (D
NUM
)
Space Time ij
th
Element
Backward - Difference Explicit
v
x v
t
i j
v v
t
i j
i i
i j
1
1
2
2
A
A
A

|
\

|
.
| =
=
|
|
;
;


Centered - Difference Explicit

1
2
v v
t
all i j
i j
A
|
; ,

Backward - Difference Implicit
v
x v
t
i j
v v
t
i j
i i
i j
1
1
2
2
A
A
A
+
|
\

|
.
| =
=
|
|
;
;


Centered - Difference Implicit
1
2
v v
t
all i j
i j
A
|
; ,


The form of Equation 24, i.e. physical and numerical dispersion are additive, comes from the form
of Equation 20 and the definition of
{ }
D
ij
num
. Note that the analysis leading to Equation 23
employs second-order correct finite-difference approximations for all of the second-order
derivatives.

INTERPRETATION OF RESULTS

Simulators using convection-dispersion type equations usually treat the coordinate system as if it
was aligned along the principal axes. This assumption lets the programmer formulate flow
equations (such as Equation 3) which use diagonal tensors, thereby removing all cross-derivative
terms and simplifying the subsequent programming effort. The presence of numerical dispersion in
Equation 20 essentially "puts back" the cross-derivative terms that were eliminated from Equation
2 by assuming the dispersion tensor was diagonal. Two questions naturally arise: What is the
physical significance of this effect? And how important is it?

The answer to the first question comes in two parts. The first is provided by examining Darcy's law
in anisotropic media
11
:

q k = Vu

25



61
where k is the permeability tensor, is specific gravity, is viscosity, q is specific discharge (flow
rate), and u is the piezometric head (also referred to as a potential function). In three-dimensions
Equation 25 has the form

q k
x
k
y
k
z
x x x x y x z ' ' ' ' ' ' '
=

'
+
'
+
'

cu
c
cu
c
cu
c
26a

q k
x
k
y
k
z
y y x y y y z ' ' ' ' ' ' '
=

'
+
'
+
'

cu
c
cu
c
cu
c
26b

and

q k
x
k
y
k
z
z z x z y z z ' ' ' ' ' ' '
=

'
+
'
+
'

cu
c
cu
c
cu
c
26c

where the primed coordinates (x', y, z') have replaced (x
1
, x
2
, x
3
). Suppose that the permeability
tensor is diagonal in the (x, y, z) system. Equations 26 become

q k
x
x xx
=

cu
c
27a

q k
y
y yy
=

cu
c
27b

q k
z
z zz
=

cu
c
27c

which is the form of Darcy's law used most often in reservoir simulators. In the (x, y, z) system
each component of the flow rate depends only on the potential gradient in its direction of flow. On
the other hand, in the (x', y', z') system the flow rate in any given direction depends not only on the
potential gradient in that direction, but also on the potential gradients in directions transverse
(perpendicular) to the given direction. Since numerical dispersion adds non-zero off-diagonal
elements to the dispersion tensor, one effect of numerical dispersion is to make the flow rate
components depend on transverse as well as parallel potential gradients. This can alter the
direction of fluid flow and affect such physically important parameters as breakthrough time and
sweep.

Besides this rotation effect on q, it is clear from Equation 24 that numerical dispersion also alters
the magnitude of the dispersion coefficients. This effect has been studied in one-dimension by
Lantz
3
, and can be easily calculated using the formulae in Table 1. Based on these observations it
is concluded that multidimensional numerical dispersion has two effects:

a) rotation of the fluid flow direction, and

b) alteration of the magnitude of dispersion coefficients.

Are these effects important?

Effect b can be estimated using Table 1 and, based on comparisons of the calculated numerical
dispersion with the physical dispersion, the determination of the importance of effect b is
straightforward.


62

Determination of the importance of the rotation effect, effect a, is not so easy. This will now be
considered.


Principal Axis Transformation

Recall that our interest is in solving an equation of the form

|
c
c
c
c
c
c
S
t
D
S
x
v
S
x
ii
phy
i
i
i
i
N
=

(
(
=

2
2
1
28

where N is the number of spatial dimensions and x
i
refers to the i
th
Cartesian coordinate.
Unfortunately existing finite-difference formulations of Equation 28 yield results that correspond to
equations like

|
c
c
c
c c
c
c
S
t
D
S
x x
v
S
x
ij
i j
i
i
j
N
i
N
=

(
(
= =

mod
2
1 1
29

where the modified dispersion tensor D
ij
mod
is given by

D D D
ij ii
phy
ij ij
num mod
= + o 30

with o
ij
the Kronecker delta. One way to compare Equations 28 and 29 is to diagonalize the tensor
D
ij
mod
. The diagonalization--which is achieved by a principal axis transformation--gives

|
c
c
c
c
c
c
S
t
S
y
v
S
y
ii
i
i
i
i
N
=

(
(
=

D
mod
2
2
1
31

where the tensor D
mod
is a diagonal N x N matrix whose non-zero elements are the eigenvalues
() of

det
mod
D

(
= I 0 32


with I the identity matrix. The position vectors (x, y) and velocities (v, V) are related by

y Ax = 33

and
V Av = 34

where A is an orthogonal matrix composed of the orthonormal eigenvectors a of

D a a
mod
= 35



63
Equations 28 and 31 differ in two ways: the coordinate axes of their respective coordinate
Systems do not coincide, and the dispersion tensors D and
phy
D
mod
are not the same though they
are both diagonal. If the coordinate axes of the coordinate systems almost coincide, then the
rotation effect is negligible; in this case the magnitude effect is comparable to effect (b) of the
previous section and can be readily estimated. On the other hand, if the coordinate systems are
quite different, then the rotation effect due to numerical dispersion is no longer negligible and steps
to decrease the rotation--such as using a finer grid and/or smaller time steps--should be
considered. Thus a measure of the importance of the rotation effect is to determine how much the
coordinate systems (x
1
, x
2
, x
3
) and (y
1
, Y
2
, Y
3
) differ. This requires determining the matrix A ,
which is done for the two-dimensional case in the next section. Since the three-dimensional case
is not as common, it will not be developed here.


Two-Dimensional Case

The. solution of the two-dimensional (N = 2) convection-dispersion equation is desired. It is
assumed that the components (v
1
, v
2
) of the velocity v are known and that the physical dispersion
values d
1
and d
2
are principal values, that is d D and d D
phy phy
1 11 2 22
= = . The finite-difference
solution of this problem corresponds to a tensor with the ij
th
element given by

D d
ij i ij ij
mod
= + o c 36

where

c
|
ij i j
v v
t
=
A
2
37

for I = j, and c
ii
depends on the solution method used (Table 1).

The diagonalized tensor D
mod
is found using Equation 32, thus

D I
mod
= 0 38
or


d
d
11 12
21 22
0

=
c
c
39

where

d
11
= d
1
+ c
11
, 40a

d
22
= d
2
+ c
22
40b

The characteristic equation is

(d
11
-)(d
22
-) - c
12
2
0 = 41

where the relation c
ij
= c
ji
has been used. Solving Equation 41 gives the two eigenvalues:



64
( ) ( )
( )
c

= + +


`
)

1 2 4
11 22 11 22
2
11 22 12
2
1 2
/
/
d d d d d d 42

The transformation matrix A is composed of orthonormal eigenvectors which are determined from
Equation 35: thus


( )
( )
A
a
a
a a
a a
d
d
d
=
+

(
=

(
(
=
+

(
(

+ +

+
+
+
1 1
2 2
11
2
12
2
1 2
12 11
11 12
1
c
c
c
/
43

Details of the above calculation are presented in Appendix B. The diagonalized tensor D
mod
has
the form

D
mod
=

(
(
+

o
o
44

and the new coordinate system (y
1
) y
2
) is related to the original (x
1
, x
2
) by Equation 33, namely


y a x a x
y a x a x
1 1 1 2 2
2 1 1 2 2
= +
= +
+ +

45

Observe that an angle u can be associated with the linear transformation, Equation 45, by defining

a a
1 2
+
= = cos u 46a

and hence

a a
2 1
+
= = sin u 46b

The dependence of u on the physical dispersion D
phy
and original velocity v is made explicit by
combining Equations 43 and 46a to find


( )
cos
/
u
c
c
=

+

(
+
12
11
2
12
2
1 2
d
47

The meaning of Equations 46 and 47 is that the finite-difference results correspond to a coordinate
system which has been rotated by an angle relative to the original coordinate system (Fig. 1).

FIGURE 1 -- ROTATION OF PRINCIPAL AXES



65
x
1
y
1
x
2
y
2


Rotation of principal axes due to multidimensional numerical dispersion. The solid axes
are the principal axes of the original system; the dashed Axes are the principal axes of the
rotated system; and u is the angle of rotation.



Equation 47 can be written in a more transparent form by substituting Equation 42 into Equation 47
and simplifying. The result is


( )
( )
| | ( )
cos
/
/
u
c
=

+ +


`
)
sign
B sign d d B B
12
1
2
2
11 22
1
2
2
1 2
1 2
2 4
48

where the dimensionless quantity B is defined as

B
d d


11 22
12
c
49

The "sign (c
12
)" factor depends on the solution procedure in time (implicit implies sign (c
12
) = +1,
and explicit implies sign (c
12
) = -1). For the implicit case u s 0 whereas the explicit case yields
u > 0. Bearing this in mind, let us consider the explicit case more closely. Equation 48 becomes

cos u
E
R
=
+
''
1
50

with the subscript E denoting "explicit" and

( ) | | ( )
'' + + R B sign d d B B 2 4
1
2
2
11 22
1
2
2
1
2
51

If d
22
> d
11
, then R" > 2 and the smallest value of u
E
is 45. Thus it is clear that the axes and
grid should be such that d
11
> d
22
in order to get values of u
E
less than 45 (minimize the rotation
effect).

Assuming that d
11
> d
22
gives

cos u
E
R
=
''
1
52



66
where


( )
' = + + R B B B 2 4
1
2
2
1
2
2
1
2
. 53


FIGURE 2
ROTATION ANGLE
E
AS A FUNCTION OF THE DIMENSIONLESS PARAMETER B




















uE
DEGREES
50.0
40.0
30.0
20.0
10.0
0.0
1000.0 100.0 10.0 1.0
B (DIMENSIONLESS)
0.1 0.01


67
A plot of Equation 52 is presented in Fig. 2. Observe that as B increases the rotation angle goes to
zero and the rotation effect disappears. This is the desired situation. Thus the condition which
should be achieved is

c
12 11 22
<< d d . 54


A means of doing this for any solution technique is to let the time step size decrease. If this is not
practical, then an estimate of the rotation effect can be made by using Table 1, Equation 49 and
Fig. 2 to determine u
E
(recall that the implicit angle u
i
is just minus the explicit angle u
E
).

Data for an illustrative example are given in Table 2. In Case A the rotation angle is very large and
a decrease in time step size is attempted. Case B shows that the smaller time step size greatly
reduces the rotation effect. Decreasing the time step size even further in Case C virtually
eliminates the rotation effect. For practical purposes Case B would be best since the rotation
effect is small (<10) for a reasonable time step size (0.01 day). Additional examples are
presented in Appendix C.


TABLE 2
AN EXAMPLE OF MND - INDUCED ROTATION

SOLUTION TECHNIQUE: EXPLICIT CENTERED - DIFFERENCE

PARAMETERS

Physical : d
1
= 0.2 ft
2
/day
d
2
= 0.02 ft
2
/day
v
1
= 1.0 ft/day
v
2
= 1.0 ft/day
| = 0.2

Case A: Numerical: At = 0.1 Day
B = 0.72
Rotation Angle: u
E
~ 35

Case B: Numerical: At = 0.01 Day
B = 7.2
Rotation Angle: u
E
= 7.8

Case C: Numerical: At = 0.001 Day
B = 72.0
Rotation Angle: u
E
= 0.8


CONCLUSIONS

It has been known for some time that numerical dispersion associated with the finite-difference
solution of fluid flow equations can cause a smearing of otherwise sharp saturation fronts.
Smeared saturation fronts can significantly alter calculated quantities which are of interest in
reservoir studies. For example, numerical dispersion can result in calculated breakthrough times
that are premature. A related problem is the premature increase of the calculated water-oil ratio.
The usual. methods of estimating the magnitude of the smearing effect in one-dimension were
shown to apply in two and three-dimensions as well.


68

Besides the smearing effect, numerical dispersion affects the finite-difference solution in yet
another way. In particular, if a multi-dimensional (areal, cross-sectional, or three-dimensional) flow
problem is being solved with finite-difference techniques, the presence of numerical dispersion can
rotate the principal flow axes. A method for determining the importance of the rotation effect has
been discussed. It was shown that decreasing the time step size can largely minimize the rotation
effect in multi-dimensional studies.


NOMENCLATURE

Scalars

B dimensionless (N=2) factor = (d
11
- d
22
)/c
12
|
B
C
Bears
11
channel conductance
D dispersion coefficient (N=1)
D
x
, D
y
, Dz principal values of N=3 physical dispersion tensor
d
1
, d
2
principal values of N=2 physical dispersion tensor
d
11
d
1
+ c
11

d
22
d
2
+ c
22

L
D
S difference form of equation
LS differential form of equation
N number of spatial dimensions
R exact front location for radial flow example
S, C saturation, concentration
t time coordinate
v
r
radial velocity of radial flow example
x, y, z spatial coordinates

Vectors
a orthonormal eigenvector of A
q specific discharge (Darcy flow rate)
V, v velocity vectors; V = A v
V' Bear's
11
velocity vector; v = |V'
x, y position vectors


69
Tensors and Matrices
A rotation matrix from diagonalizing D
mod

D total dispersion tensor
D
con
convective dispersion tensor
D
mod
modified dispersion tensor
D
num
numerical dispersion tensor
D
cphy
physical dispersion tensor
D
'
Bear's
11
total dispersion tensor
D
mod
diagonalized form of D
mod

I identity matrix
K k , permeability tensors
T D
d
- Bear's
11
molecular diffusion tensor

Greek Symbols
specific gravity
o
ij
Kronecker delta; o
ij
= 1 if i = j, and o
ij
= 0 if i = j
c
ij
ih
th
element of N=2 numerical dispersion tensor
c
T
truncation error = L
D
S - LS
u rotation angle for N=2

eigenvalues of D
mod

viscosity
u piezometric head
| porosity
Ax, Ay, Az grid block lengths
At time step size
A A A
x y z
2 2 2
, , second order correct difference representation

Subscripts and Superscripts
E explicit
I implicit
i, j, k denote Cartesian coordinates with values ranging from 1 to N


70
x, y, z Cartesian coordinate system
1, 2, 3 Cartesian coordinate system
' ' ' x y z , , Cartesian coordinate system


REFERENCES


1. Peaceman, D. W.: Fundamentals of Numerical Reservoir Simulation; Elsevier, NY (1977).

2. Crichlow, H. B.: Modern Reservoir Engineering--A Simulation Approach, Prentice-Hall,
Englewood Cliffs, N.J. (1977).

3. Lantz, R. B.: "Quantitative Evaluation of Numerical Diffusion"; Soc. Pet. Eng. J. (Sept.
1971) 11, 315-320.

4. Jensen, O.K. and Finlayson, B. A.: "Solution of the Convection--Diffusion Equation Using a
Moving Coordinate System," Finite Elements In Water Resources, ed. by C. A. Brebbis,
W. G. Gray and G. F. Pindar, Pentech Press, London (1978).

5. Larson, R. G.: "A Novel Method for Controlling Numerical Dispersion in Finite Difference
Simulation of Flow in Porous Media," SPE paper #8027; 54th Annual Fall Tech. Conf. and
Exhibition, Las Vegas (Sept. 23-26, 1979).

6. Price, H. S., Cavendish, J. C. and Varga, R. S.: "Numerical Methods of Higher-Order
Accuracy for Diffusion-Convection Equations," Soc. Pet. Eng. J. (Sept. 1968) 8, 293-303.

7. Todd, M. R., O'Dell, P. M., and Hirasaki, G. J.: "Methods for Increased Accuracy in
Numerical Reservoir Simulators," Soc. Pet. Eng. J. (Dec. 1972) 12, 515-530.

8. Laumbach, D. D.: "A High-Accuracy Finite-Difference Technique for Treating the
Convection-Diffusion Equation," Soc. Pet. Eng. J. (Dec. 1975) 15, 517-531.

9. Vinsome, P. K. and Au, A. D. K.: "One Approach to the Grid Orientation Problem in
Reservoir Simulation," Paper SPE #8247, 54th Annual Fall Tech. Conf. and Exhibition, Las
Vegas, Sept. 23-26, 1979.

10. Ko, S. C. M. and Au, A. D. K.: "A Weighted Nine-Point Finite-Difference Scheme for
Eliminating the Grid Orientation Effect in Numerical Reservoir Simulation," Paper SPE
#8248, 54th Annual Fall Tech. Conf. and Exhibition, Las Vegas, Sept. 23-26, 1979.

11. Bear, J.: Dynamics of Fluids in Porous Media, Elsevier, NY (1972).



71
APPENDIX A -- PHYSICAL DISPERSION


Bear's
11
dispersion equation at low velocities (Sec. 10.4) can be written as


c
c
c
c
c
c
c
c
C
t x
D
C
x
V
C
x
j
jk
k
k
N
j
N
j
j
N
j
= '

(

'
= = =

1 1 1
A-1

where C is concentration, ' V
j
is the j
th
component of velocity, and ' D
jk
is the jk
th
element of the
dispersion tensor. The elements of the tensor ' D may be written as

' = +
-
D D T D
jk jk
con
jk d
A-2

where D
jk
con
represents velocity-dependent convective dispersion and T D
jk d
-
represents molecular
diffusion in a porous medium. The quantity T D
jk d
-
is related to the permeability tensor by

D K B T D
d jk c jk d
=
-
| A-3

where B
C
is the conductance of a channel. Substituting Equations A-2 and A-3 in Equation A-1
yields

|
c
c
c
c
|
c
c
|
c
c
C
t x
D
D
B
K
C
x
V
C
x
j
k
N
j
N
jk
con d
c
jk
k
j
j
N
j
=

'
= = =

1 1 1
_ A-4

where it has been assumed that porosity | is constant. If the dispersion term is written as

D D
D
B
K
jk jk
con d
c
jk
= + | A-5

and it is assumed that D
jk
is constant, Equation A-4 can be written as

|
c
c
c
c c
c
c
C
t
D
C
x x
v
C
x
jk
j k
j
j
N
j
k
N
j
N
=
= = =

2
1 1 1
A-6

where v
j
is defined by

v V
j j
' | A-7

Equation A-6 has the form of the three-dimensional convection-dispersion equation (Equation 2).
Observe that Equation A-5 explicitly relates the dispersion tensor to the permeability tensor.



72
APPENDIX B - ORTHONORMAL BASIS VECTORS


The basis vectors a satisfy


( )
D I a = 0 B-1

where I is the identity matrix. Expanding Equation B-1 gives

( ) d a a
11 1 12 2
0 + =
+
+ +
c B-2

( ) c
12 1 22 2
0 a d a
+
+
+
+ = B-3

for the eigenvalue
+
, and

( ) d a a
11 1 12 2
0 + =


c B-4

( ) c
12 1 22 2
0 a d a


+ = B-5

for the eigenvalue

. Rearranging Equation B-2 gives



a
d
a
1
12
11
2
+
+
+
=

B-6

Equation B-6 and the normalization condition


( ) ( )
a a
1
2
2
2
1
+ +
+ = B-7

provide the two equations which are necessary for determining the components of a
+
: thus


( )
a
d
2
12
2
11
2
1 2
1
+
+

= +

(
(
c

/
B-8

and


( )
( )
a
d
d
1
12
11
12
2
11
2
1 2
1
+
+
+

(
(
c

/
B-9

Similar calculations for a
-
yield the results


( )
( )
a
d
d
1
11
11
2
12
2
1 2
=

+

(
+
+

c
/
B-10



73
and


( )
a
d
2
12
11
2
12
2
1 2

+
=

+

(
c
c
/
B-11

where the relation

( ) d d
11 22
=
+
B-12

has been used. Notice that a
+
and a
-
are orthogonal, i.e.

a a a a a a
+ + +
= + = .
1 1 2 2
0 B-13

thus a
+
and a
-
can be used as the orthonormal basis vectors of the transformed space.



74
APPENDIX C - NUMERICAL EXAMPLES


The following examples are designed to illustrate the MND effects: rotation and smearing. The
convection-dispersion equation of interest is

|
c
c
c
c
c
c
c
c
c
c
S
t
d
S
x
d
S
x
v
S
x
v
S
x
= +
1
2
1
2
2
2
2
2
1
1
2
2
C-1

where d
1
and d
2
are the physical dispersions:

D d
phy
11 1
= C-2a

D d
phy
22 2
= C2-b

Equation C-1 is numerically solved using the implicit backward-difference technique.
Consequently, the elements of the numerical dispersion tensor are found from Table 1 to be

c
|
11
1
2
1 1 1
= +
|
\

|
.
| v x v
t
A
A
C-3a

c
|
22
1
2
2 2 2
= +
|
\

|
.
| v x v
t
A
A
C-3b

and

c c
|
12 21
1
2
1 2
= = v v
t A
C-3c

The elements of the corresponding modified dispersion tensor are

D d v x v
t
11 1
1
2
1 1 1
mod
= + +
|
\

|
.
| A
A
|
C-4a

D d v x v
t
22 2
1
2
2 2 2
mod
= + +
|
\

|
.
| A
A
|
C-4b
and

D D v v
t
12 21
1
2
1 2
mod mod
= =
A
|
C-4c

To clearly demonstrate the MND effects it is desirable to simplify the problem as much as possible.
This is accomplished by requiring that there is no physical dispersion and that the front propagates
radially from a given point. For the 10 x 10 grid shown in Fig. 3, the boundary conditions are
defined such that fluid flows radially outward from the upper-left-hand corner grid block labeled (I,J)
= (1,1).


75
FIGURE 3 - FINITE DIFFERENCE GRID.
FLUID FLOWS RADIALLY OUTWARD FROM BLOCK 1,1

I 1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
J




Physical parameters which are consistent with this situation are listed in Table 3.


TABLE 3 -- PHYSICAL DATA FOR NUMERICAL EXAMPLES

d
1
= d
2
= 0.0 ft
2
/day

v
1
= 1.0 ft/day

v
2
= 1.0 ft/day

| = 1.0

Total Distance in X
1
-Direction = 1.8 ft.

Total Distance in X
2
-Direction = 1.8 ft.

Total Run Time = 2.0 days



The modified dispersion tensor simplifies to the form

( ) D x t
11
1
2
1
mod
= + A A C-5a

( ) D x t
22
1
2
2
mod
= + A A C-5b



76
and

D t
12
1
2
mod
= A C-5c

where Ax
i
and Ax
2
are in feet, At is in days and velocities equal 1 ft/day.

A consequence of these simplifications is that any observed dispersion will be strictly numerical.
The exact front location without dispersion is given by


( )
R
v t
v v t t
r
= = + ~
|
1
2
2
2
1 2
1414
/
. C-6

where R is the radius (in ft) measured from the node of grid block (1,1) and t is the total elapsed
time of fluid flow. Any difference between the computed front location and that determined by
Equation C-6 is due to numerical dispersion. By specifying the grid block and time step sizes it is
possible to use results presented earlier to calculate the effects of numerical dispersion.

Cases A-D of Table 4 summarize the four different examples considered here. Columns 2-4 of
Table 4 specify the input data. The angle u
I
is calculated from Equation 48 with sign (c
12
) = +1 and
B is calculated using Equation 49. The dispersions ( )

along the principal axes of the coordinate


system rotated an angle u
I
with respect to the x
1
-axis are calculated from Equation 42.


TABLE 4 -- COMPILATION OF NUMERICAL EXAMPLE RESULTS

--------------Input Data------------------- -----------------Calculated Results-----------------

Ax
1
Ax
2
At u
I

+

t
B
*
Case (Ft) (Ft) (Day) (Degrees) (ft
2
/Day) (Ft
2
/Day) (Day)

A** 0.20 0.20 0.2 45 0.3 0.1 1.34
B** 0.20 0.20 0.002 45 0.102 0.100 1.61
C*** 0.20 0.095 0.2 38 0.277 0.070 1.33
D*** 0.20 0.095 0.002 2 0.101 0.048 1.77
___________________
* Actual breakthrough = 1.8 days.
tB = time when the saturation at block (NX, NY) is 10 %. Here NX and NY denote the total number of
blocks in the X (x1) and Y (x2) directions respectively.
** 10 x 10 grid
*** 10 x 20 grid




77
FIGURE 4 -- EFFECT OF TIME STEP SIZE

R



Figure 4 shows the location of the S = 0.1 front for two different time step sizes (Cases A and B).
The curve marked R is the exact front location. It is clear from Fig. 4 that dispersion has
smeared the fronts. Furthermore, reducing the time step size in Case B has substantially reduced
the dispersion. It is not clear from Fig. 4 that dispersion in Case A is larger for the new principal
axis which now lies along the diagonal. This feature is displayed in Fig. 5 where the S = 0.1 front is
shown after 0.4 day and after 0.6 day. As the flow time elapses the front moves farther along the
diagonal than along the x
1
or x
2
axes, indicating that dispersion is greatest along the diagonal.
The dashed curve in Fig. 5 is a constant radius arc which has been drawn to highlight the effect
just described. It should be explicitly noted that no sinks are present to account for the observed
anisotropic behavior of the front.



FIGURE 5
PREFERENTIAL FLOW ALONG PRINCIPAL AXIS WITH LARGER DISPERSION



















T = 0.4 DAY
s = 0.1

CASE A
CASE B
R EXACT
uI ~ 45
0.4 DAY 0.6 DAY
uI ~ 45
CASE A

S = 0.1


78
The effect of grid block size is depicted in Fig. 6. Cases C and D exhibit a fluid flow preference
into the upper half of the grid. This is due to a rotation of the principal flow axes such that the
larger dispersion (
+
) is along an axis which is nearer to the x
1
than X
2
axis. In other words,
+
is
greater than

and u
I
is less than 45. Observe in Fig. 6b that the portion of the Case D curve
near the X
2
axis is almost identical to the exact curve. This is because

is small and the


principal axis corresponding to

is almost collinear with the x


2
axis.

FIGURE 6 -- EFFECT OF GRID BLOCK SIZE.

(A) TIME STEP = 0.2 DAY


















(B) TIME STEP = 0.002 DAY

R
CASE B
CASE D
R EXACT
t = 0.4 DAY
S = 0.1




How do these MND features affect engineering studies? Although a quantitative answer would
depend on the particular study, it is possible to provide a generally applicable qualitative answer.
Most 2 or 3 dimensional studies are run to determine, among other things, sweep efficiency.
Furthermore, the history-match phase of a study will often use breakthrough times as a check of
the model. From the work presented here it can be concluded that the presence of MND can
I 38
uI ~ 38
uI ~ 2
CASE A
CASE C
t = 0.4 DAY
S = 0.1


79
significantly affect breakthrough times. Column 7 of Table 4 justifies this conclusion.
Consequently a knowledge, even a rough estimate, of MND could aid the engineer when using
breakthrough times to evaluate a model.

In addition to affecting breakthrough times, MND can influence sweep efficiency as illustrated in
Fig. 7. By comparing Fig. 7a with Fig. 7b it can be seen that the fluid in Case D flows preferentially
towards the upper right hand corner. Consequently the displacing fluid will appear to sweep the
upper half of the grid more than the lower half by the time breakthrough occurs. This anisotropic
sweep pattern is a numerical artifact and does not accurately represent the physical situation being
studied. Calculating rotation angles and modified dispersions can help the engineer avoid
misinterpreting results obtained from numerical simulators.


FIGURE 7 -- ALTERATION OF SWEEP BY NUMERICAL DISPERSION

S = 0.4 0.3
CASE B
t = 1.6 DAYS
0.2
0.1



S = 0.4
CASE D
t = 1.6 DAYS
0.2
0.1
0.3


(A) 10 x 10 GRID
(B) 10 x 20 GRID


80

SI METRIC CONVERSION FACTORS


ft X 3.048
*
E-01 = m
day X 1.157407 E-05 = s
ft/day X 3.527778 E-06 = m/s
ft
2
/day X 1.075267 E-06 = m
2
/s



*
Conversion factor is exact.


81
APPENDIX B
An Illustrative Simulation Study


SPE 10022








The Role of Numerical Simulation in Reservoir Management of a West Texas Carbonate Reservoir








by Kenneth J. Harpole, and Charles L. Hearn


















This paper was presented at the International Petroleum Exhibition and Technical Symposium of
the Society of Petroleum Engineers held in Beijing, China. 18-26 March. 1962.




82
INTRODUCTION

An effective reservoir management program is designed to optimize reservoir performance by
assuring maximum economic return and recovery over the life of the reservoir. Such a program
requires a continuing process of engineering and geologic study. Numerical reservoir simulation
models provide a powerful tool for analyzing the production history of a reservoir and for predicting
future performance under a variety of possible operating methods. Experience has shown that an
accurate reservoir description is essential to the success of any numerical simulation study and to
the development of an effective reservoir management plan
1,2
.

The mechanics of conducting a numerical simulation of reservoir performance are essentially the
same for either a carbonate or sandstone reservoir. The most important difference in modeling
these two general reservoir types involves the conceptual approach required to describe the lateral
and vertical continuity of flow units within the reservoir. The continuity and internal characteristics
of sandstones are controlled primarily by the original depositional system and environment, with
usually only minor post-depositional changes. In carbonates, the distribution of porosity and
permeability and the continuity of reservoir-quality units can be determined either by the original
depositional environment, by post-depositional diagenetic changes, or, most commonly, by a
combination of these factors.

Carbonate reservoir rock types are formed in a variety of depositional settings and show great
diversity in size and form, ranging from reefs covering one or two square kilometers to extensive
carbonate banks covering thousands of square kilometers
3
. The common characteristic of
carbonate reservoirs is the extreme heterogeneity of porosity types and permeability distribution
which results from the complex interaction of the physical, biological, and chemical processes that
form these rocks. In addition, carbonate rocks are particularly susceptible to post-depositional
diagenetic changes. Some of the more important diagenetic processes which act to alter the
original rock texture in carbonates are dolomitization, recrystallization, cementation, and leaching
or solution.

A reservoir study
4
conducted by Cities Service Company on a large carbonate reservoir in West
Texas provides an excellent example of the approach and the type of data needed to support a
numerical simulation study for improved reservoir management. The West Seminole field
(Fig. 1) produces from the San Andres Formation at an average depth of approximately 5,100 ft
(1550 m).

FIGURE 1 -- FIELD LOCATION MAP

*
TEXAS
WEST SEMINOLE FIELD


Fig. 2A shows the general structural configuration of the reservoir, which consists of a large main
dome with a smaller dome structure to the east. A large primary gas cap, shown schematically in
Fig. 2B, covers most of the field area. A summary of basic reservoir and fluid data is presented in
Table 1.


83
FIGURE 2a -- Structure map on top of porosity.



Contour Interval 50 ft. = 15.2 m Existing Producing Wells
Existing Injection Wells
GI + Gas Injection


FIGURE 2b -- Schematic cross section through the field

EAST-WEST CROSS SECTION
SCALE
400
1320
Gas Cap
Oil Zone





TABLE 1 -- WEST SEMINOLE FIELD RESERVOIR AND FLUID DATA

Productive Surface Area, Acres (ha) 2782 (1126)
Average Producing Depth, Ft (m) 5112 (1558)
Average Gross Oil Zone Thickness, Ft (m) 140 (43)
Average Gross Gas Cap Thickness, Ft (m) 111 (34)
Estimated Original Oil in Place, Million STB (10
6
stock-tank m
3
) 172 (27.3)
Estimated Original Free Gas In Place, Billion SCF (10
9
std m
3
) 137 (3.92)
Average Porosity, % 9.9
Average Permeability, MD 9
Average Connate Water Saturation, % 18
Reservoir Temperature, F (C) 101 (38.3)
Original Reservoir Pressure (Saturated) at 1575 FT
(480 m) Subsea, Psia (MPa) 2020 (13.93)
Original Solution Gas-Oil Ratio, SCF/STB (std m
3
/stock-tank m
3
) 773 (139)
Oil Gravity, API (gm/cm
3
) 34 (0.85)
Oil Viscosity, CP (mPa-s) 0.98 (0.98)
Oil Formation Volume Factor at 2020 Psia
(13.93 MPa), RB/STB (res m
3
/stock-tank m
3
) 1.38 (1.38)

WEST SEMINOLE FIELD


84

The field was discovered in 1948. During the late 1960's and early 1970's, efforts were made to
reduce the pressure decline in the reservoir by re-injection of produced gas into the gas cap and by
peripheral water injection. Neither of these was entirely successful in effecting pressure
maintenance. In the mid-1970's, the decision was made to develop a 40-acre (16.2-ha) five-spot
pattern waterflood in the main dome area of the field (Fig. 3). Twenty-eight infill water injection
wells were drilled during 1973-1975.

FIGURE 3 -- FIELD WELL PATTERN AND STUDY AREA DESIGNATIONS.

Peripheral Water Injection Pattern
Waterflood
Pattern Area
East Dome Area Main Dome Area
Unit Outline


Existing Producing Wells
Existing Injection Wells
GI Gas Injection


Throughout the field's producing life, there had been a question about the extent of vertical
communication within the reservoir, particularly between the oil zone and the overlying gas cap.
This question became a critical operating consideration when the pattern waterflood was proposed.
Significant communication between porosity zones in the oil leg and those in the gas cap could
have a drastic effect on waterflood performance through loss of oil to the gas cap, as illustrated
schematically in Fig. 4. To answer this question, Cities Service began to obtain the data necessary
to support an extensive reservoir Study. The overall objective was to develop the most profitable
and effective reservoir management program for the West Seminole field. The following specific
objectives and procedures were developed for the work:

1. Use all available geologic and engineering data to develop a detailed and accurate
reservoir description for this field.

2. Incorporate the reservoir description information into a black oil computer simulation
model. Use the simulator to verify and further refine the reservoir description by history
matching the pressure and production data.

3. Use the history-matched simulation model to project future reservoir performance under
current waterflood operations.

4. Evaluate various alternative operating plans and recommend the most effective reservoir
management program for the field.
GI


85

FIGURE 4 -- SCHEMATIC SHOWING POSSIBLE LOSS OF OIL TO THE GAS CAP.

Injection Well Production Well

G.O.C.
Oil
Water
Unrecoverable Oil
Gas Cap



RESERVOIR DESCRIPTION

The San Andres is a prolific producing formation found throughout much of west Texas. The
typical San Andres reservoir rock is a heterogeneous carbonate characterized by extreme vertical
and lateral variation in porosity and permeability development. Previous work by Ghauri, et al
5
and
George and Stiles
6
illustrates the efforts made recently to better characterize these complex
reservoirs and to develop improved techniques to evaluate and predict their waterflood
performance.


Geologic Study

Core data provided the most valuable source of information for developing a geologic description
of the field. All of the 28 infill wells drilled between 1973 and 1975 were cored through most of the
reservoir section. After routine core analysis, 24 of these cores were slabbed and polished. This
provided over 6,000 feet (1830 m) of core for geologic study. An extensive geologic evaluation of
the West Seminole reservoir
7
was conducted using the cores and jogs from these 24 wells. This
work provided a detailed description of the internal anatomy of the reservoir as well as a
description of its depositional and diagenetic history.

The producing section in the upper San Andres in West Seminole is contained within some 600
feet (180 m) of carbonate section deposited during an overall regression of the Permian sea at the
eastern margin of the Central Basin Platform. This basin margin was probably a carbonate ramp
with depositional patterns similar to those of the Trucial Coast in the Persian Gulf
7
. Sediments
were most likely deposited on this shelf ramp in a series of facies belts, roughly following
bathymetric Contours.

The retreat of the sea was very erratic, with the result that the facies belts migrated up and down
this ramp as sea level fluctuated. This resulted in deposition of a complex interlayering of different
carbonate facies. Two of the larger of these minor transgressions produced field-wide
unconformities within the reservoir section. These unconformities divide the reservoir section into
three distinct transgressive-regressive depositional cycles. Each cycle shows a progression upward
from a basal, relatively deep water, low energy subtidal fades into a shallower, higher energy
shoaling environment.



86
The cyclic nature of the deposition caused by the erratic sea level fluctuations produced a layered
structure in the rocks. This situation was modified somewhat by post-depositional diagenetic
changes. These changes were both constructive, that is, acting to improve reservoir porosity and
permeability (the most important processes here were dolomitization and leaching), and
destructive, that is, acting to destroy porosity and permeability (the most important of these was
deposition of anhydrite).

The interpretation of the resulting porosity and permeability distribution was made easier because
the types and intensities of diagenetic changes seemed to be closely related to the original
depositional facies. This is not the case in all carbonate reservoirs. Of particular importance to
reservoir performance was the fact that the deep, quiet water fusulinid wackestone facies seemed
to be particularly subject to anhydritization.
7
As a result, several thin zones extending across the
field were extensively cemented with anhydrite. These zones formed potential barriers to vertical
movement of fluids within the reservoir section.

It was essential to obtain a detailed and accurate correlation of stratigraphic units prior to
identifying their porosity and permeability characteristics. This prevented the cross-correlation of
different geologic units which happened to show similar permeability and/or porosity characteristics
on logs or in cores. This was particularly important when correlating a specific impermeable zone
from well to well across the field.

Based on the geologic evaluation, the reservoir section was divided into six major zones, or layers
as illustrated in Fig. 5. The boundaries between layers corresponded to prominent low porosity,
low permeability zones which had been extensively cemented with anhydrite. Thus, the geologic
study provided the framework for the reservoir description and was the primary basis for the
layering scheme used in the simulation model grid system.

Fig 5. -- Reservoir layering based on geologic study, log data, and core data.

RESERVOIR ZONATION IN WELL 3072




















CORE
LITHOLOGIC
LOG
GAMMA RAY
POR. (%) PERM. (MD)
0 25 50 0 25 50
4970
LAYER/ZONE
BOUNDARIES
DEPTH
IN
FEET
5020
5070
5120
5170
5220
PELOIDAL GRAINSTONE FACIES SKELETAL WACKESTONE FACIES

ZONE WITH EXTENSIVE ANHYDRITE


87
Porosity and Permeability Distribution

Conventional, whole-core analyses were available for over 7,500 feet (2290 m) of core from 44
different wells in the West Seminole field. All of the core analyses were digitized for computer
analysis. This allowed extensive use of the computer in statistical analysis, plotting, and mapping
of the core data. The core data were used to construct contour maps showing the area distribution
of porosity and permeability within each of the six geologically-defined layers. Structure contour
and isopach maps were also generated for each layer.

By combining the core data and the geologic reservoir description, the three-dimensional
distribution of porosity and permeability in the reservoir could be described in detail. Fig. 6
illustrates the permeability distribution for an east-west cross-section through the northern portion
of the field. The cross-section shows the extreme lateral and vertical variations in reservoir quality
characteristic of the San Andres.




No consistent relationship between porosity and permeability development was observed in the
core data. Core samples with fairly low porosity often showed excellent permeability, and vice
versa. It is fairly common to find such a lack of correlation between porosity and permeability in
carbonate reservoirs. This is often the result of selective leaching of fossil fragments or solution of
material creating moldic or vuggy porosity that is not interconnected to form a continuous flow
Fig. 6 -- Cross section showing permeability distribution.
PERMEABILITY ZONATION IN THE WEST SEMINOLE FIELD
WELL
808
WELL
405
WELL
305
WELL
306
WELL
307
WELL
308
LESS THAN 1 MD.
(PERMEABILITY BARRIER)
1-10 MD.
OVER 20 MD.
LEGEND
10-20 MD.
GENERALIZED
STRATIGRAPHIC
COLUMN
SKELETAL
ANHYDRITE FILLED
SKELETAL (FUSULINID)
NON-SKELETAL
175
20


88
system. The correlation of porosity with permeability was much better within individual reservoir
zones identified in the geologic study.

The West Seminole reservoir does exhibit a distinctly layered structure. Lateral pay continuity
within the primary waterflood zone was observed to be much better than is normally seen in the
San Andres. Fig. 7 shows the permeability stratification and correlation of seven sub-zones within
one of the six major layers. Fig. 7 also illustrates the general trend of an overall thickening of the
entire reservoir section to the south (paleo-seaward direction) accompanied by a general decrease
in porosity and permeability throughout the section.


Fig. 7 -- Permeability stratification within the main waterflood zone.








































0 3 5 8 10
0 3 5 8 10 0 3 5 8 10
GI
611 610
1307
UNIT OUTLINE
WEST SEMINOLE FIELD
LEGEND
EXISTING PRODUCING WELLS
EXISTING INJECTION WELLS
GI - GAS INJECTION
A
A'
PERMEABILITY STRATIFICATION IN MODEL LAYER 5
A A
WELL 1307 W
PERM (Md)
WELL 610 W
PERM (Md)
WELL 611 W
PERM (Md)
1640
1610 1640
1645
1615 1645
1650
1620
1650
1655
1655 1625 1660
1665
1630 1660
1635 1665
1670
1640
1675
1670
1645
1680
1675
1650 1680
1685
1690
1655 1685
1695 1660
1695
1690
1700
1670
1665
1705
1705
1700
1710
1675
1715
NOTE: WELLS NOT IN CORRECT
RELATIVE STRUCTURAL
POSITIONS


89
Pressure Transient Work

Extensive pressure transient testing was conducted in the reservoir. A major program consisting of
long-term buildup tests and interference tests was conducted between Nov. 1975 and July 1976
4
.
This program involved 11 separate well pairs, in three groups, distributed across the field. The
tests were conducted using sensitive Hewlett-Packard quartz crystal pressure gauges and surface
recording equipment.

The primary purposes of this program were
1. to identify any matrix directional permeability, fracture systems, or channeling which may
be controlling fluid movement in the reservoir,
2. to help assess the degree of stratification and the effective vertical communication
between porosity zones within the reservoir section, and
3 to evaluate pay continuity, particularly between injectors and producers, at the current
pattern well spacing.

The interference testing revealed no evidence of channeling or obvious fracture flow systems in
the reservoir. In addition, no fieldwide preferential flow direction was indicated by the testing.

There was considerable evidence in the test data indicating that the reservoir acts as a distinctly
layered system with restricted vertical communication between layers. Static pressure differences
of 200-250 psi (1.4-1.7 MPa), after adjusting to datum, were noted between adjacent porosity
zones in offsetting wells. A series of drillstem tests conducted in one of the infill wells showed
similar pressure differentials between various zones within the reservoir section.

An attempt was made to correlate the permeability-thickness product (kh) determined from falloff
tests with kh values calculated from core data in the same wells. The kh calculated using
arithmetically averaged core permeability data seemed to compare better with pressure transient
data than did kh values calculated using geometrically averaged core permeabilities. The results
of this comparison are presented in Table 2. Thus, arithmetically averaged core permeability data
were judged to be more representative of the effective reservoir permeability, and were used in the
simulation model where permeability data from pressure transient tests were not available.


TABLE 2
COMPARISON OF PRESSURE TRANSIENT Kh WITH Kh DERIVED FROM CORE DATA

FALLOFF CORE Kh CORE Kh
TEST Kh ARITHMETIC MEAN GEOMETRIC MEAN
WELL (md-ft) (md-m) (md-ft) (md-m) (md-ft) (md-m)

305W 1094 (333) 910 (277) 242 ( 74)
306W 1008 (307) 732 (223) 312 ( 95)
307W 533 (162) 637 (194) 355 (108)
609W 1306 (398) 1008 (307) 265 ( 81)
610W 944 (288) 446 (136) 193 ( 59)
611W 599 (183) 467 (142) 197 ( 60)
707W 889 (271) 868 (265) 335 (102)


Native State Core Tests

In addition to the extensive amount of conventional coring done in the West Seminole field, one
native-state core was taken. The core was cut using lease crude as the coring fluid. The core
samples were preserved at the drill site to minimize exposure to oxygen and retain original
reservoir wettability conditions as closely as possible. The native state core samples were used for
steady-state relative permeability testing to obtain flow characteristics of the reservoir rock.


90


SIMULATION MODEL

The next phase of the study was to model the reservoir using a three-dimensional, three-phase,
black oil reservoir simulator. The specific numerical simulator used was the Black Oil Model
developed by INTERCOMP Resource Development and Engineering, Inc. The Study area for the
simulation work consisted of only the main dome portion of the reservoir (Fig. 3). The simulation
study was concerned primarily with predicting response in the main dome under pattern waterflood
operations. A no-flow boundary, located in the structural saddle between the main dome and east
dome, formed the eastern border of the study area. A distinct difference in recorded field pressure
history was observed between wells in the main dome and those in the east dome. This
information, along with well completion data, was used to approximate the location of the no-flow
boundary.


Model Grid Configuration

It was necessary to use a three-dimensional grid system in the model since one of the major
objectives of the simulation work was to evaluate the sensitivity of reservoir response to vertical
communication within the reservoir section. The model grid chosen incorporated the six layers
developed from the geologic work. With this much resolution in the vertical dimension, it was
necessary to use a relatively coarse area grid to keep computer run time within reasonable limits.
The area grid chosen is shown in Fig. 8. It consisted of 288 areal blocks of about 10 acres (4 ha)
each. Thus, the complete model grid was composed of 1,728 blocks.

Fig. 8 -- Areal grid used in the simulation model






















The porosity and permeability data for each of the six layers were digitized from computer contour
maps. The model grid was chosen so that the boundaries between layers coincided with the
location of potential vertical flow barrier units identified in the geologic study. The strength of the
flow barriers could then be controlled mathematically in the model by varying the vertical
transmissibility across the block boundaries. This allowed study of the sensitivity of reservoir
response to variations in the strength and distribution of these vertical flow barriers.

SIMULATION MODEL GRID
LEGEND
EXISTING PRODUCTING WELLS
EXISTING INJECTION WELLS
GI -- GAS INJECTION
METERS
0 1000
FEET
2000 0
GI
UNIT OUTLINE


91

Grid Size Sensitivity

Considerable time was spent evaluating the effects of grid block size on simulator performance.
There was concern that the relatively coarse grid used in the model might introduce serious errors
into the simulator performance.

The primary concern was that the coarse areal grid might introduce potentially large errors through
numerical dispersion effects. The pattern waterflood area was modeled with wells in alternate
areal grid blocks. When further infill drilling was investigated, there would be a well in every area
block in some parts of the model. A second point of concern was that a fairly distinct permeability
stratification was observed within the oil zone (see Fig. 7). The use of grid blocks approximately
50 feet (15 m) thick averaged out much of this layering effect. Ignoring this layering could produce
errors in simulating waterflood performance.

Both numerical dispersion and layering effects were accounted for by using pseudo relative
permeability curves in the model. The pseudo relative permeability curves were constructed using
the technique developed by Kyte Berry
8
. This technique produces pseudo functions which account
for both layering and numerical dispersion in a coarse grid model.

The pseudo relative permeability curves were tested by comparing the performance of a fine-grid,
single-pattern model with the performance of a model with coarse grids such as used in the field-
scale study. The fine and coarse grid models are shown in Fig. 9. The original rock relative
permeability curves were used in the fine-grid model, and the pseudo curves were used in the
coarse-grid model. Waterflood performance was tested first considering the existing normal five-
spot pattern, and again considering the effects of infill drilling to an inverted nine-spot pattern
development. In both cases, the waterflood performance of the actual model grid using the pseudo
curves matched the performance of the fine-grid pattern model using the rock relative permeability
curves.


92
Fig. 9 -- Simulation model grid systems used in the grid size sensitivity study.
































HISTORY MATCHING

After the reservoir description data had been digitized and incorporated into the model grid system,
the simulator was used to history-match field performance. Two major objectives were set out for
this phase of the work:

1. Verify and further refine the reservoir description by history-matching the field pressure
and production performance.

2. Evaluate the sensitivity of reservoir performance to changes in the strength and distribution
of barriers to vertical flow of fluids within the reservoir section.


Pressure and Production Performance

Both field and model performance indicated that the principal producing mechanism in this
reservoir was a solution gas drive with some assistance from expansion of the gas cap. The
effects of gas cap expansion were felt primarily in those wells located down-dip from the gas zones
and near the edges of the field. Very little or no effect of any water drive was observed.

COARSE GRID MODEL

7X7 AREAL GRID COVERS
NINE 40-ACRE (16.2-ha)
9-SPOT PATTERNS.

1 LAYER REPRESENTS GAS CAP;
1 LAYER REPRESENTS OIL ZONE

SHADING SHOWS QUARTER 9-
SPOT AREA REPRESENTED BY FINE
GRID MODEL ABOVE.
GAS
CAP
OIL
ZONE
FINE GRID MODEL

7X7 AREAL GRID COVERS
ONE 10-ACRE (4-ha)
QUARTER 9-SPOT PATTERN.

1 LAYER REPRESENTS GAS CAP;
7 LAYERS REPRESENT OIL ZONE
GAS
CAP
OIL
ZONE


93
The history-matching work concentrated on matching the overall field performance. Reliable
individual well data were not generally available over the entire field life for every well. Individual
well data were matched wherever available and considered to be valid, but the most emphasis was
given to matching overall field performance.

Field-wide pressure surveys were taken on a six-month basis for the early years of field life. Later,
they were taken on an annual basis, and still later replaced by key-well surveys in some years.
The pressure data were generally very consistent and considered valid, although individual well
points were often missing or obviously in error due to gauge failures, etc.

The overall field performance match was further complicated by the problem of excessive free gas
production, especially during early field life. This was primarily a result of gas channeling due to
poor completions. Free gas production from the gas cap has been and continues to be a problem
in the West Seminole field. No accurate records of actual gas production are available for the first
six years. This is the period prior to construction of a gasoline plant in the field. The history-
matching work indicated that 8 to 10 BCF (230x10
6
m to 285X10
6
m
3
) of gas-cap gas, over and
above the reported production, had to have been produced during the first six years of field life in
order to match the field pressure decline. This excess gas was presumably flared during the period
prior to construction of the gas plant. Early records do contain reports of extensive flaring of gas
during this period.

Only minor adjustments had to be made to the original porosity and permeability distributions to
match individual well pressure and production performance. This excellent initial performance
match is undoubtedly a result of the extensive amount of core data available and the effort spent in
obtaining an accurate reservoir description prior to the simulation. Most of the adjustments needed
were in an area covering about 300 acres (120 ha) in the northeastern corner of the field. The
adjustments consisted of small increases in hydrocarbon pore volume and horizontal
transmissibilities necessary to match the pressure performance of six wells in this area of the field.

Another significant aspect of the history matching work was to quantify the approximate effective
injection into the peripheral water injection wells. The cumulative effective injection into the
peripheral wells had to be reduced to 15 to 20% of total injection to match the observed reservoir
pressure response. The inability of the peripheral water injection to produce any significant
reservoir response was due to two major factors:

1. The peripheral injection wells were generally completed well below the water-oil contact,
and as a result, the injection interval was separated vertically from the reservoir by several
of the tight "barrier" zones.

2. Pay continuity was not sufficient in these lower zones to allow the injected water to readily
move laterally over the two, three, or more well spacings required to bring it into contact
with the main productive zones.

The final pressure and production history match obtained is shown in Fig. 10.



94
Fig. 10 -- Final pressure and production history match.

















































Sensitivity to Vertical Communication

The geologic study provided information to delineate the position, areal extent, and variation in
thickness of rock units which were extensively anhydrite cemented, forming potential barriers to
vertical flow of fluids within the reservoir section. However, it was difficult to quantify the vertical
50
100
200
150
250
10
5
0
GAS PRODUCTION HISTORY MATCH
CALCULATED
OBSERVED
GAS PRODUCTION--
10
6
std m
3

GAS PRODUCTION--
BILLION SCF
'75 '70 '65 '60 '55 '50
WATER PRODUCTION--10
3
BBLS/YR
'75 '70 '65 '60 '55 '50
100
200
300
400
500
0
WATER PRODUCTION--10
3
m
3
/YR
CALCULATED
OBSERVED
WATER PRODUCTION HISTORY MATCH
0
400
800
1200
1600
2000
0
2
4
6
8
10
12
14
PRESSURE HISTORY MATCH
CALCULATED
OBSERVED
'75 '70 '65 '60 '55 '50
PRESSURE--PSI
PRESSURE--MPa
80
60
40
20
0


95
permeability of these units. The history match of reservoir performance using the simulator
allowed an approximate determination of the effective vertical permeability across these zones.

The foot-by-foot core analyses of these 2- to 8-ft (0.6- to 2.4-m) thick "barrier

zones showed
horizontal permeabilities which were all less than 1 md, with one or more values commonly less
than 0.1 md. Vertical permeabilities were not measured; however, it would be expected that they
would be considerably less than the measured horizontal permeabilities.

The simulator was used to examine the sensitivity of reservoir response to changes in the effective
vertical permeability of these barriers. Four different configurations were used in the sensitivity
work.

1. "NO BARRIERS" vertical permeability equal to horizontal permeability in all model layers.
2. "MODERATE BARRIERS" - vertical transmissibilities reduced to simulate the effect of
barrier units having 0.1 to 0.01 md vertical permeability.
3. "STRONG BARRIERS" - vertical transmissibilities reduced to simulate the effect of barrier
units having 10
-3
to 10
-4
md vertical permeability.
4. "COMPLETE NO-FLOW BARRIERS" - vertical transmissibilities set to zero at layer
boundaries near the gas-oil contact.

This work showed that it was not possible to match the field performance with "COMPLETE NO-
FLOW BARRIERS" within the reservoir section. The "NO-BARRIERS" and "MODERATE
BARRIERS" configurations did not show significant differences in internal reservoir response
characteristics. Thus, the majority of the time was spent examining differences in reservoir
response between the "MODERATE BARRIERS" and the "STRONG BARRIERS" models.

Vertical flow between layers in the model was controlled by adjusting the vertical transmissibilities
between layers. The objective was not to accurately quantify the actual vertical permeability, but
rather to obtain a satisfactory predictive model of reservoir performance. Variations in vertical
transmissibility will control the material balance of fluids migrating vertically into or out of a given
layer in the model. This, in turn, is reflected in changes in such reservoir response characteristics
as gas coning behavior and the magnitude of pressure differentials created between zones within
the reservoir.

Two major differences were observed in the response of the "MODERATE BARRIERS" and
"STRONG BARRIERS" models during the history matching work. These two areas of difference
were
1. the importance of gas coning as the mechanism responsible for the observed excess free
gas production and
2. the magnitude of vertical pressure differentials created between zones in the reservoir.

Under the "MODERATE BARRIERS" model configuration, the excess gas cap gas production was
observed to occur as a consequence of gas coning into wells with structurally higher completion
intervals. However, field performance data indicated that gas coning was not the major source of
the excess free gas production. The wells exhibiting the coning behavior in the model were not
historically high gas-oil ratio (GOR) or "problem" wells in the field. Rather, the high-GOR wells
(requiring repeated workovers) were distributed randomly throughout the field, both with regard to
areal location and structural position of the completion interval. The "STRONG BARRIERS"
configuration greatly restricted the vertical movement of gas. Coning was drastically reduced and
appeared much later in the producing life of the wells. The excess gas-cap gas production was
obtained in this model by simulating gas channeling behind pipe into the "problem GOR" wells. In
this way, the correct overall field gas production was maintained. This resulted in an equally
satisfactory pressure history match and a better match of individual-well GOR behavior. Thus,
individual-well GOR performance and workover histories provided evidence to support the
"STRONG BARRIERS" model as being the more correct reservoir description.



96
The other major difference observed in model response under these two barrier strength
configurations was the magnitude of the pressure differentials created across the barriers between
zones in the reservoir. The "MODERATE BARRIERS" model showed maximum pressure
differentials of 20 to 25 psi (0.14 to 0.17 MPa) between zones. The "STRONG BARRIERS" model
showed that pressure differentials of up to 150 to 200 psi (1 to 1.4 MPa) between zones would
develop in many areas of the field. Results of a sequence of drillstem tests conducted in Well
609w, drilled in 1973, indicated that pressure differentials between zones in excess of 100 psi (0.7
MPa) had developed. Also, during the pressure interference testing, pressure differentials in
excess of 200 psi (1.4 MPa) were observed between different zones in adjacent wells in some
parts of the field. Thus, the available evidence again supports the "STRONG BARRIERS"
configuration as being the more correct model of reservoir structure and performance.


PREDICTIONS OF FUTURE PERFORMANCE

The history-matched "STRONG BARRIERS" reservoir description was chosen as the best
predictive model of the alternatives examined. The final pressure and production performance
history match using this model is shown in Fig. 10. The simulator was next run in a prediction
mode to project future field performance. This prediction assumed a continuation of the field
configuration and operating conditions existing as of Jan. 1, 1978. This case was designated as
the base case against which all other operating alternatives were compared. Field performance
projections for the base case are presented in Fig. 11.

Fig. 11
Predicted field performance under the base case of continued current operations.
























3
6
800
5000
16000
2000
4000
8000
GOR
1000
600
3000
0
400
0
2000
9
12
12
9
200 1000 6
3
0 0 0
'50 '55 '60 '65 '70 '75 '80 '85 '90 '95 '2000 '05 '10 '15
OIL PRODUCTION, GAS/OIL RATIO, WATER/OIL RATIO
OIL PRODUCTION
HISTORY PREDICTION
DAILY
AVERAGE
OIL RATE-
m
3
/d
DAILY
AVERAGE
OIL RATE-
STB/D
GOR-
SCF/STB
GOR-
m
3
/m
3

WOR
WOR
WOR
14
12
10
8
6
4
2
'50 '55 '60 '65 '70 '75 '80 '85 '90 '95 '2000 '05 '10 '15
HISTORY PREDICTION
AVERAGE
RESERVOIR PRESSURE--
MPa
AVERAGE
RESERVOIR PRESSURE--
PSI
PRESSURE RESPONSE
2100
1700
1300
900
500
100


97
A wide range of alternative operating plans were examined using the simulation model. The major
parameters examined were:

1. changes in the rates of water injection,
2. management of gas cap voidage (alternatives ranged from greatly increased gas injection
to blowdown of the gas cap at various points in time), and

3. further infill drilling of additional wells in the pattern area.

This prediction work demonstrated the complex nature of the waterflood response in this reservoir.
The most significant factor governing reservoir performance was the vertical communication
between the oil zone and the gas cap. Even with the extremely low history-matched vertical
permeabilities used in the simulator, prediction runs indicated that significant movement of oil into
the gas cap would occur in response to any large pressure differential created between the oil zone
and the gas cap.

The actual volume of oil moving into the gas cap was extremely sensitive to the vertical
permeability assumed and to the dynamics of the specific field operating plan considered.
Projections assuming continued current operations indicated that a volume of oil equivalent to 10
to 20% of the potential waterflood oil recovery could be lost to the gas cap. The model showed
that any operating plan which would cause an increase in the pressure differential between the oil
zone and the gas cap (such as greatly increased water injection rates or early blowdown of the gas
cap) would cause a further increase in the volume of oil moving into the gas cap, and a
corresponding decrease in recovery.

Conversely, operating schemes which tend to minimize the pressure differential between the
waterflood oil zone and the gas cap, such as increased gas injection into the gas cap or drilling
additional production wells in the waterflood zone, showed a reduction in oil movement into the gas
cap and a corresponding increase in waterflood oil recovery. A comparison of the results of all of
the prediction cases examined showed that an infill drilling program was by far the most
economically attractive alternative. The projected incremental oil recovery as a result of
converting the existing 40-acre (16.2-ha) five-spot waterflood pattern development to a 40-acre
(16.2-ha) inverted nine-spot pattern development through infill drilling is as follows:


Ultimate Recovery
Million Stock- Per Cent of Original
Tank Barrels (10
6
m
3
) Oil-in-Place

Estimated Primary Recovery 28.2 (4.48) 16.2

Continued Current Waterflood Operations 45.1 (7.17) 25.9

Waterflood with Infill Drilling 49.0 (7.79) 28.2

Incremental Recovery from Infill Drilling 3.9 (0.62) 2.3



The predicted oil production performance of the main dome area under infill drilling is compared to
continued current operations in Fig. 12.


98
Fig. 12.
Predicted field performance showing incremental oil recovery expeted from infill drilling.



















The simulation work showed that there is a definite potential for movement of oil into the gas cap
under waterflood operations. If this is ignored, the recovery and economic return will be reduced
significantly. If, however, this potential for movement of oil between zones is recognized, the gas
cap management, timing of infill drilling, and water injection rates can be designed to minimize the
loss of oil to the gas cap.


PROPOSED RESERVOIR MANAGEMENT PLAN

The proposed reservoir management plan called for drilling up to 46 infill production wells within
the existing 40-acre (16.2-ha) five-spot pattern development. These would be located to allow the
pattern area to be converted eventually to a 40-acre (16.2-ha) inverted nine-spot pattern
development. Eight wells were to be drilled in 1979 followed by eight additional wells in each
succeeding year, to a maximum of 46 wells. The performance of the infill drilling program would
be evaluated at each step. Water injection rates would be increased concurrently with the drilling
program to maintain voidage replacement in the oil zone but prevent excessive over-injection of
water.

The study indicated that blowdown of the gas cap before the peak in waterflood oil production rates
would significantly reduce oil recovery. Conversely, increased gas injection into the gas cap would
yield additional waterflood oil recovery; however, current economic conditions indicate this would
not be cost effective at the present time. Other possible operating alternatives include injection of
lower heating value hydrocarbon gas or inert gas to achieve voidage replacement in the gas cap at
lower cost.


COMPARISON OF FIELD PERFORMANCE WITH MODEL PREDICTIONS

The performance or the field to date has shown that this study has provided a valid predictive
model of field performance. Figures 13 and 14 present a comparison of the oil production and gas-
oil ratio performance predictions with the observed performance for the period from January, 1978
through July, 1981. The performance comparison shows excellent agreement with the simulation
model predictions.
Fig. 13 -- Comparison of actual vs. predicted oil production performance.

WEST SEMINOLE FIELD MAIN DOME
OIL PRODUCTION RATE
-- M
3
/d
OIL PRODUCTION RATE
-- STB/D
COMPARISON OF OIL PRODUCTION PERFORMANCE
6000
5000
4000
3000
INFILL DRILLING
HISTORY
2000
800
5000
6000
OIL RATE IN STB/D OIL RATE IN m
3
/d
800
600
400
200
1000
0
CURRENT OPERATIONS
0
'65 '70 '75 '80 '85 '90 '95 2000 '05 '10 '15 '60 '55 '50


99




















Fig. 14 -- Comparison of actual vs. predicted GOR performance.





















The first group of eight infill producing wells was put on production during the last half of 1979.
The combined initial potential of these eight wells was tested at 1,494 BOPD (238 m
3
/d). The
simulation model prediction had projected this group of wells to have a combined initial
production of 1,560 BOPD (248 m
3
d), a difference of less than 5%.

Because of the success of the infill drilling program through mid-1980, it was decided to accelerate
the schedule of the drilling program in the second half of 1980. This departure from the operating
program assumed in the simulator resulted in slightly higher field producing rates and higher gas-
oil ratios than predicted by the model.

CONCLUSIONS

1200
1100
1000
900
800
700
600
400
500
82 81 80 79 78
2000
3000
4000
5000
6000
7000
GAS-OIL RATIO IN STD m
3
/m
3
GAS-OIL RATIO IN SCF/STB
PREDICTED PERFORMANCE
ACTUAL PERFORMANCE


100
1. Development of a detailed reservoir description using both geological and engineering
data is necessary for the type of comprehensive numerical simulation study conducted for
the West Seminole reservoir.

2. In carbonate reservoirs, it is important that the effects of both primary depositional factors
and post-depositional diagenetic controls on the porosity and permeability distribution be
considered in development of the reservoir description.

3. Waterflood performance of this field is extremely sensitive to the vertical permeability
between major porosity zones in the reservoir.

4. It was possible to quantify the general order of magnitude of vertical permeability effects in
this reservoir using a three-dimensional simulation model.

5. An understanding of the internal reservoir response characteristics is essential to future
reservoir management of the West Seminole field. The most important of these
characteristics are:

a. There will be a slow, but substantial movement of oil into the gas cap under waterflood
operations.

b. The magnitude of this movement will depend on the differential created between the
oil zone and the gas cap.

6. An increase in oil recovery can be obtained by managing the reservoir to minimize this
pressure differential and the resulting loss of oil to the gas cap. This can be most
economically achieved through:

a. drilling additional production wells in the pattern area,

b. controlling the rates of water injection so as to maintain voidage replacement in the
waterflood zone without over-injection, and

c. careful management of voidage replacement into the gas cap.


REFERENCES

1. Harris, 0. G.: "The Role of Geology in Reservoir Simulation Studies", J. Pet. Tech. (May 1975)
625-632.

2. Harris, D. G. and Hewitt, C. H. "Synergism in Reservoir Management - The Geologic
Perspective", J. Pet. Tech. (July 1977) 761-770.

3. Jardine, D., Andrews, D. P., Wishart, J. W., and Young, J. W.: "Distribution and Continuity of
Carbonate Reservoirs", J. Pet. Tech. (July 1977) 873-885.

4. Harpole, K. J.: "Improved Reservoir Characterization - A Key to Future Reservoir Management
for the West Seminole San Andres Unit", J. Pet. Tech. (Nov. 1980) 2009-2019.

5. Ghauri, W. K., Osborne, A. F., and Magnuson, W. L.: "Changing Concepts in Carbonate
Waterflooding, West Texas Denver Unit Project - An Illustrative Example", J. Pet. Tech.
(June 1974) 595-666.

6. George, C. J. and Stiles L. H.: "Improved Techniques for Evaluating Carbonate Waterfloods in
West Texas", J. Pet. Tech. (Nov. 1978), 1547-1554.


101

7. Zaaza, M. W.: "The Depositional Facies, Diagenesis, and Reservoir Heterogeneity of the San
Andres Formation in the West Seminole Field, Gaines County, Texas", PhD Dissertation,
The University of Tulsa (1978).

8. Kyte, J. R. and BerryD. W.: "New Pseudo Functions to Control Numerical Dispersion", Soc.
Petr. Eng. J. (August, 1975) 269-276.


102
PART B: BOAST FORTRAN CODE


10. PROGRAM STRUCTURE


A brief description of each BOAST subroutine is presented in Table 10.1. These subroutines are
called by the MAIN program or by other subroutines during the computer run.

Every BOAST run proceeds in two stages. First, all data except well information and time step
sizes are read. The input data is then used to set the reservoir model at initial reservoir conditions.
Once initialized, the program proceeds to the second stage in which the fluid flow equations are
solved. Since the well configuration and operating strategy for the reservoir may change during
the reservoir life, BOAST allows input of well information at user-specified times during the
computer run. The repetitive nature of the well information and time step size input has led to the
data for the second calculation stage being called recurrent data.

The calculation procedure used by BOAST can be summarized as follows:

Initialization Stage:

1. Read grid geometry.
2. Read porosity and permeability distributions.
3. Calculate geometric part of transmissibilities.
4. Read fluid properties and relative permeability data.
5. Initialize pressure and saturation distributions.
6. Specify parameters for solution methods.


Recurrent Stage:

*1. Read time step and well information.
*2. Calculate well rates for rate constraint option.
*3. Calculate well rates for explicit pressure constraint option.
4. Calculate coefficients of pressure equation.
*5 Alter coefficients for implicit pressure constraint option.
6. Solve pressure equation.
*7. Calculate well rates for implicit pressure constraint option.
8. Solve for oil saturation S
o

9. Solve for water saturation S
w

10. S
g
= 1 - S
o
- S
w

*11. Automatic time step test. Repeat time step if necessary.
*12. Calculate floating bubble point pressure.
*13. Write Well Report.
*14. Calculate material balance.
*15. Write Summary Report.
16. Update pressure and saturation arrays.
*17. Repeat recurrent stage.

*Performed according to BOAST-user instructions.



103
TABLE 10.1
BOAST SUBROUTINE SUMMARY


Subroutine Purpose

BANDIN Sets up matrix of pressure equation coefficients with standard ordering.

BAND Solves pressure equation (LU factorization).

CODES Reads solution method, solution parameters, and diagnostic output controls.

D4IN Sets up matrix of pressure equation coefficients with D4 ordering.

D4 Sets up submatrix of D4 ordered matrix for BAND solution.

GRID1 Reads grid block sizes and computes node elevations.

INTERP Performs linear interpolation.

INTPVT Performs linear interpolation with floating bubble point calculation of
undersaturated oil PVT properties.

LSOR Linear successive overrelaxation method.

LTRI Tridiagonal algorithm.

MATBAL Computes simple material balance.

NODES Reads time step and well information.

PARM1 Reads porosity and permeability arrays.

PRTPS Writes Summary Report.

QRATE Computes well rates when rate or explicit pressure constraint activated;

PRATEI: Revises pressure equation coefficients when implicit pressure
constraint activated;

PRATEO: Computes rates when implicit pressure constraint activated.

SOLMAT Computes pressure equation coefficients.

TABLE Reads PVT and relative permeability data.

TRAN1 Computes geometric part of transmissibilities.

UINIT1 Reads initial pressure and saturation arrays.


104
11. REDIMENSIONING INSTRUCTIONS


Computer storage requirements for BOAST depend primarily on the dimensions of the arrays
within BOAST. To minimize storage costs, it is important to know the dimensions of all arrays so
they can be set at the most efficient size needed for a given problem. The array sizes are
summarized in Tables 11.1 through 11.3. Dimension sizes are given in terms of the following
parameters:

NX = maximum number of x-direction blocks;
NY = maximum number of y-direction blocks;
NZ = maximum number of z-direction blocks;
NXP = NX + 1;
NYP = NY + 1;
NZP = NZ + 1;
NXYMAX = the larger of NX or NY;
NMAX = NX * NY * NZ;
NTE = maximum number of input data table entries;
NW = maximum number of allowed wells.

Besides the arrays, the variable NROW in subroutine BANDIN should equal NMAX, whereas
NROW in subroutine D4 should equal NMAX/2.

By redimensioning BOAST to fit the problem at hand, the user can minimize storage costs.



105
TABLE 11.1
DIMENSIONS OF ARRAYS IN COMMON

Array Dimension Location

PBOT NX, NY, NZ COMMON /BUBBLE/
AW NX, NY, NZ COMMON /COEF/
AE NX, NY, NZ COMMON /COEF/
AN NX, NY, NZ COMMON /COEF/
AS NX, NY, NZ COMMON /COEF/
AB NX, NY, NZ COMMON /COEF/
AT NX, NY, NZ COMMON /COEF/
E NX, NY, NZ COMMON /COEF/
B NX, NY, NZ COMMON /COEF/
PN NX, NY, NZ COMMON /SARRAY/
SON NX, NY, NZ COMMON /SARRAY/
SWN NX, NY, NZ COMMON /SARRAY/
SGN NX, NY, NZ COMMON /SARRAY/
SO1 NX, NY, NZ COMMON /SARRAY/
SW1 NX, NY, NZ COMMON /SARRAY/
SG1 NX, NY, NZ COMMON /SARRAY/
A1 NX, NY, NZ COMMON /SARRAY/
A2 NX, NY, NZ COMMON /SARRAY!
A3 NX, NY, NZ COMMON /SARRAY!
SUM NX, NY, NZ COMMON /SARRAY/
GAM NX, NY, NZ COMMON /SARRAY/
QS NX, NY, NZ COMMON /SARRAY/
BMAT NMAX, NMAX COMMON /SBAND1/
QVEC NMAX COMMON /SBAND1/
PVEC NMAX COMMON /SBAND1/
KX NX, NY, NZ COMMON /SPARM1/
KY NX, NY, NZ COMMON /SPARM1/
KZ NX, NY, NZ COMMON /SPARM1/
EL NX, NY, NZ COMMON /SPARM1/
TX NXP, NY, NZ COMMON /SPARM1/
TY NX, NYP, NZ COMMON /SPARM1/
TZ NX, NY, NZP COMMON /SPARM1/
P NX, NY, NZ COMMON /SPRTPS/
SO NX, NY, NZ COMMON /SPRTPS/
SW NX, NY, NZ COMMON /SPRTPS/
SG NX, NY, NZ COMMON /SPRTPS/
DX NX, NY, NZ COMMON /VECTOR/
DY NX, NY, NZ COMMON /VECTOR/
DZ NX, NY, NZ COMMON /VECTOR/
IQN1 NW COMMON /VECTOR/
IQN2 NW COMMON /VECTOR/
IQN3 NW COMMON /VECTOR/
BO NX, NY, NZ COMMON /SSOLN/
BW NX, NY, NZ COMMON /SSOLN/
BG NX, NY, NZ COMMON /SSOLN/
QO NX, NY, NZ COMMON /SSOLN/
QW NX, NY, NZ COMMON /SSOLN/
QG NX, NY, NZ COMMON /SSOLN/
GOWT NX, NY, NZ COMMON /SSOLN/
GWWT NX, NY, NZ COMMON /SSOLN/
GGWT NX, NY, NZ COMMON /SSOLN/
O1 NXP, NY, NZ COMMON /SSOLN/
W1 NXP, NY, NZ COMMON /SSOLN/


106
TABLE 11.1: DIMENSIONS OF ARRAYS IN COMMON (CONTINUED)

Array Dimension Location

O2 NX, NYP, NZ COMMON /SSOLN/
W2 NX, NYP, NZ COMMON /SSOLN/
O3 NX, NY, NZP COMMON /SSOLN/
W3 NX, NY, NZP COMMON /SSOLN/
QOWC NX, NY, NZ COMMON /SSOLN/
VP NX, NY, NZ COMMON /SSOLN/
CT NX, NY, NZ COMMON /SSOLN/
OOIP NZ DIMENSION
OWlP NZ DIMENSION
ODGIP NZ DIMENSION
OFGIP NZ DIMENSION
INDD4 NX, NY, NZ COMMON /D4IND/
IPLANE NX + NY + NZ COMMON /D4IND/
SAT NTE COMMON /SPVT/
KROT NTE COMMON /SPVT/
KRWT NTE COMMON /SPVT/
KRGT NTE COMMON /SPVT/
PCOWT NTE COMMON /SPVT/
PCGOT NTE COMMON /SPVT/
POT NTE COMMON /SPVT/
MUOT NTE COMMON /SPVT/
BOT NTE COMMON /SPVT/
BOPT NTE COMMON /SPVT/
RSOT NTE COMMON /SPVT/
RSOPT NTE COMMON /SPVT/
PWT NTE COMMON /SPVT/
MUWT NTE COMMON /SPVT/
BWT NTE COMMON /SPVT/
BWPT NTE COMMON /SPVT/
RSWT NTE COMMON /SPVT/
RSWPT NTE COMMON /SPVT/
PGT NTE COMMON /SPVT/
MUGT NTE COMMON /SPVT/
BGT NTE COMMON /SPVT/
BGPT NTE COMMON /SPVT/
CRT NTE COMMON /SPVT/
PID NW, NZ COMMON /SRATE/
PWF NW, NZ COMMON /SRATE/
PWFC NW, NZ COMMON /SRATE/
GMO NW, NZ COMMON /SRATE/
GMW NW, NZ COMMON /SRATE/
GMG NW, NZ COMMON /SRATE/
CUMO NW, NZ COMMON /SRATE/
CUMW NW, NZ COMMON /SRATE/
CUMG NW, NZ COMMON /SRATE/
KIP NW COMMON /SRATE/
WELLID NW COMMON /SRATE/
LAYER NW COMMON /SRATE/
QVO NW COMMON /SRATE/
QVW NW COMMON /SRATE/
QVG NW COMMON /SRATE/
QVT NW COMMON /SRATE/



107
TABLE 11.2
MAIN PROGRAM DATA STATEMENTS

DATA TX, TY, TZ/(NXP*NY*NZ)*0.0, (NX*NYP*NZ)*0.0, (NX*NY*NZP)*0.0/

DATA CUMO, CUMW, CUMG/(NW*NZ)*0.0, (NW*NZ)*0.0, (NW*NZ)*0.0/

DATA AW, AS, AT/NMAX*0.0, NMAX*0.0, NMAX*0.0/

DATA AE, AN, AB/NMAX*0.0, NMAX*0.0, NMAX*0.0/

DATA OW, OE, WW, WE/(NXP*NY*NZ)*0.0, (NXP*NY*NZ)*0.0, (NXP*NY*NZ)*0.0,
(NXP*NY*NZ)*0.0/

DATA OS, ON, WS, WN/(NX*NYP*NZ)*0.0, (NX*NYP*NZ)*0.0, (NX*NYP*NZ) *0.0,
(NX*NYP*NZ) *0.0/

DATA OT, OB, WT, WB/(NX*NY*NZP)*0.0, (NX*NY*NZP)*0.0, (NX*NY*NZP) *0.0, (NX*NY*NZP)
*0.0/

DATA IM, JM, KM, ETI, FT, FTMAX/NX, NY, NZ, 0.0, 0.0, 0.0/




108
TABLE 11.3
DIMENSION STATEMENTS IN SUBROUTINES


Subroutine Dimension

GRID1 SUM(NX,NY), VAREL(NX,NY), RDXL(NX), RDYL(NY), RDZL(NZ)

INTERP X(NTE), Y(NTE)

INTPVT X(NTE), Y(NTE)

LSOR UN(NXYMAX), AZL(NXYMAX), BZL(NXYMAX), CZL(NXYMAX), DZL(NXYMAX),
UZL(NXYMAX)

LTRI X(NXYMAX), BETA(NXYMAX), GAMMA(NXYMAX), W(NXYMAX)

PARM1 RPHL(NZ), RKXL(NZ), RKYL(NZ), RKZL(NZ)

BAND GVEC(NMAX)

D4 AD4 (NMAX,NMAX), BD4 (NMAX), XD4 (NMAX)
ASUB
NMAX NMAX
BSUB
NMx
XSUB
NMAX
2 2 2 2
, , ,
|
\

|
.
|
|
\

|
.
|
|
\

|
.
|




109
12. BOAST FORTRAN CODE


The Fortran code for BOAST dimension parameter values are set as:

NX = 10
NY = 10
NZ = 3
NXP = 11
NYP = 11
NZP = 4
NXYMAX = 10
NMAX = 300
NTE = 25
NW = 20
NROW (in BANDIN) = 300
NROW (in D4) = 150

For detailed information on the application of BOAST, see Volume II of this set (Fanchi and
Harpole, 1982).





110
DOE/BC/10033-3(Vol. 2)
(DE83003031)


FOSSIL ENERGY

BOAST: A THREE-DIMENSIONAL, THREE-PHASE BLACK OIL APPLIED SIMULATION
TOOL (VERSION 1.1)

Volume II: Program Users Manual


By J.R. Fanchi
K.J. Harpole
S.W. Bujnowski




September 1982




Work Performed Under Contract No.AC19-80BC10033


Keplinger and Associates, Inc., Tulsa, Oklahoma

and

The BDM Corporation, Bartlesville, Oklahoma




Ba r t l e svi l l e Pr oj e c t Of f i c e
U.S. DEPARTMENT OF ENERGY
Ba r t l e svi l l e , Okl a homa



111
















DISCLAIMER

This report was prepared as an account of work sponsored by an agency of the United
States Government. Neither the United States Government nor any agency thereof, nor
any of their employees, makes any warranty, express or implied, or assumes any legal
liability or responsibility for the accuracy, completeness, or usefulness of any
information, apparatus, product, or process disclosed, or represents that its use would
not infringe privately owned rights. Reference herein to any specific commercial
product, process, or service by trade name, trademark, manufacturer, or otherwise,
does not necessarily constitute or imply its endorsement, recommendation, or favoring
by the United States Government or any agency thereof. The views and opinions of
authors expressed herein do not necessarily state or reflect those of the United States
Government or any agency thereof.








This report has been reproduced directly from the best available copy.




DOE/BC/i0033-3(Vol. 2)
(DE83003031)



BOAST: A THREE-DIMENSIONAL, THREE-PHASE BLACK
OIL APPLIED SIMULATION TOOL (VERSION 1.1)

Volume II: Program User's Manual



By

J. R. Fanchi
K. J. Harpole
Keplinger and Associates, Inc.
Tulsa, Oklahoma

and

S. W. Bujnowski
The BDM Corporation
Bartlesville, Oklahoma





Herbert B. Carroll, Jr., Technical Project Officer
Bartlesville Energy Technology Center
Bartlesville, Oklahoma





Work Performed for the Department of Energy
Under Contract No. DE-AC19-80BC10033







Date Published-September 1982







UNITED STATES DEPARTMENT OF ENERGY



ii
TABLE OF CONTENTS

Errata iv

Chapter
1. General Program Overview 1
Introduction 1
Data Input Requirements 1
Hints on How to Run BOAST 3

2. Initialization Data 4
Grid Dimensions and Geometry 4
Grid Dimensions 4
Modifications to Grid Dimensions 5
Depths to Top of Grid Blocks in layer 1 6
Porosity and Permeability Distributions 7
Porosity and Permeability 7
Modifications to Porosity and Permeability Distributions 8
Transmissibility modifications 9
Relative Permeability and Capillary Pressure Tables 10
Fluid PVT Data Tables 10
Pressure and Saturation Initialization 12
Debug and Diagnostics Code 13
Run Control Parameters 14
Solution Method Specifications 15

3. Recurrent Data 16
Time Step and Output Control 16
Well Information 17

4. Program Output Evaluation 20
Initialization Data 20
Recurrent Data 20

5. Example Input Data Files and Program Validation 22
Program Validation 22
Example 1 One Dimensional Linear Model Showing Buckley-Leverett Calculations 23
Example 2 Two-Dimensional Areal Model Showing Primary Depletions of an
Undersaturated Reservoir 27
Example 3 Cross Section Model Showing Line Drive Waterflooding of an
Undersaturated Reservoir 30
Example 4 Three-Dimensional, 40-Acre, Five-Spot Waterflood 34
Example 5 Comparative Solution Problem 41

Appendix: Example of BOAST Program Output for the Two Dimensional Areal
Example Run Presented in Chapter 5. (Example 2) 48


TABLES

Table
5.1 Input Data for Example 1 23
5.2 Input Data for Example 2 27
5.3 Input Data for Example 3 30
5.4 Input Data for Example 4 34
5.5 Basic Data and Problem Specifications, Example 5 43


iii
TABLE OF CONTENTS (Cont.)


ILLUSTRATIONS

Figure
5.1 BOAST Simulation of Linear Waterflood Displacement 25
5.2 Comparison of BOAST with Commercial Simulators 29
5.3 Production Performance for Example 3 33
5.4 Oil Production vs. Time for Example 4 39
5.5 Water Production Vs Time for Example 4 39
5.6 Gas Production Vs Time for Example 4 40
5.7 Production Well Black Pressure Vs Time, Example 4 40
5.8 Grid Configuration and Problem Specification for Example 5 42
5.9 Oil Rate Vs Time for Example 5 44
5.10 Pressure vs. Time for Example 5, Production Well 44
5.11 Pressure vs. Time for Example 5, Injection Well 1 45
5.12 Gas Saturation vs. Time for Example 5 45
5.13 GOR vs. Time for Example 5 46
5.14 Pressure vs. Grid-Point Location, Example 5 46
5.15 Gas Saturation vs. Grid-Point Location, Example 5, Top layer 47
5.16 Gas Saturation vs. Grid-Point Location, Example 5, Middle Layer 47



iv
ERRATA

BOAST (Version 1.1)
December 6, 1982

Corrections to the black oil simulator BOAST (Version 1.1) are detailed below. No
other program errata are presently known. The Department of Energy BOAST
documentation (Report DOE/BC/10033-3, Volumes I and II, 1982) are the only
references needed.

1. A slight change in the water compressibility CW calculation needs to
be made. The tape listing of BOAST (Version 1.1) computes CW as

CW = - (BWDER-BG(I,J,K)*RSWDER)/B(I,J,K)

The line should read

CW = - (BWDER-BG(I,J,K)*RSWDER)/BW(I,J,K)

Two occurrences of the line need to be changed. These lines are in the MAIN
program (pg. 137 and pg. 139 of Volume I).

2. An undefined variable ("oh") has entered the program in three places
where a ("zero") should be.

a. Subroutine PARM1, pg. 160 of Volume I: Change

IF(NUMKX.EQ.) G T 853

to

IF(NUMKX.EQ.0) G T 853

b. Subroutine TRAN1, pg. 178 of Volume I: Change

IF(NUMTX.EQ. ) G T 100

to

IF(NUMTX.EQ.0) G T 100

C. Subroutine GRID1, pg. 151 of Volume I: Change

IF(NUMDX.EQ. ) G T 853

to



v
IF(NUMDX.EQ.0) G T 853

3. Corrections to the gas production and injection rate units output in the
Summary Report need to be made. To convert from MMSCF to the correct
MSCF, two lines in subroutine MATBAL need to be changed (pg. I-156).



1
Chapter 1.
GENERAL PROGRAM OVERVIEW


Introduction

BOAST is a three-dimensional, three-phase black oil simulator. It was developed
primarily in support of Department of Energy contract number DE-AC19-80-
BC10033. A detailed technical description of BOAST is contained in Volume I
*
. The
present volume is intended to function as an easy-to-use program user's manual.

The BOAST program simulates isothermal, darcy flow in three dimensions. It
assumes reservoir fluids can be described by three fluid phases (oil, gas, and water)
of constant composition with physical properties that depend on pressure only.
These reservoir fluid approximations are acceptable for a large percentage of the
world's oil and gas reservoirs. Consequently, BOAST should have a wide range of
applicability. For example, BOAST can simulate oil and/or gas recovery by fluid
expansion, displacement, gravity drainage, and capillary imbibition mechanisms.
Some of the typical field production problems which can be handled by BOAST
include: primary depletion studies, pressure maintenance by water and/or gas
injection, and evaluation of secondary recovery waterflooding and displacement
operations.

Technically, BOAST is a finite-difference, implicit pressure-explicit saturation
(IMPES) numerical simulator. It contains both direct (BAND, D4) and iterative
(LSOR) solution techniques for solving systems of algebraic equations. The well
model in BOAST allows specification of rate or pressure constraints on well
performance, and the user is free to add or recomplete wells during the simulation.
Included in BOAST is a pressure initialization algorithm, a bubble point tracking
scheme, an automatic time step control method, and a material balance check on
solution stability. Many user-controlled output options are also available.

Discussion of the above topics, as well as comments on conducting a simulation
model study and a discussion of multidimensional numerical dispersion is
presented in Volume I. Volume II contains an explanation of the input data, a
discussion of the output data, and example problems.


Data Input Requirements

The data input section is divided into two parts: an initialization data section and a
recurrent data section. The initialization data includes the reservoir model grid
dimensions and geometry, the distribution of porosity and permeability within the
reservoir, fluid PVT data, rock relative permeability and capillary pressure data,

*
Fanchi, J. R., K. J. Harpole, and S. W. Bujnowski: "BOAST: A Three-Dimensional, Three-Phase Black Oil Applied
Simulation Tool, Volume I: Technical Description and FORTRAN Code"; U.S. DOE, BETC (1982).



2
initial pressure and saturation distributions within the reservoir, specification of
solution method, and various run control parameters. The recurrent data includes
the location and initial specifications of wells in the model, time step control
information for advancing the simulation through time, a schedule of individual well
rate and/or pressure performance, changes in well completions and operations over
time, and controls on the type and frequency of printout information provided by the
simulator.

This section will be concerned only with the order and format of input data required
by the model. A discussion of sources of reservoir data and data preparation is
given in Volume I of the BOAST documentation in Chapters 8 and 9. Those
unfamiliar with numerical simulation are advised to look over Volume I (with
particular attention to Chapters 8 and 9) before attempting to conduct a reservoir
simulation study using BOAST.

Very Important! The following comments concerning data input format conventions,
especially with regard to reading of arrays of data, apply to all of the input data.

1. Throughout this documentation, input data lines will be referred to as
cards". This can mean either physical computer input cards, in the case of
card input, or individual lines in an input data set as entered on a CRT or line-
printing terminal. The input format to be used for each card is indicated in
parentheses immediately following the card description.

2. Title cards are read before each major and many minor sections of input
data. A card must be read in each case unless specified otherwise in the
documentation. These cards are designed to serve as delineators to make
the input data file easier to read and edit.

3. In many cases, codes are read which will specify the type of input to follow
and the number of values which will be read. This is necessary in order to
provide some flexibility in the options available for data input.

4. All data values (except title cards) are read under fixed format input. Most of
the formats are I5, F10.0, or F8.0 formats to allow for easier reading and a
more easily edited input data file. NOTE: Blanks will be read as zero values
by the program!

5. If a full grid of input values (II x JJ x KK) must be read for a particular
parameter, the following input order must be followed:

Layer 1 (K = 1) is read first. The data in each layer are read in by rows,
starting with Row 1 (J = 1). Values of the parameter for columns I = 1 to II are
read for the first row, starting with Column 1 (I = 1). After II values have been
read for the first row, values are read for the second row (J = 2), etc. until JJ
rows of data are read. This process is repeated for layer 2 (K = 2), etc. until
KK layers of data are read.



3
A FORTRAN input algorithm, as used by the program, might look like:

D / 0 100 K = 1, KK
D / 0 200 J = 1, JJ
200 READ (5,300) (Parameter (I,J,K), I = 1, II)
100 CONTINUE
300 FORMAT (8F10.0)

6. Remember that BOAST uses a left-handed coordinate reference. Thus, each
layer will be laid out as shown below, and z-direction values will increase
going down.

I = 1 I = 2 . . .

J = 1

J = 2

.
.
.


4
Hints on How to Run BOAST

BOAST is a sophisticated engineering tool for solving reservoir engineering and
production problems. In order to provide the flexibility required to handle the wide
variety of problems encountered in reservoir management and production
operations, a general reservoir simulation program such as BOAST becomes
necessarily somewhat complex due to the many options included in the program.

Perhaps the best way to become familiar with running BOAST is to first scan
through the data input sections to get familiar with the general format of the input
and then look at the examples provided in Chapter 5. These problems contain at
least one example of most of the more commonly used input options in BOAST.
There should be one of the examples that is close to the type of problem you wish
to run (1-D, 2-D, areal, 2-D cross-section, or 3-D). This example can be used as a
general go-by for your problem.

While no default values are provided for input parameters (a value must be entered
for all parameters), an attempt has been made to provide guidelines by including
"typical values" for most parameters.

An automatic time step control feature has been included in BOAST. It is
recommended that automatic time step control be used on most runs. This feature
will allow the program to operate most efficiently by increasing time step size when
conditions are not changing rapidly, and yet will provide the greater stability of
smaller time steps during rapidly changing conditions such as in the transition
through the bubble-point pressure from undersaturated to saturated conditions. A
minimum time step size of 0.1 day is recommended for automatic time step control.
A smaller time step may be necessary depending on the application. For example,
simulation of a laboratory core flood could require a minimum time step of 0.01 day
or smaller. All default values suggested in this manual are intended for field-scale
applications. This small time step will only be used if it is needed to meet the user
specified maximum pressure and saturation changes over a time step.




5
Chapter 2.
INITIALIZATION DATA


Initialization data cards describe the reservoir model grid dimensions and geometry,
the distribution of porosity and permeability, relative permeability and capillary
pressure data, fluid PVT data, initial pressure and saturation distributions within the
reservoir, specification of the solution method to be used, and various run control
and diagnostic parameters.

These cards are read only once at the beginning of the simulation. They must be
read in the order in which they appear in the following input data sections.


GRID DIMENSIONS AND GEOMETRY

Grid Dimensions

1. Title card (40A2)

2. Number of grid blocks in the model grid (3I5)

II = number of grid blocks in the x-direction
JJ = number of grid blocks in the y-direction
KK = number of grid blocks in the z-direction

3. Title card (40A2)

4. Codes for type of input to be used (3I5)

KDX = code for controlling input of x-direction grid dimensions
KDY = code for controlling input of y-direction grid dimensions
KDZ = code for controlling input of z-direction grid dimensions

Code Meaning


KDX = -1 The x-direction grid dimensions are the same for all blocks in
the grid (only one value must be read.)
KDX = 0 The x-direction dimensions are read for each grid block in the
first row (J = 1) of layer one (K = 1). These same x-direction
dimensions are assigned to all other rows and all other layers
in the model grid. (NOTE: II values must be read.)
KDX = +1 The x-direction dimensions are read for every grid block in
layer one (K = 1). These same x-direction dimensions are
assigned to all other layers in the model grid. (NOTE: II x JJ
values must be read - see page 1.2.0 for array input format
convention.)


6
KDY = -1 The y-direction grid dimensions are the same for all blocks in
the grid (only one value must be read.)
KDY = 0 The y-direction dimensions are read for each grid block in the
first column (I = 1) of layer one (K =I). These same y-direction
dimensions are assigned to all other columns and all other
layers in the model grid. (NOTE: JJ values must be read.)
KDY = +1 The y-direction dimensions are read for every grid block in
layer one (K = 1). These same y-direction dimensions are
assigned to all other layers in the model grid. (NOTE: II x JJ
values must be read - see page 1.2.0 for array input format
convention.)
KDZ = -1 The z-direction grid dimensions (block thicknesses) are the
same for all blocks in the grid (only one value must be read.)
KDZ = 0 A constant value of thickness is read for each layer in the grid;
each layer may have a different, but constant value. (NOTE: KK
values must be read.)
KDZ = +1 The z-direction grid dimensions (block thicknesses) are read
for every block in the model grid. (NOTE: II x JJ x KK values
must be read - see page 1.2.0 for array input format
convention.)

5. x-direction grid dimension(s) (DX) (10F8.0)

If KDX = -1, only one constant value is read.
If KDX = 0, II values are read (one for each row).
If KDX = +1, (II x JJ) values are read (one for each grid block in layer one).

6. y-direction grid dimension(s) (DY) (10F8.0)

If KDY = -1, only one constant value is read.
If KDY = 0, JJ values are read (one for each row).
If KDY = +I, (II x JJ) values are read (one for each grid block in layer one).

7. z-direction grid dimension(s) (DZ) (10F8.0)

If KDZ = -1, only one constant value is read.
If KDZ = 0, KK values are read (one for each layer).
If KDZ = +I, (II x JJ x KK) values are read (one for each block in the model
grid).


Modifications to Grid Dimensions

1. Title card (40A2)

2. Number of grid blocks where grid dimensions are to be changed; plus print
code (4I5)



7
NUMDX = number of grid blocks where x-direction grid dimension (DX) is to
be changed
NUMDY = number of grid blocks where y-direction grid dimension (DY) is to
be changed
NUMDZ = number of grid blocks where z-direction grid dimension (DZ) is to
be changed
IDCODE = print code:
IDCODE = 0 means do not print the modified grid dimensions
IDCODE = 1 means print the modified grid dimensions

3. x-direction grid dimension (DX) modification (3I5, F10.0)
Omit this card if NUMDX = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
DX = new value of x-direction grid dimension (DX) for block (I,J,K)

NOTE: NUMDX cards must be read.

4. y-direction grid dimension (DY) modification (3I5, F10.0)
Omit this card if NUMDY = 0.

I = x-coordinate of block to be modified
J = Y-coordinate of block to be modified
K = z-coordinate of block to be modified
DY = new value of y-direction grid dimension (DY) for block (I,J,K)

NOTE: NUMDY cards must be read.

5. z-direction grid dimension (DZ) modification (3I5, F10.0)
Omit this card if NUMDZ = 0.

I = x-coordinate of block to be modified
J = Y-coordinate of block to be modified
K = z-coordinate of block to be modified
DZ = new value of z-direction grid dimension (DZ) for block (I,J,K)

NOTE: NUMDZ cards must be read.


Depths to Top of Grid Blocks in Layer 1

Remember that under the coordinate system used in BOAST, z-direction values
increase going down. Thus, depths must be read as depths below the user-selected
reference datum (negative values will be read as heights above the datum).

1. Title card (40A2)


8

2. Code for input of depth values (I5)

KEL = Input code:

KEL = 0 means a single constant value is read for the depth to the top
of all grid blocks in layer 1 (i.e., horizontal plane).
KEL = 1 means a separate depth value must be read for each grid
block in layer 1; (II x JJ) values must be read.

3. Depth value(s) (8F10.0)

ELEV = Depth to top of grid block in feet

NOTE: One value is read if KEL = 0. (II x JJ) values must be read if
KEL = 1. II values are read for Row J = 1, then II values are read
for Row J = 2, and so forth until JJ rows are read.

Depths to the top of grid blocks in layers below layer I will be calculated by
adding the layer thickness to the preceding layer top; i.e.,

Top (I,J,K+1) = Top (I,J,K) + DZ (I,J,K).

POROSITY AND PERMEABILITY DISTRIBUTIONS

Porosity and Permeability

1. Title card (40A2)

2. Codes for type of input to be used (4I5)

KPH = code for controlling porosity data input
KKX = code for controlling x-direction permeability data input
KKY = code for controlling y-direction permeability data input
KKZ = code for controlling z-direction permeability data input

Code Meaning

-1 A single constant value is read and assigned to all blocks in the
model grid (one value read).

0 A constant value is read for each of the KK layers in the grid;
individual layers may have a different, but constant, value (KK
values must be read).

+1 A separate value is read for each block in the grid (II x JJ x KK
values must be read - see page 1.2.0 for array input format
convention.)


9

3. Porosity value(s) (10F8.0)

Porosity is read as a fraction (not as a percentage)

If KPH = -1, only one constant value is read
If KPH = 0, KK values are read (one for each layer)
If KPH = +I, (II x JJ x KK) values are read (one value for each block
in the model grid)

4. x-direction (KX) permeability value(s) (10F8.0)

Permeability is read in millidarcies (md)

If KKX = -1, only one constant value is read
If KKX = 0, KK values are read (one for each layer)
If KKX = +I, (II x JJ x KK) values are read (one value for each block
in the model grid)

5. y-direction (KY) permeability value(s) (10F8.0)

Permeability is read in millidarcies (md)

If KKY = -1, only one constant value is read
If KKY = 0, KK values are read (one for each layer)
If KKY = +1, (II x JJ x KK) values are read (one value for each block
in the model grid)

6. z-direction.(KZ) permeability value(s) (10F8.0)

Permeability is read in millidarcies (md)

If KKZ = -1, only one constant value is read
If KKZ = 0, KK values are read (one for each layer)
If KKZ = +1, (II x JJ x KK) values are read (one value for each block in the
model grid)


Modifications to Porosity and Permeability Distributions

1. Title card (40A2)

2. Number of grid blocks where porosity and/or permeability values are to be
changed; and print code (5I5)

NUMP = number of grid blocks where porosity values are to be changed



10
NUMKX = number of grid blocks where x-direction permeability values (KX)
are to be changed
NUMKY = number of grid blocks where y-direction permeability values (KY)
are to be changed
NUMKZ = number of grid blocks where z-direction permeability values (KZ)
are to be changed
IPCODE = print code:
IPCODE = 0 means do not print modified porosity and
permeability distributions
IPCODE = 1 means print modified porosity and permeability
distributions

3. Porosity modifications (3I5, F10.0)
Omit this card if NUMP = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
PHI = new value of porosity for block (I,J,K)
NOTE: Porosity must be entered as a fraction.

NOTE: NUMP cards must be read.

4. x-direction permeability (KX) modifications (3I5, F10.0)
Omit this card if NUMKX = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
KX = new value of x-direction permeability (KX) for block (I,J,K) in md

NOTE: NUMKX cards must be read.

5. y-direction permeability (KY) modifications (3I5, F10.0)
Omit this card if NUMKY = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
KY = new value of y-direction permeability (KY) for block (I,J,K) in md

NOTE: NUMKY cards must be read.

6. z-direction permeability (KZ) modifications (3I5, F10.0)
Omit this card if NUMKZ = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified


11
K = z-coordinate of block to be modified
KZ = new value of z-direction permeability (KZ) for block (I,J,K) in md

NOTE: NUMKZ cards must be read.


Transmissibility Modifications

NOTE: It is extremely important to keep in mind the directional convention used in
specifying transmissibility modifications! For example, in grid block (I,J,K):

TX(I,J,K) refers to flow across the boundary between blocks I-1 and I,
TY(I,J,K) refers to flow across the boundary between blocks J-1 and J, and
TZ(I,J,K) refers to flow across the boundary between blocks K-1 and K.

1. Title card (40A2)

2. Number of grid blocks where transmissibilities are to be changed; plus print
code (4I5)

NUMTX = number of grid blocks where x-direction transmissibility (TX) is to
be changed
NUMTY = number of grid blocks where Y-direction transmissibility (TY) is
to be changed
NUMTZ = number of grid blocks where z-direction transmissibility (TZ) is to
be changed
ITCODE = Print Code:
ITCODE = 0 means do not print the modified transmissibility
distributions
ITCODE = 1 means print the modified transmissibility
distributions

3. x-direction transmissibility (TX) modifications (3I5, F10.0)
Omit this card if NUMTX = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
TX = new value of x-direction transmissibility (TX) for block (I,J,K)

NOTE: NUMTX cards must be read.

4. y-direction transmissibility (TY) modifications (3I5, F10.0)
Omit this card if NUMTY = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified


12
TY = new value of y-direction transmissibility (TY) for block (I,J,K)

NOTE: NUMTY cards must be read.

5. z-direction transmissibility (TZ) modifications (3I5, F10.0)
Omit this card if NUMTZ = 0.

I = x-coordinate of block to be modified
J = y-coordinate of block to be modified
K = z-coordinate of block to be modified
TZ = new value of z-direction transmissibility (TZ) for block (I,J,K)

NOTE: NUMTZ cards must be read.


RELATIVE PERMEABILITY AND CAPILLARY PRESSURE TABLES

1. Title card (40A2),
2. Read relative permeability and capillary pressure tables (6F10.0)

SAT1 KRO1 KRW1 KRG1 PCOW1 PCGO1
. .
. .
. .
SATn KROn KRWn KRGn PCOWn PCGOn

SAT = value of phase saturation. NOTE: SAT1 should be -0.10 and SATn
must be 1.10! Read each saturation as a fraction!

KRO = oil phase relative permeability, fraction
KRW = water phase relative permeability, fraction
KRG = gas phase relative permeability, fraction
PCOW = oil/water capillary pressure, psi
PCGO = gas/oil capillary pressure, psi

SAT refers to the saturation of each particular phase, e.g. in a data line
following SAT = 0.20: KRO would refer to oil relative permeability in
presence of 20 percent oil saturation, KRW would refer to water relative
permeability in the presence of 20 percent water saturation, KRG would refer
to gas relative permeability in the presence of 20 percent gas saturation,
PCOW would refer to the oil/water capillary pressure in the presence of 20
percent water saturation, and PCGO would refer to the gas/oil capillary
pressure in the presence of 20 percent gas saturation.


FLUID PVT DATA TABLES

1. Title card (40A2)


13

2. Bubble point pressure, undersaturated oil properties, maximum PVT table
pressure (5F10.0)

PBO = initial oil bubble point pressure, psia
VSLOPE = slope of the oil viscosity (
o
) versus pressure curve for
undersaturated oil (i.e., for pressures above PBO). This value
is
o
/P in cp/psi.
BSLOPE = slope of the oil formation volume factor (B
o
) versus pressure
curve for undersaturated oil (pressure above PBO). This value
is B
o
/P in RB/STB/psi.
(NOTE: BSLOPE should be a negative number and is not the
same as the undersaturated oil compressibility!)
RSLOPE = slope of the solution gas-oil ratio versus pressure curve for
undersaturated oil (pressure above PBO). This value is
RSO/P in SCF/STB-psi. (It will normally be zero.)

PMAX = maximum pressure entry in all PVT tables, psia

3. Title card (40A2)

4. Oil PVT table (8F10.0)

P1 MUO1 BO1 RSO1
. .
. .
. .
PMAX MUO @ PMAX BO @ PMAX RSO @ PMAX

P = pressure, psia (NOTE: Last entry in the table must be PMAX as
specified in the preceding read.)
MUO = saturated oil viscosity, cp
BO = saturated oil formation volume factor, RB/STB
RSO = saturated oil solution gas-oil ratio, SCF/STB

Very Important! The oil properties must be entered as saturated oil data over
the entire pressure range. Laboratory saturated oil data will generally have
to be extrapolated above the measured bubble point pressure to cover the
maximum pressure range anticipated during the simulation run. The
saturated oil data are required because of the bubble point tracking routine
used by BOAST (further discussion in Volume I, Chapter 7). Note that the
saturated oil data above the initial bubble point pressure will only be used if
the local reservoir pressure rises above the initial bubble point pressure and
there is free gas introduced into the region (an example of this would be
pressure maintenance by gas injection into the oil zone).

5. Title card (40A2)



14
6. Water PVT table (8F10.0)

P1 MUW1 BW1 RSW1
. .
. .
. .
PMAX MUW @ PMAX BW @ PMAX RSW @ PMAX

P = pressure, psia (NOTE: The last entry in the table must be PMAX.)
MUW = water viscosity, cp
BW = water formation volume factor, RB/STB
RSW = water solution gas-water ratio, SCF/STB

Commonly, the assumption is made in black oil simulations that the solubility
of gas in the water can be neglected. In this case, set RSW = 0.0 for all
pressures. BOAST incorporates this water PVT table to handle such
situations as gas production from geopressured aquifers and for any case
where gas solubility in water is considered to be of significance to the
solution of the problem.

7. Title card (40A2)

8. Gas PVT table and rock compressibility (8F10.0)

P1 MUG1 BG1 CR1
. .
. .
. .
PMAX MUG @ PMAX BG @ PMAX CR @ PMAX

P = pressure, psia (NOTE: Last entry in table must be PMAX.)
MUG = gas viscosity, cp
BG = gas formation volume factor, RCF/SCF
CR = pressure dependent rock compressibility, psi
-1


9. Title card (40A2)

10. Stock tank fluid densities (8F10.0)

RHOSCO = stock tank oil density, lb./cu. foot
RHOSCW = stock tank water density, lb./cu. foot
RHOSCG = gas density at standard conditions. lb./cu. foot


PRESSURE AND SATURATION INITIALIZATION

BOAST contains two options for pressure and saturation initialization. The initial
pressure distribution can either be calculated by the program for equilibrium


15
conditions given the location of the gas/oil contact and oil/water contact and the
pressure at both contacts (Option 1), or the initial pressure distribution can be read
on a block-by-block basis as in the case of a non-equilibrium initialization (Option
2). Saturations (SO, SW, SG) can either be read as constant values over the entire
grid (Option 1) or the entire SO and SW distributions are read on a block-by-block
basis, and the program calculates the SG distribution for each block as SG = 1.0 -
SO - SW (Option 2).

1. Title card (40A2)

2. Codes for controlling pressure and saturation initialization (2I5)

KPI = pressure initialization code

KSI = saturation initialization code

Code Meaning

KPI = 0 Use equilibrium pressure initialization. Input required will be
pressures at the oil/water contact and gas/oil contact and
depths to each contact.
KPI = 1 Use non-equilibrium pressure initialization. Pressures for each
grid block must be read on a block-by-block basis. (NOTE: II x
JJ x KK values must be read.)
KSI = 0 Initial oil, water, and gas saturations are constant over the
entire model grid. (NOTE: Three values must be read - SOI,
SWI, SGI.)
KSI = 1 Oil and water saturations must be read for each grid block on a
block-by-block basis; the gas saturations for each block will be
calculated by the program. (NOTE: 2 x II x JJ x KK values must
be read.)

3. Pressure initialization data (10F8.0)

If KPI = 0 (Equilibrium initialization)

PWOC = pressure at the water/oil contact, psia
PGOC = pressure at the gas/oil contact, psia
WOC = depth to the water/oil contact, in feet below datum
GOC = depth to the gas/oil contact, in feet below datum

If KPI = 1 (Non-equilibrium initialization)

Initial pressures are read for each grid block in the model grid. (NOTE: II x
JJ x KK pressures must be read -see page 1.2.0 for array input format
convention.)

4. Saturation initialization data (10F8.0)


16

If KSI = 0 (Constant saturation case)

SOI = initial oil saturation to be assigned to all blocks in the model,
fraction
SWI = initial water saturation to be assigned to all blocks in the model,
fraction
SGI = initial gas saturation to be assigned to all blocks in the model,
fraction

If KSI = 1 (Non-equilibrium initialization)

SO Array: Initial oil saturations are read for each grid block in the model
grid. (NOTE: II x JJ x KK oil saturation values must be read -
see page 1.2.0 for array input format convention.)

(AND)

SW Array: Initial water saturations are read for each grid block in the
model grid. (NOTE: II x JJ x KK water saturation values must be
read.)


DEBUG AND DIAGNOSTICS CODES

Several codes for controlling diagnostics output for use in program debugging are
provided. These codes will normally always be set to zero. These codes will not
provide information for debugging data input problems. Activating any of the codes
will generate an extremely large volume of output!

1. Title card (40A2)

2. Codes for controlling diagnostic output (5I5)

KSN1 = LSOR parameter debug output control
KSM1 = solution matrix debug output control
KCO1 = compressibility and volume factor debug output control
KTR = transmissibility debug output control
KCOF = density and saturation debug output control

CODE Meaning

0 Do not print diagnostics output
1 Print diagnostics output


RUN CONTROL PARAMETERS



17
1. Title card (40A2)

2. Run control parameters (I5, 7F10.0)

NMAX = Maximum number of time steps allowed before run is
terminated.

FACT1 = Factor for increasing time step size under automatic time step
control (set FACT1 = 1.0 for fixed time step size). A common
value for FACT1 is 1.25.

FACT2 = Factor for decreasing time step size under automatic time step
control (set FACT2 = 1.0 for fixed time step size). A common
value for FACT2 is 0.5.
TMAX = Maximum real time to be simulated during this run, days (run
will be terminated when time exceeds TMAX).

WORMAX = Limiting maximum field water-oil ratio (run will be terminated
when total producing WOR exceeds WORMAX).

GORMAX = Limiting maximum field gas-oil ratio, in SCF/STB (run will be
terminated when-total producing GOR exceeds GORMAX).

PAMIN = Limiting minimum field average pressure, psia (run will be
terminated when average reservoir pressures fall below
PAMIN).

PAMAX = Limiting maximum field average pressure, psia (run will be
terminated when average reservoir pressure exceeds PAMAX).

NOTE: Additional discussion of the automatic time step control method and
parameters FACT1, FACT2 is contained in Chapter 7 of Volume I.



18
SOLUTION METHOD SPECIFICATIONS

1. Title card (40A2)

2. Solution method control parameters (2I5, 6F10.0)

NOTE: Additional discussion of Solution methods is contained in Chapter 5
of Volume I.

KSOL = Solution method code

KSOL Method

1 Direct solution - band algorithm (use with one-
dimensional problems)
2 LSOR (use with large two-dimensional and three-
dimensional problems)

3 Direct solution - D4 algorithm (use with two-dimensional
problems)

MITR = Maximum number of LSOR iterations per time step. A typical
value for MITR is 250.

OMEGA = Initial LSOR acceleration parameter. Initial values for OMEGA
should be in the range 1.0 < w < 2.0. A typical initial value for
OMEGA would be 1.7. The program will optimize OMEGA as the
solution proceeds. Further discussion of LSOR solution control
parameters is presented in Volume I, Chapter 5.

TOL = Maximum acceptable pressure change for convergence of LSOR
iterations, psi. A typical value for TOL would be 0.100.

TOL1 = Parameter for determining when to change OMEGA. A typical
value for TOL1 would be 0.001. (NOTE: If TOL1 = zero, the initial
value entered as OMEGA above will be used for the entire run.)

DSMAX = Maximum saturation change permitted over a time step, fraction.
The time step size will be reduced by FACT2 if the saturation
change of any phase in any grid block exceeds DSMAX during a
time step. A typical value for DSMAX would be 0.05.

DPMAX = Maximum pressure change permitted over a time step, psi. The
time step size will be reduced by FACT2 if the pressure change in
any grid block exceeds DPMAX during a time step. A typical
value for DPMAX would be 100 psi.




19
Chapter 3.
RECURRENT DATA

Recurrent data cards are read repeatedly during the course of the simulation run.
These data include the location and specification of wells in the model, changes in
well completions and field operations over time, a schedule of well rate and/or
pressure performance over time, time step control information for advancing the
simulation through time, and controls on the type and frequency of printout
information provided by the simulator.

A general flow diagram outlining the data input structure for recurrent data is shown
below:
























1. Title card (40A2). This card is read only once to signify the start of the
recurrent data section.



TIME STEP AND OUTPUT CONTROL

NOTE: The two time step and output control cards below must be read to start the
simulation (i.e., at TIME = ZERO) and at the beginning of each time interval defined
by (ICHANG x DT) below.

1. Time step and output control codes (9I5)
Enter Recurrent Data Section
Read Title Card (only once)
Read Time Step and Output Control
Data
Is IWLCNG = 1?
(this code was read on the
preceding pair of cards)
Yes, IWLCNG = 1
No, IWLCNG = 0
Read New or Revised Well
Information


20

IWLCNG = Code to tell program whether or not the well information cards
should be read this time step.

Code = Meaning

IWLCNG = 0 Do not read well information this time step
IWLCNG = 1 Read well information this time step
NOTE: If IWLCNG = 1, well information cards must be read. The
new well information will apply during the next time step.

ICHANG = Number of time steps for which the output control and time
step control information will apply.
IWLREP = Output code to control printing of the well report
ISUMRY = Output code to control printing of the time step summary report
IPMAP = Output code to control printing of the map of grid block
pressures
ISOMAP = Output code to control printing of the grid block oil saturations
ISWMAP = Output ode to control printing of the grid block water
saturations
ISGMAP = Output code to control printing of the grid block gas
saturations
IPBMAP = Output code to control printing of the grid block saturation
pressures (normally set IPBMAP =0)

Value of Meaning
Output Code
0 Do not print the report/array
1 Print the report/array at every time step
during this interval

2. Time step control information (3F10.0)

DT = Initial time step size, in days (Initial time step size may be
reduced by automatic time step control if saturation or
pressure limits are exceeded.)

NOTE: The total time for which the codes in card 1 and the
information on this card (2) will apply will be for
(ICHANG x DT), days.

DTMIN = Minimum time step size to be taken during this period,
days. (This value is commonly set to 0.1 days.)

DTMAX = Maximum time step size to be taken during this period,
days. (Should not be more than 30 days.)




21
WELL INFORMATION

NOTE: The set of cards below is read only if IWLCNG = 1 in the preceding pair of
time step and output control cards.

1. Title card (40A2)

2. Total number of wells in the model (I5)

NVQN = Number of wells for which well information is to be read.

NOTE: Wells may be added or re-completed at any time during the
simulation. However, once a well has been specified, it must be re-
specified every time this card is read, even if the well is currently
shut in!

NOTE: Cards 3 and 4 below must be read together. NVQN sets of these cards must
be read!

3. Well information (A5, 5I5, 4F10.0)

WELLID = Five character well name

I = x-coordinate of grid block containing this well
J = y-coordinate of grid block containing this well
PERF1 = Layer number of the uppermost completion layer for this well
NLAYER = Total number of consecutive completion layers, starting with
and including PERF1.

Thus, in a five-layer model grid, if a well is completed in layers 2,
3, and 5, set PERF1 = 2 and NLAYER = 4. Note that in this case
layer 4 must be included in NLAYER even though layer 4 is not
perforated. The PID value for layer 4 will be set to zero in card 7
below.

KIP = Code for specifying both well type and whether the well's
production (injection) performance is determined by specifying
rates or by specifying flowing bottomhole pressure and also
whether an explicit or implicit pressure calculation is to be
made. For most cases, the explicit pressure calculation is
recommended. (For more details see Volume I, Chapter 6.)

Code Meaning

KIP = 3 Gas well - rates specified
KIP = 2 Water well - rates specified
KIP = 1 Production (oil) well - rates specified


22
KIP = -1 Production (oil) well - PI and FBHP control (explicit
pressure calculation)
KIP = -2 Water well - PI and FBHP control (explicit pressure
calculation)
KIP = -3 Gas well - PI and FBHP control (explicit pressure
calculation)
KIP = -11 Production (oil) well - PI and FBHP control (implicit
pressure calculation)
KIP = -12 Water well - PI and FBHP control (implicit pressure
calculation)

KIP = -13 Gas well - PI and FBHP control (implicit pressure
calculation)

NOTE: Gas wells (KIP = 3, -3, or -13) will produce or inject single phase gas
only; water wells (KIP = 2, -2, or -12) will produce or inject single
phase water only; production (oil) wells (KIP = 1, -1, or -11) will
produce three phases in proportions determined by reservoir
conditions and well constraints.

NOTE: The following four values on this card are specified oil, water, gas, and total
fluid rates for the well. A maximum of one of the four values may be non-
zero. If KIP (above) is negative, all four values should be read as zero.

The sign convention used when reading rates is as follows:

- Negative rates indicate fluid injection

- Positive rates indicate fluid production

QO = Oil rate, STB/D (non-zero only if KIP = 1 and QT is zero)
QW = Water rate, STB/D (non-zero only if KIP = 2)
QG = Gas rate, MCF/D (non-zero only if KIP =3)
QT = Total fluid rate, STB/D (non-zero only if KIP = 1 and QO is zero)

The total fluid rate given by QT is the oil plus water plus gas production for
the well or the total reservoir voidage.

4. Well information card(s) (2F10.0)

NOTE: NLAYER of these cards must be read for each WELLID (even if the
well is rate controlled). Each of these cards specifies a layer flow
index (PID) and flowing bottomhole pressure (FBHP) for one
completion layer; thus, NLAYER of these cards must be read. The
first card read applies to the uppermost completion layer (PERF1);
additional cards apply to succeeding layers. If rates are specified for
this well (KIP = +1, +2, or +3), PWF will not be used and should be read
as zero; however, PI will be used to calculate a FBHP for the well.


23
This FBHP will be printed out on the well report, but it will not be used
in any way to control the well performance.

PID = Layer flow index

Layer flow index is calculated as follows:

PID
Kh
DX DY
r
S
w
=

(
(
+
0 00708
0121
.
ln
. *


where, K = layer absolute permeability, md
h = layer thickness, feet
DX = x-direction grid block dimension, feet
DY = y-direction grid block dimension, feet
r
w
= wellbore radius, feet
s = layer skin factor

Further discussion of the layer flow index (PID) and its relation to field-
measured productivity index is included in Chapter 6 of Volume I.

PWF = Layer flowing bottomhole pressure (FBHP), psia. This value is
used only if KIP is negative for this well. If rates are specified for
this well (KIP = +1, +2, or +3), set PWF = 0.

NOTE: Formation damage or stimulation at any point in time can be
handled on a layer-by-layer basis by changing the layer PI.

Very Important! Once a well has been completed in a certain layer, that layer must
continue to be specified on all succeeding well information cards, even if the layer
or well is shut in! To shut in a layer, set that layer PID = 0. To shut in a well, set all of
its layer PID's to zero.


24
Chapter 4.
PROGRAM OUTPUT EVALUATION


This chapter provides a brief description of the BOAST program output. An
example program output is included in the Appendix for your reference. (This is the
output to the two-dimensional areal example run discussed in Chapter 5.)

Initialization Data

BOAST always outputs the following initialization data:

1. Grid block sizes;
2. Node midpoint elevations;
3. Porosity distribution;
4. Permeability distribution;
5. Relative permeability and capillary pressure table;
6. PVT table;
7. Slopes calculated from PVT data (including units conversion for internal
program use);
8. Time step control data;
9. Initial fluid volumes-in-place;
10. Initial pressure and saturation arrays; and
11. Initial well information.

Other output can be obtained at the user's command. For example, whenever a
modification option is activated, the user may print out the altered array. It is
worthwhile to do this as a check on the input modifications.


Recurrent Data

Information obtained during the course of the computer run is output, at the user's
discretion, in essentially three formats:

1. Well report;
2. Summary report; and
3. Pressure and saturation distribution arrays.

Well Report:

Rates and cumulative production/injection data for each layer of each well
are summarized in the well report at user-specified times. Field totals are
also included. Units of GOR and WOR are SCF/STB and STB/STB,
respectively.

Summary Report:



25
The Summary Report is the single most useful report of the three output
reports. It contains a concise summary of total field production and
injection, time step and material balance information, and a determination of
where maximum pressure and saturation changes are occurring in the
reservoir model. This information is usually sufficient for monitoring the
model performance when more detailed output is not needed.

Material balance estimates and their meaning are discussed in Volume I. As a
general rule, maximum saturation changes should be under 10 percent. If a
maximum saturation change exceeds 10 percent but does not persist for
many additional time steps, it indicates the program encountered a
temporary instability but recovered. On the other hand, changes
consistently above 10 percent indicate problems are present. In either case,
it is wise to decrease the time step size, at least during the period of
excessive saturation changes, to determine if the computed results are
significantly affected.

Unlike the Well Report, the WOR and GOR output in the Summary Report are
ratios of total producing fluid rates. Consequently, these ratios are
comparable to observed field-wide ratios.

Distribution Arrays:

The user may output the pressure, saturation, and bubble point pressure
arrays whenever desired. It is usually unnecessary to print out all five arrays.
The user is advised to be judicious in specifying output. This can avoid the
printing of unnecessarily thick outputs. Normally, the bubble point pressure
array need not ever be printed out. This array provides mainly diagnostic
type information.



26
Chapter 5.
EXAMPLE INPUT DATA FILES AND PROGRAM VALIDATION


This chapter provides five example problems which have been solved using the
BOAST simulator. These examples cover a range of different model grid
configurations and reservoir conditions:

1. One-dimensional, linear model grid showing Buckley-Leverett waterflood
displacement.

2. Two-dimensional, areal model grid showing primary depletion of an
undersaturated reservoir.

3. Two-dimensional, X-Z cross-sectional model grid showing waterflooding of a
layered system with multi-zone completions.

4. Three-dimensional model grid of a heterogeneous 40-acre, five-spot pattern
area showing primary depletion by fluid expansion and solution gas drive
followed by drilling of additional wells and waterflooding the partially
depleted reservoir.

5. Comparative solution example problem: three-dimensional model grid with
high-pressure gas injection into an initially undersaturated oil reservoir
showing oil production by depletion and gas displacement.

In most of these examples, the BOAST solution is compared with either an analytical
solution (in the case of the Buckley-Leverett problem) or with the solution of one or
more commercially available black oil simulators on the same problem.

One important point to note is that in complex, heterogeneous problems, such as
examples 4 and 5, there are significant differences in the results obtained with
different commercially available simulators. This is especially noticeable when
specific results, such as oil rate or GOR at a given point in time, are compared.
However, the general behavior of reservoir performance predictions is similar for all
of the simulators. This should reinforce the point that reservoir simulators do not
provide the answer in terms of exact oil rates, recovery, breakthrough times, etc.
Reservoir simulators are tools which, when supplied with sufficient valid reservoir
description data, can provide a reasonable forecast of the general performance to
be expected from a reservoir under user-specified operating conditions and
constraints. Results from a reservoir simulation study must be viewed as an
approximation to the expected performance and not as an exact performance
prediction.


Program Validation



27
While BOAST has been tested and compared with analytical solutions and results of
other commercially available black oil simulators on a variety of problems, the
program has not been exhaustively tested in all of its options and features against
every possible combination of factors and conditions. Completely comprehensive
validation is not practical due to the complexity of the simulator and the great time
and cost involved. This is the usual case with most simulators, including
commercially marketed simulators. Consequently, we strongly recommend that
results from any simulation be viewed critically and checked for reasonableness"
before the results are accepted.


28

Example 1: One-Dimensional Linear Model Showing Buckley-Leverett Calculation

There are very few analytical solutions available which can be used to check black
oil simulators. One such solution is the Buckley-Leverett line-drive waterflood
calculation. This calculation provides a test of the saturation calculations
performed by BOAST.

Data for the Buckley-Leverett example are presented as BOAST input data on a
standard FORTRAN coding form in Table 5.1. A one-dimensional linear grid is
constructed as a model of a homogeneous, level (zero-dip angle) reservoir. Special
attention should be directed toward the format structure of the relative permeability
and fluid PVT data tables. These tables illustrate the flexibility of the F10.0 format.
Similar flexibility in locating the decimal point also applies to the F8.0 format. The
integer format I5, however, must be right justified as shown.

Oil production under a rate constraint of 600 STB (o = 1.50) per day from one end
grid block is balanced by water injection under rate constraint of 900 STB (
o
= 1.00)
per day into the opposite end grid block. Porosity modifications in the end grid
blocks have been made to account for the block-centered formulation of the finite
difference equations. Frontal advance results from the BOAST calculation are
plotted against the analytical solution in Figure 5.1.


Table 5.1. Input Data for Example 1

Initialization Data

Black Oil Simulator Waterflood Example: Buckley-Leverett.
40 1 1
Grid Block Lengths
-1 -1 -1
20.
1320.
20.
Grid Block Length Modifications
0 0 0 0
Caprock Base Depths
0
8325.
Porosity and Permeability
-1 -1 -1 -1
0.250
200.
200.
20.
Porosity and Permeability Modification Cards
2 0 0 0 1
1 1 1 0.125
40 1 1 0.125
Transmissibility Modifications
0 0 0 0
SAT KRO KRW KRG PCOW PCGO
0.10 0.0 0.0 0.0
0.10 0.0 0.0 0.000


29
0.20 .00147 0.0 .075
0.30 .00228 .0122 .190
0.40 .03700 .0244 .410
0.50 .05710 .0336 .72
0.60 0.134 .0672 .87
0.70 .207 .1344 .94
0.80 .604 .2688 .9667
0.90 1.00 .4704 .9933
1.10 1.0 .5 1.0
PBO VSLOPE BSLOPE RSLOPE PMAX
4014.7 .00 -.000001 .0 9014.7
P VISO BO RSO
14.7 2.0 1.5 1.0
4014.7 2.0 1.5 1.0
9014.7 2.0 1.5 1.0
P VISW BW RSW
14.7 1.00 1.0 .0
4014.7 1.0 1.0 .0
9014.7 1. 1.0 .0
P VISG BG CR
14.7 0.0080 .935800 .000003
264.7 .0096 .067902 .000003
514.7 .0112 .035228 .000003
1014.7 .0140 .017951 .000003
2014.7 .0189 .009063 .000003
2514.7 .0208 .007266 .000003
3014.7 .0228 .006064 .000003
4014.7 .0268 .004554 .000003
5014.7 .0309 .003644 .000003
9014.7 .0470 .002167 .000003
RHOSCO RHOSCW RHOSCG
46.244 62.238 0.0647
Equilibrium Pressure Initialization/Constant Saturations
0 0
4806.6 0.0 8425.0 8300.0
0.80 0.20 0.0
KSN1 KSM1 KCO1 KTR KCOF
0 0 0 0 0
NMAX FACT1 FACT2 TMAX WORMAX GORMAX PAMIN PAMAX
500 1.20 0.5 365.0 20.0 500000.0 14.7 10000.0
KSOL MITR OMEGA TOL TOL1 DSMAX DPMAX
1 100 1.70 0.1 0.0 0.05 100.0


Recurrent Data

1 1 1 1 1 1 1 1 0
3.0 3.0 3.0
RATES
2
PROD 40 1 1 1 1 600.0 0.0 0.0 0.0
1.0 2500.0
INJ 1 1 1 1 2 0.0 -900.0 0.0 0.0
10.0 7500.0
0 8 0 0 0 0 0 0 0
3.0 3.0 3.0
0 1 1 1 1 1 1 0 0
3.0 3.0 3.0
0 9 0 0 0 0 0 0 0
3.0 3.0 3.0
0 1 1 1 1 1 1 0 0
3.0 3.0 3.0
0 9 0 0 0 0 0 0 0


30
3.0 3.0 3.0
0 1 1 1 1 1 1 0 0
3.0 3.0 3.0
0 9 0 0 0 0 0 0 0
3.0 3.0 3.0
0 1 1 1 1 1 1 0 0
3.0 3.0 3.0
0 79 0 0 0 0 0 0 0
3.0 3.0 3.0
0 1 1 1 1 1 1 0 0
3.0 3.0 3.0


31
FIGURE 5.1
BOAST Simulation of a Linear Buckley-Leverett Waterflood Displacement

Water Saturation

Injector Producer
1.0


0.8 X
X X X X X X X X X
O O O O X X X
0.6 O X
O 120 Days X

0.4 O X

O X
0.2 O O O O X X O X O X


0 1.0


X
L
Dimensionless Length

O
X



Numerical Dispersion:

Figure 5.1 shows good agreement except at the piston-like displacement front. The
water saturations calculated by the simulator are smeared, or dispersed, relative to
the Buckley-Leverett front. This dispersing of the saturation front is a phenomenon
inherent in all finite difference simulators and is known as numerical dispersion.
Numerical dispersion is discussed in detail in Appendix A of Volume I of the BOAST
documentation.

An estimate of the value of numerical dispersion of the BOAST formulation present
in the Buckley-Leverett example is given by

D
v
x v
t
num
=
|
\

|
.
|
2
A
A
|
5.1

where, v = frontal advance rate (feet per day),
360 Days
BOAST Analytical


32
x = grid block size in the direction of frontal advance (feet),
t = time step size (day),
= porosity (fraction),
and D
num
= numerical dispersion (feet
2
per day).
For our example, v 1.5 feet per day, = 0.25, x = 20 feet, and t = 3 days which
gives the value of D
num
to be about 1.5
2
feet per day. Although small, this value of
D
num
results in a noticeable smearing of the saturation front shown in Figure 5.1.
More grid blocks could be used to further reduce the smearing if the time step size
is adjusted such that

A
A
t
x
v
=
| .
5.2

Equation (5.2) is a good expression for estimating an optimum time step size. The
maximum time step size is determined by saturation and pressure change
requirements in addition to Equation (5.2).

Before proceeding to higher dimensional examples, an important point should be
noted. There is a widespread misconception in the industry that numerical
dispersion can always be reduced by decreasing time step size. This is true only
for simulators employing implicit saturation formulations. We see from Equation
(5.1) that a decrease in time step size in an IMPES simulator like BOAST increases
numerical dispersion. This should be borne in mind when attempting to sharpen
IMPES simulator calculated saturation fronts.



33
Example 2: Two-Dimensional Areal Model Showing Primary Depletion of an
Undersaturated Reservoir

This example shows a single well producing from the center of a two-dimensional
areal reservoir model grid. The reservoir has areally varying porosity and is initially
1,400 psi undersaturated. The well is rate constrained to a 300 BOPD allowable with
production coming from fluid expansion drive.

The input data file for this example is shown in Table 5.2. The results from this
example illustrate primarily the simulator pressure solution, as saturations do not
change for the undersaturated reservoir. The BOAST pressure solution is
presented in Figure 5.2 along with the solutions to this same problem run on two
commercially available black oil simulators.

The complete BOAST output for this run through the first time step is presented in
the Appendix.


TABLE 5.2 - Input Data for Example 2

BOAST VALIDATION RUN - PRESSURE COMPARISON EXAMPLE

9 9 1
GRID BLOCK LENGTHS
0 0 -1
160. 160. 160. 160. 80. 160. 160. 160 160
160. 160. 160. 160. 80. 160. 160. 160 160
30.
GRID BLOCK LENGTH MODIFICATIONS
0 0 0 0
DEPTH TO TOP OF SAND
0
8345.
POROSITY AND PERMEABILITY DISTRIBUTIONS
+1 -1 -1 -1
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
100.
100.
100.
POROSITY AND PERMEABILITY MODIFICATION CARDS
0 0 0 0 0
0 0 0 0
TRANSMISSIBILITY MODIFICATIONS
0 0 0 0
SAT KRO KRW KRG PCOW PCGO
-0.10 0.00 0.00 0.00
0.02 0.00 0.00 0.00
0.12 0.00 0.00 0.02
0.20 0.00 0.02 0.06
0.30 0.00 0.04 0.20
0.40 0.03 0.07 0.46
0.50 0.09 0.12 0.70
0.60 0.17 0.18 0.87


34
0.70 0.30 0.27 0.91
0.80 0.50 0.51 0.94
0.88 0.75 0.71 0.97
1.00 1.00 1.00 1.00
1.10 1.00 1.00 1.00

PBO VSLOPE BSLOPE RSLOPE PMAX
4014.7 .000046 -.0000232 0.0 9014.7
P MUO BO RSO
14.7 1.0400 1.0620 1.0
264.7 0.9750 1.1500 90.5
514.7 0.9100 1.2070 180.0
1014.7 0.8300 1.2950 371.0
2014.7 0.6950 1.4350 636.0
2514.7 0.6410 1.5000 775.0
3014.7 0.5910 1.5650 930.0
4014.7 0.5100 1.6950 1270.0
5014.7 0.4490 1.8270 1618.0
9014.7 0.2030 2.3570 2984.0
P MUW BW RSW
14.7 0.5000 1.0190 0.0
1014.7 0.5010 1.0160 0.0
2014.7 0.5020 1.0130 0.0
4014.7 0.5050 1.0070 0.0
6014.7 0.5100 1.0010 0.0
9014.7 0.5200 0.9920 0.0
P MUG BG CR
14.7 0.008000 0.935800 0.000003
264.7 0.009600 0.067902 0.000003
514.7 0.011200 0.035228 0.000003
1014.7 0.014000 0.017951 0.000003
2014.7 0.018900 0.009063 0.000003
2514.7 0.020800 0.007266 0.000003
3014.7 0.022800 0.006061 0.000003
4014.7 0.026800 0.04554 0.000003
5014.7 0.030900 0.003611 0.000003
9014.7 0.047000 0.002167 0.000003
RHOSCO RHOSCW RHOSCG
46.244 62.238 0.0647
EQUILIBRIUM PRESSURE INITIALIZATION / CONSTANT SATURATION INITIALIZATION
0 0
5400.0 0.0 8425.0 8300.0
0.88 0.12 0.00
KSN1 KTR KSM1 KCO1 KCOF
0 0 0 0 0
NMAX FACT1 FACT2 TMAX WORMAX GORMAX PAMIN PAMAX
2000 1.25 0.50 1460.0 20.0 500000.0 150.0 20000.0
KSOL MITR OMEGA TOL TOL1 DPMAX DPMAX
3 250 1.70 0.100 0.000 0.05 100.0
RECURRENT DATA
1 1 1 1 1 1 1 1 1
1.0 1.0 1.0
WELL P-1 PRODUCING AT 300 BOPD
1
P-1 5 5 1 1 1 300.0 0.0 0.0 0.0
0.30 0.0
0 8 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0


35
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0
0 9 0 0 0 0 0 0 0
1.0 1.0 1.0
0 1 1 1 1 1 0 1 1
1.0 1.0 1.0




FIGURE 5.2
Comparison of BOAST Pressure Solution
with commercial black oil simulators on Example Problem 2.


Pressure in Producing Well Block (psia
5500
5000
4500
4000
BOAST
Commercial Simulator A
Commercial Simulator B
A
A
A
A
A
A
A
A
A
A
A
X
X
X
X
X
X
X
X
X
X
X

0 10 20 30 40 50 60 70 80 90
Time in Days

0


36
Example 3 Cross-Section Model Showing Line-Drive Waterflooding of an
Undersaturated Reservoir

The input data file for an x-z cross-section example is presented in Table 5.3. A
linear grid with NX = 20, NY = 1, and NZ = 5 has been constructed. Each end grid
block contains a well. Porosity is halved in the end grid blocks to account for the
block-centered finite difference formulation. A vertical to horizontal permeability
ratio of 0.1 is used.

Production is from a well completed in layers 2, 3, and 5. Notice that the value of
NLAYER in the well information cards must include layer 4, but the well flow index
for layer 4 is set to zero. This effectively shuts in layer 4. A rate specified water
injection well is completed in layers 4 and 5 at the end opposite to the production
well location.

Performance of the production well is plotted in Figure 5.3. An essentially constant
oil production rate is maintained in the pressure constrained production well until
water breakthrough. Breakthrough occurs first in the lowermost layer 5, followed
by layer 3 and then the uppermost layer 2 as expected. Oil production falls off
rapidly as shown in Figure 5.3. The simulation terminates when the specified limiting
water/oil ratio of WORMAX = 20 is reached at around 275 days.



TABLE 5.3 - Input data for Example 3

LINE DRIVE WATERFLOOD: CROSS-SECTION RUN.

20 1 5
GRID BLOCK LENGTHS
-1 -1 -1
20.0
500.0
10.
GRID BLOCK LENGTH MODIFICATIONS
0 0 0 0
CAPROCK BASE DEPTHS
0
8325.
POROSITY AND PERMEABILITY
-1 -1 -1 -1
0.250
200.
200.
20.
POROSITY AND PERMEABILITY MODIFICATION CARDS
10 0 0 0 1
1 1 1 0.125
1 1 2 0.125
1 1 3 0.125
1 1 4 0.125
1 1 5 0.125
20 1 1 0.125
20 1 2 0.125
20 1 3 0.125
20 1 4 0.125
20 1 5 0.125
TRANSMISSIBILITY MODIFICATIONS


37
0 0 0 00
SAT KRO KRW KRG PCGO PCOW
-.10 0.0 0.0 0.0
0.02 0.0 0.0 0.0
0.10 0.0 0.0 0.025
0.20 .00147 .0000 .075
0.30 .00228 .0122 0.190
0.40 0.0370 .0244 0.410
0.50 0.0571 .0336 0.72
0.60 0.134 .0672 0.87
0.70 0.207 .1344 0.94
0.80 0.604 .2688 0.9666667
0.90 1.000 .4704 0.9933333
1.1 1.0 .5000 1.0
PBO VSLOPE BSLOPE RSLOPE PMAX
4014.7 .000046 -.0000232 0.0 9014.7
P MUO BO RSO
14.7 1.0400 1.0620 1.0
1014.7 0.8300 1.2950 371.0
2014.7 0.6950 1.4350 636.0
3014.7 0.5940 1.5650 930.0
4014.7 0.5100 1.6950 1270.0
5014.7 0.4490 1.8270 1618.0
9014.7 0.2030 2.3570 2984.0
P MUW BW RSW
14.7 0.5000 1.0190 0.0
1014.7 0.5010 1.0160 0.0
2014.7 0.5020 1.0130 0.0
4014.7 0.5050 1.0070 0.0
6014.7 0.5100 1.0010 0.0
9014.7 0.5200 0.9920 0.0
P MUG BG CR
14.7 0.008000 0.935800 0.000003
264.7 0.009600 0.067902 0.000003
514.7 0.011200 0.35228 0.000003
1014.7 0.014000 0.017951 0.000003
2014.7 0.018900 0.009063 0.000003
2514.7 0.020800 0.007266 0.000003
3014.7 0.022800 0.006064 0.000003
4014.7 0.026800 0.004554 0.000003
5014.7 0.30900 0.003644 0.000003
9014.7 0.047000 0.002167 0.000003
RHOSCO RHOSCW RHOSCG
46.244 62.238 0.0647
EQUILIBRIUM PRESSURE INITIALIZATION / CONSTANT SATURATIONS
0 0
5015.0 0.0 8425.0 8300.0
] 0.80 0.20 0.0
KSN1 KSM1 KCO1 KTR KCOF
0 0 0 0 0
NMAX FACT1 FACT2 TMAX WORMAX GORMAX PAMIN PAMAX
500 1.20 0.50 365.0 20.0 500000.0 150.0 10000.0
KSOL MITR OMEGA TOL TOL1 DSMAX DPMAX
3 100 1.70 0.100 0.0000 0.05 100.0
RECURRENT DATA
1 1 1 1 1 1 1 0 0
1.0 0.1 10.0
RATES
2
PROD 20 1 02 4 -1 600.00 0.0 0.0 0.0
0.50 4015.0
0.75 4015.0
0.00 4015.0
0.25 4015.0
INJ1 1 1 4 2 +2 0.0 -900.0 0.0 0.0
0.25 5015.0
0.50 5015.0
0 8 0 0 0 0 0 0 0
1.0 0.1 10.0


38
0 1 1 1 1 1 1 0 0
1.0 0.1 10.0
0 9 0 0 0 0 0 0 0
2.0 0.1 10.0
0 1 1 1 1 1 1 0 0
2.0 0.1 10.0
0 9 0 0 0 0 0 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 14 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0
0 4 1 1 1 1 1 0 0
6.0 0.1 30.0
0 1 1 1 1 1 1 0 0
6.0 0.1 30.0





39
FIGURE 5.3
Production Performance for Example 3

50
100
150
200
250
300
350
400
450
500
0
80
70
60
50
40
30
20
10
Water
Oil
Ratio
Oil Rate
(STB/D)
Layer 2
Layer 1
Layer 4
Layer 1
Layer 2
Layer 4

0 50 100 150 200 250
Cumulative Water Injection (MSTB)




40
Example 4: Three-Dimensional, 40-Acre, Five-Spot Waterflood

This example illustrates the data input and results for a fairly comprehensive
waterflooding problem. The reservoir consists of two communicating zones with
different reservoir properties. Porosity varies within each zone from north to south.

Initial production is by fluid expansion drive from an undersaturated reservoir
followed by solution gas drive. After the reservoir has been partially depleted, four
water injection wells are drilled to form a 40-acre, five-spot pattern and the field is
then waterflooded.

The central producing well is operated under a specified oil production rate
constraint to match the historical rate decline. The producing well is operated
under a flowing bottomhole pressure constraint during the waterflood prediction.
The input data file for the BOAST simulation of this problem is shown in Table 5.4.

This same problem was run on two commercially available black oil simulators for
comparison with the BOAST runs. The oil production, water production, gas
production, and production well block pressure performance of all three simulators
is presented in Figures 5.4 through 5.7.

All three simulations show the same general trend of reservoir performance.
However, it is important to note that at any particular point in the simulation, some
significant differences in specific parameters such as oil production rate or gas
production rate occur between all simulations. In most cases, the differences
between BOAST and the closest commercial simulator are less than the differences
between the two commercial simulators.

This illustrates the point that on more complex problems -- problems including the
effects of reservoir heterogeneities, possible three-phase relative permeability
effects, fluid repressurization effects, etc. -- there are no analytically "correct"
solutions. Different simulators use different algorithms, fluid properties packages,
and so forth to simulate the response of the reservoir system. Therefore, exact
numerical predictions cannot be expected. However, all of the simulators should be
expected to, and in fact do, give the same general performance trends and
estimates. They all provide a reasonable basis on which to make an engineering
decision concerning waterflooding in this field.


TABLE 5.4 - Input data for Example 4

BOAST VALIDATION RUN - WATERFLOOD EXAMPLE
9 9 2
GRID BLOCK LENGTHS
0 0 0
160. 160. 160 160. 80. 160. 160 160. 160.
160. 160. 160. 160. 80. 160. 160. 160. 160.
20. 30.
GRID BLOCK LENGTH MODIFICATIONS
0 0 0 0
DEPTH TO TOP OF UPPER SAND ZONE
0


41
8325.
POROSITY AND PERMEABILITY DISTRIBUTIONS
+1 0 0 -1
0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12
0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12
0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12
0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12
0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12 0.12
0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14
0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14
0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14
0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14 0.14
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28 0.28
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0.30
20. 100.
20. 100.
5.
POROSITY AND PERMEABILITY MODIFICATION CARDS
0 0 0 0 0
TRANSMISSIBILITY MODIFICATIONS
0 0 0 0
SAT KRO KRW KRO PCOW PCGO
-0.10 0.00 0.00 0.00
0.02 0.00 0.00 0.00
0.12 0.00 0.00 0.02
0.20 0.00 0.02 0.06
0.30 0.00 0.04 0.20
0.40 0.03 0.07 0.46
0.50 0.09 0.12 0.70
0.60 0.17 0.18 0.87
0.70 0.30 0.27 0.91
0.80 0.50 0.51 0.94
0.88 0.75 0.71 0.97
1.00 1.00 1.00 1.00
1.10 1.00 1.00 1.00
PBO VSLOPE BSLOPE RSLOPE PMAX
4014.7 .000046 -.0000232 0.0 9014.7 0
P MUO BO RSO
14.7 1.0400 1.0620 1.0
264.7 0.975O 1.1500 90.5
514.7 0.9100 1.2070 180.0
1014.7 0.8300 1.2950 371.0
2014.7 0.6950 1.4350 636.0
2514.7 0.6410 1.5000 775.0
3014.7 0.5940 1.5650 930.0
4014.7 0.5100 1.6950 1270.0
5014.7 0.4490 1.8270 1618.0
9014.7 0.2030 2.3570 2984.0
P MUW BW RSW
14.7 0.5000 1.0190 0.0
1014.7 0.5010 1.0160 0.0
2014.7 0.5020 1.0130 0.0
4014.7 0.5050 1.0070 0.0
6014.7 0.5100 1.0010 0.0
9011.7 0.5200 0.9920 0.0
P MUG BG CR
14.7 0.008000 0.935800 0.000003
264.7 0.009600 0.067902 0.000003
514.7 0.011200 0.035228 0.000003
1014.7 0.014000 0.017951 0.000003
2014.7 0.018900 0.009063 0.000003
2514.7 0.020800 0.007266 0.000003


42
3014.7 0.022800 0.006064 0.000003
4014.7 0.026800 0.006554 0.000003
5014.7 0.030900 0.003664 0.000003
9014.7 0.047000 0.002167 0.000003
RHOSCO RHOSCW RHOSCG
46.244 62.238 0.0647
EQUILIBRIUM PRESSURE INITIALIZATION / CONSTANT SATURATION INITIALIZATION
0 0
4400.0 0.0 8425.0 8300.0
0.88 0.12 0.00
KSN1 KTR KSM1 KCO1 KCOF
0 0 0 0 0
NMAX FACT1 FACT2 TMAX WORMAX GORMAX PAMIN PAMAX
2000 1.25 0.50 1460.0 20.0 500000.0 150.0 20000.0
KSOL MITR OMEGA TOL. TOL1 DSMAX DPMAX
2 250 1.70 0.100 0.0000 0.05 100.0
RECURRENT DATA
1 1 1 1 1 1 1 1 1
1.0 1.0 1.0
WELL P-1 (COMPLETED IN BOTH UPPER (AND LOWER ZONES) @ 850 BOPD
1
P-1 5 5 1 2 1 850.0 0.0 0.0 0.0
0.04 0.0
0.30 0.0
0 8 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 0 1 1
1.0 0.1 30.0
0 79 0 0 0 0 0 0 0
1.0 0.1 3.60
0 1 1 1 1 1 0 1 1
1.0 0.1 30.0
1 1 1 1 1 1 0 1 1
1.0 1.0 30.0
WELL P-1 RATE CHANGED TO 600 BOPD
1
P-1 5 5 1 2 1 600.0 0.0 0.0 0.0
0.04 0.0
0.30 0.0
0 89 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 0 1 0
1.0 0.1 30.0
1 1 1 1 1 1 0 1 0
1.0 1.0 30.0
WELL P-1 RATE CHANGED TO 160 BOPD
1
P-1 5 5 1 2 1 460.0 0.0 0.0 0.0
0.04 0.0
0.30 0.0
0 89 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 0 1 0
1.0 0.1 30.0
1 1 1 1 1 1 0 1 0
1.0 1.0 30.0
WELL-P-1 RATE CHANGED TO 380 BOPD
1
P-1 5 5 1 2 1 380.0 0.0 0.0 0.0
0.04 0.0
0.30 0.0
0 91 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 0 1 0
1.0 0.1 30.0
1 1 1 1 1 1 0 1 0
1.0 1.0 30.0
PUT WELL P-1 ON FBHP CONTROL & BEGIN WATER INJECTION IN I-1 THRU I-4
5


43
P-1 5 5 1 2 -1 0.0 0.0 0.0 0.0
0.04 500.0
0.30 500.0
I-1 1 1 2 1 2 0.0 -500.0 0.0 0.0
0.50 0.0
I-2 1 9 2 1 2 0.0 -500.0 0.0 0.0
0.50 0.0
I-3 9 1 2 1 2 0.0 -500.0 0.0 0.0
0.50 0.0
I-4 9 9 2 1 2 0.0 -500.0 0.0 0.0
0.50 0.0
0 89 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 91 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 001 30.0
0 91 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 91 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1. 1 1 1 1 1 1 0
1.0 0.1 30.0
0 91 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0


44
0 1 1 1 1 1 1 1 0
1.0 0.1 30.0
0 90 0 0 0 0 0 0 0
1.0 0.1 30.0
0 1 1 1 1 1 1 1 0
1.10 0.1 30.0



45
FIGURE 5.4 -- Oil Production vs. Time for Example 4

Oil Rate (STB/D)
0
200
400
600
800
1000
1200
1 yr 2 yr 3 yr 4 yr 5 yr
Waterflood Breakthrough
Water Injection Begins
Primary
Depletion
History
Waterflood
Prediction
BOAST Simulation
Commercial Simulator A
Commerical Simulator B
X
A
AX
X
X
X
A
A
A
A
A
A
A
A
A
A
A
X
X
X
X

Time (Years)




FIGURE 5.5 -- Water Production vs. Time for Example 4

Water rate (STB/D)
0
100
200
300
400
500
600
1 yr 2 yr 3 yr 4 yr 5 yr
Waterflood
Water Injection Begins
Primary
Depletion
History
Waterflood
Prediction
BOAST Simulation
Commercial Simulator A
Commerical Simulator B
X
A
X
A
A
X
X
Breakthrough
X
X
A
A

Time (Years)


46
FIGURE 5.6 -- Gas Production vs. Time for Example 4

Gas Rate (MCF/D)
0
200
400
600
800
1000
1200
1 yr 2 yr 3 yr 4 yr 5 yr
Waterflood Breakthrough
Water Injection Begins
Primary
Depletion
History
Waterflood
Prediction
BOAST Simulation
Commercial Simulator A
Commerical Simulator B
X
A
X
X
A
A
A
A
A
A
A A
X
X
X
X
1400
1600
1800
2000
A
A
X X
A
A
X
A
X
X
X
X
X
A
Ti
me (Years)




FIGURE 5.7 -- Production Well Block Pressure vs. Time for Example 4

Pressure (psia)
0
200
3000
4000
5000
6000
7000
1 yr 2 yr 3 yr 4 yr 5 yr
Waterflood Breakthrough
Water Injection Begins
Primary
Depletion
History
Waterflood
Prediction
BOAST Simulation
Commercial Simulator A
Commerical Simulator B
X
A
A
X
X
X
X
A
A
A
A
A
A
A
A
A
X
X
X
X
1000
2000
8000
X
X
X
A
X
A
A
X X
X

Time (Years)


47
Example 5: Comparative Solution Problem

As a part of the testing and validation of the BOAST black oil simulator, the program
was run against the three-dimensional black oil reservoir simulation comparative
solution problem published by Odeh
*
.

The problem involved simultaneous gas injection into and oil production from an
initially undersaturated black oil reservoir. A three-layer model grid was specified
with gas injection into the upper layer in one corner and oil production from the
lower layer in the opposite corner. The model grid configuration and problem
specifications are reproduced from the Odeh article in Figure 5.8 and Table 5.5.
The problem actually solved was that of Case 2 in the JPT article in which saturation
pressures were allowed to vary with gas saturation.

Seven companies -- four major oil companies and three consulting companies --
solved the same problem using their in-house or commercially marketed black oil
simulators. The companies used computers such as the IBM 370/168, IBM 3033,
Amdahl V/6, Honeywell 6000 DPS, Cray-1, Harris/7, CDC Cyber 175, and Univac
1110/2C Level 36. The BOAST program, on the other hand, was used to solve this
same problem on the much smaller DEC 20/60 computer.

This particular problem is a difficult one for a pure IMPES formulation (such as is
used in BOAST) to solve. The primary difficulties arise because the high pressure
gas injection involves both rapid pressure changes and rapid saturation changes
across the grid followed by coning of gas from the upper layer down into the
producing perforations. Most of the seven other simulators used some degree of
implicitness in their formulations because of the difficulty of this problem; several of
the simulators used a fully implicit formulation.

In spite of the difficulties inherent in the problem, BOAST provided a solution which
was in reasonable agreement with the results of the seven other simulators.
Figures 5.9 through 5.16 below reproduce the comparative results for the seven
company simulators and show the BOAST simulation results for comparison. In all
of the figures, the dashed lines represent the seven company simulators and the
solid lines show the BOAST results.

The major difficulty encountered by the BOAST simulator on this problem was
during gas coning from the upper layer into the producing well block. As stated
earlier in Volume I, a pure IMPES formulation is not well suited for coning-type
problems. Very small time steps were taken during the pressure constrained
coning-type production period in the BOAST simulation to minimize the problems
caused by the explicit formulation.

In all aspects of the simulation, including pressure performance of both injection
and production wells, oil production rates, time to gas breakthrough, and the

*
Odeh, A. S., "Comparison of Solutions to a Three-Dimensional Black-Oil Reservoir Simulation Problem", J. Pet. Tech., January
1981, pp. 13-25.



48
pressure and saturation distributions throughout the model grid (with the exception
of the few blocks near the production well where coning behavior dominates), the
BOAST simulation matched the general behavior of the other seven simulations.







49
FIGURE 5.8
Grid Configuration and Problem Specification for Example 5

Gas Injection Well
X
1000 ft
Y
J=1
2
3
4
5
6
7
8
9
10
I=1 2 3 4 5 6 7 8 9 10
1000 ft

Areal Grid System



Oil Production Well
S
S
K
K
K
H, FT.
|
Gas Injection
100 MM SCF/D
Layer 3 Layer 2 Layer 1
.3 .3 .3
50 30 20
200 50 500
200 50 500
20.8 37.5 100
.12 .12 .12
.88 .88 .88
3
4
5
6
7
8
9
10
2
I=J=1
x
y
z
w
o

8425 ft 8325 ft.
8400 ft 8360 ft. 8335 ft.

Diagonal cross section
Oil Production Well


50
TABLE 5.5 - Basic Data and Problem Specifications for Example 5


RESERVOIR DATA

Initial reservoir pressure, psia at 8,400 ft 4,800
Rock compressibility, 1/psi 3 x 10
-6

Porosity value of 0.3 was measured at a base pressure of 14.7 psi
Wellbore radius, ft 0.25
Skin 0
Reservoir Temperature, F 200
Gas specific gravity 0.792
Constant water viscosity, cp 0.3100
Density of saturated oil at stock tank conditions, lbm/cu. ft. 46.244
Density of saturated oil at stock tank conditions, lbm/cu. ft. 62.238
Density of gas at standard conditions (14.7 psia), lbm/cu. ft. 0.0647
Capillary pressure 0

PRODUCTION CONSTRAINTS

Gas injection rate, MMscf/D 100
Maximum oil production rate, STB/D 20,000
Minimum oil rate, STB/D 1,000
Minimum flowing bottomhole pressure, psi 1,000
Maximum saturation change during time step 0.05



PVT PROPERTIES

SATURATED OIL PVT FUNCTIONS GAS PVT FUNCTIONS SATURATED WATER
PVT FUNCTIONS
Reservoir Solution
Pressure FVF Viscosity GOR FVF Viscosity FVF
(psia) (RB/STB) (cp) (scf/stb) (RB/scf) (cp) (RB/bbl)

14.7 1.0620 1.0400 1.0 0.166666 0.008000 1.0410
264.7 1.1500 0.9750 90.5 0.012093 0.009600 1.0403
514.7 1.2070 0.9100 180.0 0.006274 0.011200 1.0395
1014.7 1.2950 0.8300 371.0 0.003197 0.014000 1.0380
2014.7 1.4350 0.6950 636.0 0.001614 0.018900 1.0350
2514.7 1.5000 0.6410 775.0 0.001294 0.020800 1.0335
3014.7 1.5650 0.5940 930.0 0.001080 0.022800 1.0320
3014.7 1.6950 0.5100 1270.0 0.000811 0.026800 1.0290
5014.7 1.8270 0.4490 1618.0 0.000649 0.030900 1.0258
9014.7 2.3570 0.2030 2984.0 0.000386 0.047000 1.0130


UNDERSATURATED OIL UNDERSATURATED WATER
PVT FUNCTIONS PVT FUNCTIONS

Reservoir
Pressure FVF VISCOSITY FVF
(psia) (RB/STB) (cp) (RB/bbl)
4014.7 1.6950 0.5100 1.0290
9014.7 1.5790 0.7400 1.0130



51
FIGURE 5.9
Oil Rate vs. Time for Example 5
Production Well in Cell (10, 10, 3)

OIL RATE, 10
3
STB/D
20
18
16
14
12
10
8
6
4
2
0
BOAST SIMULATION
Other Simulator Results

1 2 3 4 5 6 7 8 9 10
TIME, YEARS







FIGURE 5.10
Pressure vs. Time for Example 5
Production Well in Cell (10, 10, 3)

6000
5000
4000
BOAST SIMULATION
Other Simulator Results
PRESSURE,
PSIA
3000

0 1 2 3 4 5 6 7 8 9 10
TIME, YEARS


52
FIGURE 5.11
Pressure vs. Time for Example 5
Injection Well in Cell (1, 1, 1)

PRESSURE, PSIA
6500
5500
4500
BOAST SIMULATION
Other Simulator Results
3900
7500

0 1 2 3 4 5 6 7 8 9 10
TIME, YEARS





FIGURE 5.12
Gas Saturation vs. Time for Example 5
Production Well in Cell (10, 10, 3)

GAS SATURATION, PERCENT
30
20
10
BOAST SIMULATION
Other Simulator Results
0

0 1 2 3 4 5 6 7 8 9 10
TIME, YEARS


53
FIGURE 5.13 -- GOR vs. Time for Example 5
Production Well in Cell (10, 10, 3)
GOR MSCF/STB
0
2
4
6
8
10
12
14
16
18
20
22
24

1 2 3 4 5 6 7 8 9 10
TIME, YEARS


FIGURE 5.14 - Pressure vs. Grid-Point Location for Example 5
Time = 8 Years; Top Layer
PRESSURE, PSIA
3500
BOAST SIMULATION
Other Simulator Results
3000
4000
4500

1,1 2,2 3,3 4,4 5,5 6,6 7,7 8,8 9,9 10,10
GRID POINT LOCATION



54
FIGURE 5.15--Gas Saturation vs. Grid-Point Location for Example 5
Time = 8 Years; Top Layer
GAS SATURATION, PERCENT
55
45
BOAST SIMULATION
Other Simulator Results
40
50
60

1,1 2,2 3,3 4,4 5,5 6,6 7,7 8,8 9,9 10,10
GRID POINT LOCATION


FIGURE 5.16 - Gas Saturation vs. Grid-Point Location for Example 5
Time = 8 Years; Middle Layer
GAS SATURATION, PERCENT
50
40
30
20
10
0
60
BOAST Simulation
Other Simulator Results

1,1 2,2 3,3 4,4 5,5 6,6 7,7 8,8 9,9 10,10
GRID POINT LOCATION


55
APPENDIX
Example of BOAST Program Output for the Two-Dimensional Areal Example Run
Presented in Chapter 5
(Example 2)


BOAST:
BLACK OIL APPLIED SIMULATION TOOL
(VERSION 1.1)

BOAST VALIDATION RUN -- PRESSURE COMPARISON EXAMPLE

GRID SIZE (DX) IN COLUMN 1 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 2 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 3 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 4 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 5 IS INITIALLY SET AT 80.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 6 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 7 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 8 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DX) IN COLUMN 9 IS INITIALLY SET AT 160.00 FOR ALL NODES


GRID SIZE (DY) IN COLUMN 1 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 2 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 3 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 4 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 5 IS INITIALLY SET AT 80.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 6 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 7 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 8 IS INITIALLY SET AT 160.00 FOR ALL NODES
GRID SIZE (DY) IN COLUMN 9 IS INITIALLY SET AT 160.00 FOR ALL NODES

GRID BLOCK DEPTH (DZ) IS INITIALLY SET AT 30.000 FOR ALL NODES

***********************NODE MIDPOINT ELEVATIONS *****************
K = 1

8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.
8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360. 8360.


********POROSITY DISTRIBUTION FOLLOWS********



56
K = 1

.2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800
.2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800
.2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800
.2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800
.2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800 .2800
.3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000
.3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000
.3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000
.3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000 .3000

1


PERMEABILITY (KX) IS INITIALLY SET AT 100.0000 FOR ALL NODES


PERMEABILITY (KY) IS INITIALLY SET AT 100.0000 FOR ALL NODES


PERMEABILITY (KZ) IS INITIALLY SET AT 100.0000 FOR ALL NODES


*****EMPIRICAL. DATA TABLE*****


SAT KRO KRW KRG PCOW PCGO

-0.1000 0.0000 0.0000 0.0000 0.00 0.00
0.0200 0.0000 0.0000 0.0000 0.00 0.00
0.1200 0.0000 0.0000 0.0200 0.00 0.00
0.2000 0.0000 0.0200 0.0600 0.00 0.00
0.3000 0.0000 0.0400 0.2000 0.00 0.00
0.4000 0.0300 0.0700 0.4600 0.00 0.00
0.5000 0.0900 0.1200 0.7000 0.00 0.00
0.6000 0.1700 0.1800 0.8700 0.00 0.00
0.7000 0.3000 0.2700 0.9100 0.00 0.00
0.8000 0.5000 0.5100 0.9400 0.00 0.00
0.8800 0.7500 0.7100 0.9700 0.00 0.00
1.0000 1.0000 1.0000 1.0000 0.00 0.00
1.1000 1.0000 1.0000 1.0000 0.00 0.00

PBO VSLOPE BSLOPE RSLOPE PMAX

4014.70 0.460E-04 -0.232F-04 0.00 9014.70

P MUO BO RSO

14.7 1.0400 1.0620 1.00
264.7 0.9750 1.1500 90.50
514.7 0.9100 1.2070 180.00
1014.7 0.8300 1.2950 371.00
2014.7 0.6950 1.4350 636.00
2514.7 0.6410 1.5000 775.00
3014.7 0.5940 1.5650 930.00
4014.7 0.5100 1.6950 1270.00
5014.7 0.4490 1.8270 1618.00
9014.7 0.2030 2.3570 2984.00

P MUW BW RSW

14.7 0.5000 1.0190 0.00
1011.7 0.5010 1.0160 0.00
2014.7 0.5020 1.0130 0.00
4014.7 0.5050 1.0070 0.00
6014.7 0.5100 1.0010 0.00
9014.7 0.5200 0.9920 0.00

P MUG BG CR

14.7 0.0080 .9358E+00 0.300E-05
264.7 0.0096 .6790E-01 0.300E-05
514.7 0.0112 .3523E-01 0.300E-05
1014.7 0.0140 .1795E-01 0.300E-05
2014.7 0.0189 .9063E-02 0.300E-05
2514.7 0.0208 .7266E-02 0.300E-05
3014.7 0.0228 .6064E-02 0.300E-05
4014.7 0.0268 .4554E-02 0.300E-05
5014.7 0.0309 .3644E-02 0.300E-05
9014.7 0.0470 .2167E-02 0.300E-05

2

RHOSCO RHOSCW RHOSCG
46.2440 62.2380 0.0647


*****SLOPES FOR COMPRESSIBILITY CALCULATIONS*****

P BO DBO/DP RSO DRSO/DP

264.7 1.1500 0.3520E-03 16.1 0.6376E-01
514.7 1.2070 0.2280E-03 32.1 0.6376E-01
1014.7 1.2950 0.1760E-03 66.1 0.6803E-01
2014.7 1.4350 0.1400E-03 113.0 0.4719E-01
2514.7 1.5000 0.1300E-03 138.0 0.4951E-01
3014.7 1.5650 0.1300E-03 165.6 0.5521E-01
4014.7 1.6950 0.1300E-03 226.2 0.6055E-01
5014.7 1.8270 0.1320E-03 288.1 0.6198E-01
9014.7 2.3570 0.1325E-03 531.4 0.6082E-01

P BW DBW/DP RSW DRSW/DP

1014.7 1.0160 -0.3000E-05 0.0 0.0000E+00
2014.7 1.0130 -0.3000E-05 0.0 0.0000E+00
4014.7 1.0070 -0.3000E-05 0.0 0.0000E+00
6014.7 1.0010 -0.3000E-05 0.0 0.0000E+00
9014.7 0.9920 -0.3000E-05 0.0 0.0000E+00

P BG DBGDP

264.7 0.6790E-01 -0.3472E-02
514.7 0.3523E-01 -0.1307E-03
1014.7 0.1795E-01 -0.3455E-04
2014.7 0.9063E-02 -0.8888E-05
2514.7 0.7266E-02 -0.3594E-05
3014.7 0.6064E-02 -0.2404E-05
4014.7 0.4554E-02 -0.1510E-05
5014.7 0.3644E-02 -0.9100E-06
9014.7 0.2167E-02 -0.3693E-06


*****GAS SATURATION*****

K = 1

0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000


****BUBBLE POINT PRESSURE DISTRIBUTION*****

K = 1

4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 401.5. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 401.5. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 401.5. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 401.5. 4015. 4015. 4015. 4015.
4015. 4015. 4015. 4015. 401.5. 4015. 4015. 4015. 4015.


3
*****WELL REPORT FOR ALL ACTIVE WELLS
ELAPSED TIME = 1.000000 DAYS FROM BEGINNING OF SIMULATION*****

-------------RATE------------ --------CUMULATIVE--------
WELL LOCATION CALC SPEC SPEC OIL GAS WATER OIL GAS WATER
ID I J K BHFP BHFP PI STB/D MCF/D STB/D GOR WOR MSTB MMCF MSTB
P-1 5 5 1 4113 0. 0.300 300. 381. 0. 1270. 0.000 0. 0. 0.
TOTALS 300. 381. 0. 0. 0. 0.




SUMMARY REPORT: BOAST (VERSION 1.1)




*****RESERVOIR PRESSURE DISTRIBUTION*****

k = 1

5377. 5376. 5375. 5375. 5774. 5375. 5375. 5376. 5377.
5376. 5375. 5374. 5373. F372. F373. 5374. 5375. 5376.
5375. 5374. 5372. 5369. 5367. 5369. 5372. 5374. 5375.
5375. 5373. 5369. 5362. 5354. 5362. 5369. 5373. 5375.
5375. 5373. 5367. 5354. 5309. 5354. 5367. 5373. 5375.
5375. 5373. 5369. 5362. 5354. 5362. 5369. 5373. 5375.
5376. 5374. 5372. 5369. 5368. 5369. 5372. 5374. 5376.
5376. 5376. 5374. 5373. 5373. 5373. 5374. 5376. 5376.
5377. 5376. 5376. 5375. 5375. 5375. 5376. 5376. 5377.

****OIL SATURATION****

K = 1


0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880
0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880 0.880

You might also like