Sunteți pe pagina 1din 8

CHAPTER 4

S A T U R A T I O N / H E I G H T

A N A L Y S I S

The reason for putting this chapter before other advanced interpretation
techniques is that I believe it is of primary importance in correctly defin-
ing the STOIIP (stock tank oil initially in place) or GIIP (gas initially in
place) of a field. Indeed, because of the way that dynamic reservoir models
are constructed in many fields in practice, it completely supersedes any
exotic models constructed by the petrophysicist for calculating saturations.
Many times in my career I have seen petrophysical departments working
in isolation constructing fabulously complicated models to calculate satu-
rations. But when you ask the geologist what saturations have gone into the
static model, he will tell you that he is using a constant value unrelated to
the zonal weighted averages. The reservoir engineer may be using one
Pc/Sw table in the simulator based on just one air/mercury capillary pres-
sure measurement that he felt was representative of the reservoir in general.
I believe perhaps the most important role the petrophysicist has in a
petroleum engineering department concerns ensuring that the satura-
tion/height function being used in the static and dynamic models repre-
sent the best possible combination of core and log data, combined with
sound petrophysical judgment. In my view, such a function should have
both porosity and permeability as input variables, together with height
(which may be directly related to Pc).
There are dozens of different functions that have been used to describe
capillary behavior in rocks. I have used many of these over my career, but
I have found the Leverett J function to be the most broadly applicable. I
therefore propose to describe how such a function may be constructed for
a reservoir, using both core and log data. This function may be stated thus:

(4.1)
where

(4.2)

(4.3)

Swirr = irreducible water saturation


rhow = formation water density, in g/cc
rtiOfc = hydrocarbon density, in g/cc
Pc - capillary pressure, in psi
k = permeability, in md
<|) = porosity (as fraction)
c = interfacial tension between the hydrocarbon and water, in dynes/cm2
0 = contact angle between the hydrocarbon and water, in degrees
h = height above the free water level (FWL), in m
the constants a and b are to be fitted to the data.

Note that units are not particularly important, as long as they are used
consistently throughout. If, say, pressures are used in bars instead of psi,
the effect will be for a and b to be modified, but the results will be the
same.

4.1 CORE CAPILLARY PRESSURE ANALYSIS

The results of a SCAL program of Pc measurements will usually be pre-


sented in the form of Table 4.1.1.
Note that figures in the body of the table represent Sw values. Note also
that these measurements will have been performed by one of a number of
methods, none of which use actual formation fluids. Use the following
steps to generate the average / function. Let:

(4.1.1)

1. Convert the table above into a table of / vs. Swr. Set Swirr equal to 0.01
below the lowest water saturation seen anywhere in the reservoir in
cores or logs. In order to derive /, use the values for k and 0 in the
table. For the interfacial tension and contact angle, use the data in Table
4.1.2 depending on the type of measurement used:
2. Plot Log(J) vs. Log(5wr). The intercept and gradient should give you
the constants a and b (Figure 4.1.1).
Table 4.1.1
Example of core-derived drainage capillary pressure curves
Pc (psi)

K 3.000 10.000 25.000 50.000 125.000 200.000


0.078 0.347 0.850 0.783 0.614 0.491 0.386 0.352
0.084 0.992 0.839 0.745 0.525 0.386 0.295 0.269
0.100 2.828 0.763 0.488 0.371 0.281 0.233 0.210
0.096 8.782 0.659 0.353 0.261 0.216 0.201 0.200
0.107 18.350 0.548 0.304 0.218 0.170 0.164 0.165
0.108 11.609 0.651 0.325 0.237 0.198 0.191 0.193
0.123 42.215 0.457 0.270 0.180 0.158 0.155 0.155
0.125 60.976 0.566 0.348 0.258 0.241 0.204 0.200
0.126 157.569 0.377 0.225 0.147 0.127 0.121 0.120

Table 4.1.2
Typical values of interfacial tension and contact
angle for reservoir conditions
a (mN/m) Cos(G)
Air/mercury 480 0.765
Air/brine 72 1.0
Kerosene/brine 48 0.866
Air/kerosene 24 1.0

Having defined Swirn a, and b, you basically have all the information
you need to construct a saturation/height function for any given porosity
and permeability. It is often convenient to create a special poroperm-type
relationship using the plug k and (|) values (Figure 4.1.2). Such a rela-
tionship should have the form:

(4.1.2)

When constructing J in the reservoir, you will need to use the a and 0
values corresponding to your reservoir conditions. Since these are gener-
ally not known, it is recommended to refer to Table 4.1.3.
Having defined such a relationship, it is possible to produce a set of
generic saturation/height functions for a range of porosities typically
encountered in the reservoir, as shown in Figure 4.1.3:
1
2
3
4
5
$wr

