Professional Documents
Culture Documents
1800
1600
Velocity functions
from checkshot /
VSP data.
1400
1200
1000
0
2000
1000
3000
4.1
Quality Control
Quality Control
4.2
4.3
Average Velocity
Average Velocity
Constant
The simplest velocity model of all. The whole section or
volume of the model is represented by one velocity.
VA = V0
A degenerative form of function with all other constants
zero. A straight line through the origin on a time-depth
plot.
Useful to know, starting point for fitting functions, quick
depth conversions and iterative model building.
4.4
Exercise 4.1
Checkshot / VSP
The table below gives a set of average velocity observations to a geological boundary
from a number of wells. For those not comfortable with spreadsheets you are asked to
find the representative constant average velocity using a calculator.
The supplied CD contains the data set as time depth pairs in the file Ex 4.1.xls where
you have to calculate the Average Velocity, find the numerical average velocity and
graphically find the best average velocity.
TVDSS ft
VA ft/s
1378
9274
1441
9370
2378
9786
2430
9798
4118
9932
5036
10470
4796
9881
3548
9983
3644
9993
4796
10076
5473
10268
6100
10535
5710
10233
5117
10102
5170
10117
5904
10340
6835
10772
2705
9908
2730
9927
5684
10370
4.5
Average Velocity
As a function
For depth conversion we need to be able to express depth
as a function of reflection time.
z = fn(t)
Average velocity functions are suited to this, particularly
average velocity expressed as a function of time:
VA = z/t = fn(t)
z = t x fn(t)
e.g.
VA = V0 + a.t
z = V0.t + a.t2
Average Velocity
A function of time
Time-Depth
0.2
Tim e in secs
0.4
0.6
0.8
1000
2000
Depth in feet
3000
z = V0.t + a.t2
4000
5000
6000
7000
8000
9000
4.6
z = 6839.2t2 + 3782.5t
Average Velocity
A function of time
One well
Several wells
Average Velocity Function
0.2
0.4
0.6
0.8
-1000
0.2
0.4
0.6
0.8
0
1000
1000
2000
2000
3000
Depth (ft)
Depth (ft)
3000
4000
5000
4000
5000
6000
6000
7000
7000
8000
8000
9000
9000
Average Velocity
A function of time
Average Velocity a Function of Time
8500
Average Velocity (ft/s)
Given several
wells in the
project how do
we deal with
this typical
problem?
8000
7500
7000
6500
6000
5500
0
0.2
0.4
0.6
0.8
4.7
1.2
Exercise 4.2
Checkshot / VSP
The CD contains a digital version of the exercise as Ex 4.2.xls. For the digital exercise
you should fit a straight trendline that gives the best fit to the data and display the
function and R2 value on the chart. Next try and find a function that gives a better fit.
The R2 value is the correlation coefficient, a measure of the goodness of fit varying from
1 (a perfect line of negative slope), to 0, no correlation, to +1 (a perfect line of positive
slope).
To do the exercise manually use a straight edge to fit a straight line trend to the data set
and estimate the intercept and slope values in the expression VA = V0 + k.z
Exercise 4.2
11000
10500
10000
9500
9000
8500
8000
0.00
0.10
0.20
0.30
0.40
Time (sec)
4.8
0.50
0.60
0.70
Average Velocity
A function of depth
We may not have data from the length of the well bore or we
cannot find a good function, in which case we can cross plot
average velocity to the horizon, or level of interest, from a
number of wells and find a suitable function.
VA = A.zB
z/t = A.zB
z/zB = A.t
z(1-B) = A.t
(1-B)ln(z) = ln(A.t)
ln(z) = ln(A.t)/(1-B)
U pper Trias
12000
11000
10000
9000
8000
y = 4533.9x 0.0953
7000
6000
0
2000
4000
6000
Z = exp{[ln(A.t)] / (1-B)}
8000
TV DS S (ft)
Average Velocity
A function of depth.
The equation:
6675
VA = z/t = V0 + az
6670
z(1/t - a) = V0
z = V0 x t/(1 - at)
It is not always this
simple to manipulate
the equation.
Velocity
z(1 - at)/t = V0
6665
6660
6655
6650
6645
6640
9400
9450
4.9
9500
9550
9600
9650
Depth
9700
9750
9800
9850
Average Velocity
A function of depth.
The scatter:
6670
6665
6660
6655
6650
U pper Trias
6645
6640
9400
9450
9500
9550
Velocity
12000
9600
9650
Depth
9700
9750
9800
9850
11000
10000
9000
8000
y = 4533.9x 0.0953
7000
6000
0
2000
4000
6000
8000
TV DS S (ft)
Average Velocity
4.10
Interval Velocity
Interval Velocity
Constant
The simplest multi-layer velocity model. Each layer of the
model is represented by one velocity.
VIj = V0j
A degenerative form of function with all other constants
zero. The subscript m denotes the layer.
This model is particularly useful in small project areas
where the bed thicknesses change dramatically.
4.11
Interval Velocity
Constant
1900 m/sec
2500 m/sec
2300 m/sec
2600 m/sec
4600 m/sec
4000 m/sec
Interval Velocity
Constant
To determine the velocities of
the layers use checkshot data at
the formation boundaries.
Or, interpolate checkshot data to
formation boundaries.
Interval Velocity
4000
10000
12000
4850
z = 400
1000
7133
2000
Depth feet
z = 2736
4000
8323
5000
6000
7000
z = 6573
12378
8000
4.12
Velocity ft/sec
8000
3000
6000
14000
Exercise 4.3
Checkshot / VSP
The exercise is found in Ex 4.3.xls on the CD where the interval velocities, isopach and
isochron values are to be found.
Interval
Velocity ft/s
9815
10703
10200
10755
10811
9599
10583
11507
11293
10000
11749
The chart below is for the same data set. Find the average
interval velocity from the slope of the trendline that passes
through the origin.
4.13
Interval Velocity
Constant
How do we determine the
velocities of the layers when
we do not have any
checkshots or sonic logs?
?
?
?
?
Interval Velocity
Constant
Provided that we have more observations (well location travel
times) than unknowns (interval velocities).
VA = VI.t / t
Zcalc = VA x t
Zerror = (Zobs - Zcalc)2
Change the values of VI to minimise Zerror, the RMS error term.
Excel contains a macro function that will perform this
minimisation task.
4.14
Exercise 4.4
Checkshot / VSP
This exercise is found on the CD as file Ex 4.4.xls and has no manual equivalent.
The exercise uses equations just discussed and the Solver tool to calculate a set optimum
interval velocities. Solver appears in the Tools Add-Ins menu.
Data and formulae are already entered into the table to perform the calculation
The Solver tool is found under the Tools menu and if not present should be available under
the Add-Ins. The screen picture shows the situation prior to running Solver. The water
velocity of the first layer is left unchanged.
4.15
Interval Velocity
Constant
What are the advantages of a constant interval velocity
model?
Interval Velocity
K immeridge S hale
12000
Interval Velocity ft/s
0.16
Isochron (se c)
0.14
0.12
0.1
0.08
0.06
0.04
0.02
0
10000
8000
6000
4000
2000
0
500
1000
1500
2000
4000
1/ t /s
Isopa ch (ft)
4.16
6000
8000
Interval Velocity
z
Two simple scenarios in which velocity gradients due to compaction within a
layer will contribute to an increase in the interval velocity. Both are modelled by
the expression above or by a mid-point expression.
Well B
Laye
r
Velocity
Layer 1 Vi log
1
Layer 1 VI trend
Vi log in well A
Layer 2
La
ye
r
Layer 2 VI trend
4.17
Vi log in well B
Layer 2
Interval Velocity
13000
14000
15000
16000
2000
VI = V0 + kzmid
VI = (z2-z1) / t = V0 + kzmid
z / t = V0 + k(ztop + z/2)
z (1- t.k/2) = t(V0 + kztop )
where t is one way isochron
3000
4000
5000
Interval Velocity
A function of time.
VI = z / t = V0 + k(ttop + t/2)
2000
Visible trend
1900
1800
1700
1600
0
100
200
300
400
500
VI = V0 + k.tmid
Interval Velocity
VI = V0 + k.tmid
VI = z / t = V0 + k(ttop + t/2)
2000
Robust fit used
Slope (K) = 0.73
1900
1800
1700
1600
0
100
200
300
400
500
A function of time.
4.19
Exercise 4.5
Checkshot / VSP
A digital version appears on the CD in the file Ex 4.5.xls. Where you not only have to fir a
trend lines and find both slop and intercept values but also have to calculate the standard
/deviation or the errors (misties).
Or, use a straight edge to fit a linear trend to the interval velocity values in the chart
below. Estimate the intercept and slope values for the equations VI = V0 + k.tmid
Where do the two interval velocity values found in Exercise 4.3 plot onto this chart?
Which value appears to be most representative of the data?
Why?
Will this function give the most accurate depth conversion?
4.20
Interval Velocity
Well ties
Velocity as a Function
Major disadvantages of the models so far have been:
i) velocities are rarely constant
ii) actual data are scattered about the trend line so that
most of the wells will be mistied by the model.
How can we achieve a model, described by these analytic
functions which better represents the data?
4.21
Instantaneous Velocity
Instantaneous Velocity
Instantaneous Velocity
What are some common instantaneous velocity functions?
4.22
Instantaneous Velocity
Instantaneous Velocity
Data courtesy of Amoco
1000
750
500
250
0
0
Instantaneous Velocity
Instantaneous Velocity
Instantaneous Velocity
There are three well known formulae from the literature:
Vi = V0 + Kz
Slotnicks function, the popular V0, k method.
Vi = V0 (1 + Kz)n
known as Evjens function (Shell early 1930s) or as a
modified Faust function.
Vi = Kz1/n
Fausts formula.
Instantaneous Velocity
z = V0(eKt - 1)/K
for the first layer (where t is the one way time) and
z = Vtop(eKt - 1)/K
For succeeding layers and this reduces the uncertainty in Vtop by
referencing the velocity to the top of the layer rather than the
surface or datum.
4.24
Instantaneous Velocity
Instantaneous Velocity
Evjens Function
Evjens function
Vi = V0 (1 + Kz)n
4.25
Instantaneous Velocity
Instantaneous Velocity
Instantaneous Velocity
Instantaneous Velocity
It is not unknown for confusion to arise between
VI = V0 + Kz (interval velocity)
and
Vi = V0 + Kz (instantaneous velocity).
The source of the confusion is twofold:
Terminology. Instantaneous velocity is sometimes called
instantaneous interval velocity and it then becomes
confused with interval velocity.
The use of V0 and K as generic constants
Instantaneous Velocity
The Error
Whenever there is a velocity
gradient, e.g. Vi = VO + kz then
the interval velocity is not equal
to the instantaneous velocity at
the mid point depth of the bed.
1000
VI
4.27
Depth
2000
0.5
Tim e
1
3000
4000
5000
6000
Vi
1.5
Instantaneous Velocity
DEPTH (ft)
The Error
Instantaneous Velocity
plot,
i.e. Vi = V0 + Kz obtained
by optimizing V0 and K in
z = V0(eKt - 1)/K.
6000
4000
K = 0.703
V0 = 5397
2000
0
0
250
500
750
4.28
Instantaneous Velocity
The Error
0
DEPTH (ft)
1000
2000
K = 0.318
V0 = 5427
3000
4000
5000
6000
5000
6000
7000
8000
INTERVAL VELOCITY (ft/sec)
After Marsden et al, Analytic Velocity Functions,
Leading Edge 1995
Instantaneous Velocity
The Error
DEPTH (ft)
It is frequently believed
that the V0 and K from VI
= Vo + Kz (K = 0.318 V0
= 5427) can be used as
estimates for the V0 and
K in Vi = V0 + Kz, but as
we saw from the
equations this is not so.
0
1000
2000
3000
4000
5000
6000
4.29
5000
6000
7000
8000
INTERVAL VELOCITY (ft/sec)
Instantaneous Velocity
DEPTH (ft)
The Error
Instantaneous Velocity
curve i.e. z = V0(eKt 1)/K drawn with the
constants V0 and K
estimated from the
interval velocity plot,
that is, using K = 0.318
and V0 = 5427 as
estimates for
K = 0.703 and V0 =
5397.
6000
K = 0.703
V0 = 5397
4000
K = 0.318
V0 = 5427
2000
0
0
250
500
750
Instantaneous Velocity
DEPTH (ft)
The Error
6000
4000
2000
0
0
250
500
750
4.30
Instantaneous Velocity
Instantaneous Velocity
For the three common formulae we have expressions
for z (depth) in terms of t (one way time).
Checkshot data can be represented by these formulae
if we use some form of non-linear regression, or
optimization.
Thus, the data at our disposal does not limit the type of
function we can use.
Instantaneous Velocity
Instantaneous Velocity
The checkshot data from one
or more wells can be fitted with
any of the instantaneous
velocity formulae: -
Linear Functions
0.00
0.20
Tim e
0.40
0.60
0.80
Vi = 4972 + 1.671 z
1,000
2,000
Vi = -1780 + 4.090 z
3,000
Depth
Vi = V0 + Kz
Vi = Kz1/n
Vi = V0(1+Kz)n
4,000
5,000
6,000
7,000
Vi = 7464 + 0.8712 z
V i = -10,229 + 3.963 z
8,000
Vi = 74,173 - 7.495 z
9,000
4.31
1.00
Instantaneous Velocity
Instantaneous Velocity
Faust Functions
0.00
0.20
Evjen Functions
Tim e
0.40
0.60
0.80
1.00
0.00
Vi = 2870 z
1/8.073
1.00
Vi = 1058(1 + 3149z)
V i = 0.0541 z
1/0.6504
2,000
3,000
4,000
4,000
Depth
Depth
0.80
0.1239
3,000
Vi =699.6 z
1/ 3.0078
6,000
8,000
0.60
1,000
2,000
7,000
Tim e
0.40
1,000
5,000
0.20
5,000
Vi = 0.04423(1 +
1.2007z)1.5279
Vi = 392.0(1 +
5.713z)0.3325
6,000
Vi = 0.01793 z
7,000
1/ 0.6419
V i = 0.000006797 z
V i = 0.0377(1 +
0.2971z)1.7058
8,000
1/ 0.4218
Vi = 0.0000298(1 + 0.001819z)7.1977
9,000
9,000
4.32
Exercise 4.6
Checkshot / VSP
The digital exercise is on the CD in Ex 4.6.xls where you have to recreate the plot, fit a
trendline and then predict the depth at TD from the travel time.
This plot shows instantaneous velocities estimated from a set of checkshot values (for
Well B), actually interval velocities over 100 ft intervals; the trend should be the same
as the trend on the velocity log. Use a straight edge to draw what you consider to be
the best linear function. It will have an equation Vi = V0 + Kz. Estimate V0 and K:
Using a travel time to TD of 0.9858 sec what is your estimate of the total depth using
your function? [z = V0 (eKt - 1)/K]
4.33
VI (0)
Well B
Velocity
Layer 1
Z2A
Vi observed in well A
Z2/3A
Z3A
La
ye
r
Z2B
Vi observed in well B
Z2/3B
Z3B
instantaneous
velocity trends
(lithology & bed thickness)
Z
Vi =
4.36
Instantaneous Velocity
4.37
Summary
0
0
1000
2000
Depth in feet
3000
4000
5000
6000
7000
8000
4.38
0.2
0.4
0.6
0.8
Summary
Average Velocity
This is the plot of average velocity against depth. It is fairly
straight so we will fit a linear function of average velocity against
time.
Summary
Average Velocity
Average
velocity is a
function of time.
VA =
5450.3 + 2555.9t
where t is one
way time.
Perhaps a
polynomial
would fit better?
4.39
Summary
Average Velocity
0.2
0.4
0.6
0.8
Average velocity
function VA = V0 +Kz
with V0 = 5450.3 and
K = 2555.9
1000
2000
Depth in feet
3000
4000
5000
6000
7000
8000
Summary
Average Velocity
0.2
0.4
0.6
0.8
1000
2000
Average velocity
function VA = V0 +K
with V0 = 5572 and
K = 2385.8
Depth in feet
3000
4000
5000
6000
7000
8000
4.40
y = 2385.8x 2 + 5572x
Summary
Average Velocity
A much closer fit to the
data points.
Remember that a
polynomial of average
velocity in time is
equivalent to an
instantaneous velocity
function in time.
We can see from this plot that there are probably four layers involved which
we could treat with individual functions. Rather than use a number of
different functions of average velocity we could use interval velocities.
Summary
Interval Velocity
4000
6000
Velocity ft/sec
8000
10000
12000
0
4850
z = 400
1000
7133
2000
Depth feet
3000
z = 2736
4000
8323
5000
6000
7000
z = 6573
12378
8000
4.41
14000
Summary
Interval Velocity
0.2
0.4
0.6
0.8
1000
2000
3000
Depth in feet
4000
5000
6000
7000
8000
Summary
Interval Velocity
4000
6000
Velocity ft/sec
8000
10000
12000
0
4850
400
1000
7133
2000
2736
Depth feet
3000
4000
8323
5000
6000
6573
7000
12378
8000
4.42
14000
Summary
Instantaneous Velocity
The instantaneous
velocities estimated
from the checkshot
values are rather noisy.
This noise comes from
the small errors in the
depth and travel time
values.
We can still make use of
the data and fit a trend
for use in depth
conversion.
Summary
Instantaneous Velocity
This linear function
appears to
represent the data
quite well. We can
see how well it will
perform in depth
conversion by
generating a time
depth curve to
compare with the
observed
checkshots.
4.43
Summary
Instantaneous Velocity
This curve is not a particularly
good representation of the
data and will result in a poor
depth conversion.
We will get a better result if we
use the time-depth values
directly in a least squares
optimisation algorithm.
Summary
Instantaneous Velocity
A much better result is
obtained when we fit the timedepth data rather than the
velocity data!
4.44
Summary
Instantaneous Velocity
Comparison of the
two results of
finding a linear
function of Vi to
represent the data.
One function
represents the
time-depth data
best whilst the
second represents
the velocity curve
better.
Summary
4.45
Exercise 4.7
Checkshot / VSP
For this exercise and some that follow you will require the Add-in to the Tools
menu called SOLVER.
In this exercise we are going to find the parameters for Slotnicks equation. We
will use the time-depth values that were used in Exercise 4.6 but the
method will work for any set of time-depth values, either from
VSP/checkshot data representing the velocity distribution throughout the
subsurface, or from time-depth values to a particular formation
boundary. Remember, the model is for a single layer where the
instantaneous velocity increases linearly with depth.
1.
2.
3.
4.
5.
6.
Return to the Ex 4.6.xls file and open the worksheet from exercise 4.6.
Copy the three columns of data to columns A, B and C of a new worksheet
leaving at least 3 blank rows at the top.
In cell C2 type Vo =, in cell C3 type k =and in cell E4 type RMS error =,
right justify the entries.
In cell D2 type a starting value for V0. You may use a guess, 5000 would be a
good number when working in feet, or 1500 when working in metres, or use the
value of the intercept from the trendline derived in exercise 4.6.
In cell D3 type a starting value for k. You may use a guess, a good number
would be about 1, or use the value of the slope from the trendline derived in
exercise 5.
Enter other text as shown in the figure
4.46
Checkshot / VSP
7.
8.
9.
10.
11.
4.47
Checkshot / VSP
12.
13.
14.
15.
16.
Click the SOLVE button, The values of V0 and k should change and the value
in cell F4 should be a lot smaller. Keep the Solver result.
Chart your results.
17.
4.48
2000
1500
1000
500
4.49
0
0
0.05
0.1
0.15
0.2
0.25
0.3
Isochron (sec)
Data
Slotnick
Constant Velocity
Model
RMS error
Constant
93.47251
Mid point time 60.86991
Slotnick
36.44168
Faust
45.4499
Evjen
45.44857
Functions
Extrapolation
Total Zechstein
14000
12000
Isopach (ft)
10000
8000
6000
4000
y = 14870x + 102.67
2000
0
0
0.1
0.2
0.3
0.4
0.5
0.6
Isochron (sec)
Summary
Using check shot data does not limit the type of function we
can use.
Average velocity: constant, as a function or mapped
Interval velocity: constant, as a function or mapped.
Instantaneous velocity as a function.
Some ways of representing the data accentuate the scatter
but this does not result in an inferior depth conversion
provided the depth conversion formula is appropriate to the
cross plot used in deriving the model parameters.
Keep the function as simple as possible and consider how it
extrapolates beyond the limits of the data.
4.50
Summary
Summary
4.51
Summary
Summary
4.52
Summary
4.53