6
7
8
9
model

Figure 4.1.1 Fitting a J function to Core Data


perm (md)

plug data
model

por

Figure 4.1.2 Fitting a Poroperm Relationship to the Capillary Pressure Plugs


Height (m)
^c(PSi)

Sw

Figure 4.1.3 Generic Saturation/Height Curves from the J Function

Table 4.1.3
Typical values of interfacial tension and contact
angle for reservoir conditions
a (dynes/cm2) Cos(O)
Gas/water 50 1.0
Oil/water 30 0.866

These curves, in the form of PCISW tables for particular porosity classes,
may be handed directly to the reservoir engineer for inclusion in a simu-
lator. If a geologist wants an "average" value of Sw to use for a static
model, the curves should be averaged over a realistic column height for
a particular porosity class. Better still is to obtain an area/height table from
the geologist and to further weight the curves according to their relative
areas at a given height. Since most reservoirs are wider at the base than
at the crest, this results in a higher average water saturation.
If you have a gas column above an oil column in the reservoir, gener-
ate two set of tables, one for an oil/water system and one for a gas/water
system using the appropriate a, 0, rho/,, and rhow values.

1. Based on the core capillary pressure measurements presented in


Appendix 2, derive a J function.
2. Recalculate the sums and averages using the / function derived from
these core data.

4 . 2 LOG-DERIVED FUNCTIONS

The methodology applied to core data can also be applied to the logs
to derive an independent / function, provided that the position of the FWL
is known. This function is useful for comparison with the core-derived
function and may be used if no core data are available.
A secondary benefit is that it is possible during the fitting procedure to
eliminate thin bed and invasion effects and provide a means of generat-
ing a high-resolution saturation log that depends on only the density log.
In order to fit a / function, follow these steps:

1. Use the depth of the FWL and the true vertical depth subsea (TVDss)
to generate a curve for the height above FWL.
2. Use equation 4.3 to derive a curve for Pc.
3. Use equation 4.2 to derive a curve for /. It is assumed that you already
have some kind of poroperm relationship that can be used to relate k
to the porosity.
4. Use equation 4.4 to derive a curve for Swr. Set Swirr to be 0.01 less than
the lowest Sw seen on the logs.
5. Make a crossplot of Log(J) vs. Log(5wr).

You will find a cloud of points. Note that shoulder-bed effects and inva-
sion of water-based mud will always pull points to higher Swr values com-
pared with points originating from thick beds and for which less invasion
is occurring. Therefore, by fitting the constants a and b so that the model
follows the leading edge of the cloud of points, you will effectively be
correcting for thin bed and invasion effects.
Having derived a and b, you are now in the same position as you were
at the end of the Pc-curve averaging exercise. Generic saturation/height
functions can be derived in an identical manner as before. The curves
should be compared with those derived from Pc, or "cap," curves and an
attempt made to explain any differences. Differences may arise from the
following:

The core measurements, particularly if performed using air/mercury,


may be unrepresentative of the reservoir as seen by the logs.
There may be a discrepancy in the permeability transform used for the
core plugs compared with that used on the logs.
The assumed position of the FWL may be wrong.
The logs may be influenced by other effects, making either the porosi-
ties or the saturations calculated erroneous.
Depletion may have occurred prior to logging.

In cases where the discrepancies cannot be explained, it may be con-


sidered reasonable to take the more pessimistic set of functions as a "low"
and the optimistic ones as a "high" and construct a baseline lying halfway
between.
Having decided on a baseline function, the logs should be reevaluated
using the / function in reverse to recalculate saturations. Considering that
the function will use only the curves for height above FWL and poros-
ity/^ as input (all derived from the density log), the results may prove sur-
prising. Having applied this technique on more than 20 reservoirs, I have
always been amazed at how reasonable the results look, and often how
well they compare with the resistivity-derived Sw values, except in the thin
beds, where resistivity-derived Sw is usually too high. The density log will
typically have a vertical resolution of 1 ft, far superior to the deep induc-
tion or laterolog. The resulting increase in average oil or gas saturation
will typically be on the order of 20%.
I believe that a properly calibrated Leverett / function, reconciling reli-
able log saturations with core data, represents the best possible way to
calculate saturations in a reservoir and to transfer this information into
static and dynamic models. It should also be recognized that where core
data are reliable but the position of the FWL is unknown, the function
may be used to predict the depth of the FWL from the log saturations. In
general I have not had much success in applying this technique, but it may
merit further investigation.
1. Use your results from Exercises 2.1 and 3.1 to derive a J function based
on the log data.
2. Recalculate the sums and averages using the / function derived from
the logs.
3. Do you recommend using the function derived from the core or log for
future STOIIP determination? What are your reasons?

S-ar putea să vă placă și