Sunteți pe pagina 1din 95

0|Page

IHS Kingdom®
Introduction to VelPAK

Table of Contents

.................................................................................................................................................... 0
Introduction to VelPAK ................................................................................................................ 1
Chapter 1 – Introduction to VelPAK .............................................................................................. 4
Objectives ........................................................................................................................................... 4
Preparing data for the model ............................................................................................................. 5
Data Preparation ................................................................................................................................. 5
Tutorial Project Overview ................................................................................................................... 9
Chapter 2 – Loading data into a new Model ................................................................................ 11
Chapter 3 – Exploring the VelPAK interface ................................................................................. 21
Chapter 4 – Preparing data in the Model .................................................................................... 25
Model Preparation 1: Define or Revise Layer Definition .................................................................. 25
Chapter 5 - Layer Cake Depth Conversion ................................................................................... 29
Reviewing the wells and the layers ................................................................................................... 29
Analysing the first layer .................................................................................................................... 30
Review the data in the Model Tree............................................................................................... 36
Using the Wizard Sonic log methods ................................................................................................ 37
Reverting to a previous method in the Wizard................................................................................. 38
Using the Wizard for optimisation of depth conversion parameters ............................................... 39
Using Seismic Velocities with the Wizard ......................................................................................... 41
Congratulations! ............................................................................................................................... 45
Chapter 6 - VelPAK Outputs ........................................................................................................ 46
Generating a velocity volume from our model ................................................................................. 46
Moving grids and velocity volumes back into the Kingdom Project Tree......................................... 47
Chapter 7 – Generating multiple realisations based on our depth conversion method ................. 48
Reviewing the results ........................................................................................................................ 49
Running multiple realisations in batch ............................................................................................. 49
Analysing results from multiple realisations..................................................................................... 50
Proven, probable and possible ......................................................................................................... 51
Animating the results ........................................................................................................................ 52

1|Page
IHS Kingdom®
Chapter 8 - Depth Conversion in VelPAK by hand ........................................................................ 53
Using the Curve module by hand ...................................................................................................... 53
Depth converting using our V0+kZ function ...................................................................................... 55
Residual error correction .................................................................................................................. 56
Selecting wells for Curve fitting and residual error correction ......................................................... 58
Trying different depth conversion methods ..................................................................................... 59
Applying residual error correction .................................................................................................... 60
Gridding in VelPAK ............................................................................................................................ 61
Gridding the residual error values .................................................................................................... 61
Kriging residual errors ................................................................................................................... 62
Depth converting using the residual error correction grid ........................................................... 63
Adding or editing control points ....................................................................................................... 64
Validating the residual error correction ........................................................................................... 64
Chapter 9 - Depth converting layer 1 by workflow....................................................................... 66
Creating a workflow .......................................................................................................................... 66
Examining how a workflow works .................................................................................................... 68
Using Numerical Optimisation in a Workflow .................................................................................. 70
Chapter 10 - Cross-validation (“blind well testing”) in VelPAK ..................................................... 72
Using Apparent Interval Velocities in Workflows ............................................................................. 72
Depth converting the second layer ................................................................................................... 75
Using “by hand” depth conversion in workflows ............................................................................. 76
What happens if I change the depth conversion for Layer 1? .......................................................... 77
Testing random combinations of wells ............................................................................................. 77
Chapter 11 - Stacking velocities in VelPAK................................................................................... 78
Importing stacking velocities into our model ................................................................................... 78
Calibrating the stacking velocities to well velocities ........................................................................ 80
Using stacking velocities without wells............................................................................................. 81
Making pseudo-wells from stacking velocities ................................................................................. 82
VelPAK model prerequisites for creating pseudo-wells................................................................ 82
How to create pseudo-wells ......................................................................................................... 83
Comparing a real well velocity curve with a pseudo-well curve................................................... 83
Kriging with external drift ................................................................................................................. 84
Generating the drift grid ............................................................................................................... 84
Chapter 12 - Creating “high definition” velocity volumes ............................................................. 85

2|Page
IHS Kingdom®
Preparing data and launching the HiDef tool ................................................................................... 86
The HiDef display .............................................................................................................................. 86
How does HiDef work?...................................................................................................................... 88
Parameterising the HiDef method .................................................................................................... 89
Generating the HiDef volume ........................................................................................................... 91
Walkthrough using HiDef with an internally generated velocity volume ......................................... 91
Walkthrough using Dynamic Depth Conversion data ....................................................................... 91
Chapter 13 - Notes on model storage and VelPAK files ................................................................ 93
The SGC file ....................................................................................................................................... 93

3|Page
IHS Kingdom®
Chapter 1 – Introduction to VelPAK

VelPAK is a powerful and flexible package that can handle virtually all depth conversion scenarios,
from simple layer-cake grids to complex, non-conformable horizon interpretation. VelPAK can utilise
borehole velocities, seismic velocities and apparent velocities to give an optimal depth conversion
that honours all the available data.

After depth conversion, VelPAK can perturb the parameters in multiple iterations to give a
probability estimate of the depth conversion accuracy, analysing volumetrics, closure and spill points
to reduce risk in drilling plans. This is especially useful in areas where well coverage is limited.

Additionally, VelPAK can add well log detail to an existing velocity volume (generated in VelPAK, by
the Dynamic Depth Conversion feature of Kingdom Advanced, or a processing velocity volume) for
use in reservoir characterisation and inversion studies, for example.

Objectives
This tutorial is designed as a demonstration on how to get up & running with VelPAK, and introduces
some of the most frequently used tools.

The most common scenario for VelPAK is depth converting time grids & is the focus of this tutorial.
The key tools for building a layer-cake depth conversion are explored using the easy to use Wizard
interface. The methods and parameters used in this analysis will then be converted to a workflow for
repeatability and rapid update of the model.

A velocity volume will be generated from the model, and detail added to this using the HiDef tool.

Finally, the model will be perturbed to produce a range of realisations to give a P10/P50/P90
probability distribution of the volumetrics in a layer.

There are many other techniques available in VelPAK not covered in this tutorial, though pointers to
sources of useful supporting material are provided. Horizon profile depth conversion is not covered
in this tutorial.

It may also be fruitful to refer to the VelPAK Glossary of Terms, found under the VelPAK menu option
Help > Contents > Glossary.

4|Page
IHS Kingdom®
Preparing data for the model
In your own projects, when selecting the events for depth conversion, it is important to think in
terms of rock layering where velocities are observed to be changing in the velocity logs for the wells.
If the section can be divided into units where velocities change, the work involved in the velocity
modelling will be much reduced and the modelling much more successful. Sometimes it is necessary
to model thin units within a section, but these are best avoided wherever possible as they can
introduce unique problems and add to the workload.

Usually interpretation is performed with the objective of stratigraphic and structural determination,
which may not necessarily be the best way to define velocity layering, so bear this in mind early in
the interpretation process!

Horizons should be selected where there are observable changes in velocities from the well logs,
clearly defined formation tops and corresponding interpretable events on the seismic. Good
formations top picking and seismic interpretation increase the confidence in the model building
process.

In this tutorial, the velocity information will come from both well velocity curves and seismic
stacking velocities.

Data Preparation
Before launching VelPAK, we need to ensure our data is in good order by creating grids from the
horizon data, by ensuring the formation tops are in good order and that the velocity data from the
boreholes is correct.

Grid Preparation
Grids must have the same cell size and area of Common origin that is ideally an even multiple of
interest, grid through fault polygons the cell size

Well Data Preparation


Sonic log editing (ideally with calibration to check Select well working set in project tree & save the
shots) or Local T-D charts, ensure consistent units project (CTRL+S) before launching VelPAK

Formation Top Preparation


One top corresponding to each gridded horizon Consistent naming of tops (Kingdom aliases are not
(where possible) currently supported)

Figure 1 Data preparation stages within Kingdom

5|Page
IHS Kingdom®
Grid Preparation
It is always easier to use grids rather than horizons for depth conversion. For grid depth conversion,
each layer is depth converted in turn, starting from the shallowest grid down to the next grid in
order.

The seismic reference datum is called Surface 0. The rock between surface and the first grid is called
Layer 1, and the first grid is Surface 1. We will analyse the velocity response in Layer 1 and use that
to depth convert Surface 1. On depth conversion, VelPAK automatically computes the isochron,
isopach, interval and average velocity for each and stores these in the VelPAK model tree.

Figure 2 VelPAK Profile view showing layer & surface numbering

After depth converting Surface 1, we will look at Layer 2, the rock between the first & second grids in
the model. We will analyse the velocities in layer 2, then depth convert Surface 2. As we are
analysing velocities between layers, the isopach for Layer 2 is derived and then added on to the
Depth grid for Surface 1, to give the Depth grid for Surface 2.

We repeat this process for the remaining layers in the model (in this tutorial, 3 layers).

Horizon interpretation data is sometimes referred to as “Event” data rather than Surface data. This
is because not all horizon data can be represented by a continuous surface. VelPAK can depth
convert events that are completely closed, such as a channel or pod structure, or structures that may
contain “multi-Z” values, such as intrusions of diapirs. However, as Kingdom 2018 is unable to
interpret such structures directly, the use of Surface and Event is essentially synonymous.

In the tutorial project, grids have been created from the horizon data with the following
characteristics required by VelPAK:

• All grids have the same cell size (in this case, 50m by 50m)
• The grid origin is an even multiple of the cell size (in this case, rounded down to the nearest
50m in the lower-left and up to the nearest 50m in the upper-right corner)
• Fault polygons have ben gridded through (they can be reinstated on the depth grids)
• Grids have been clipped so there is no vertical overlap (using the “Tools > Calculators > Math
On Two Maps” options to merge grids as appropriate to the data)

6|Page
IHS Kingdom®
Grid crossover not permitted by VelPAK Grids merged for VelPAK

Note: If the interpretation is such that overlapping girds represent the true geology, it may be better
to use horizons in Profile mode for the depth conversion.

In this project, we have ensured the grids cover the area of the 3d survey. The model we build will
cover the area of the grids, but we will only generate velocity volumes matching the 3d seismic
survey extents.

Selecting well data we wish to use


VelPAK can use wells that have a sonic log or time-depth curve for direct modelling of velocities.
Only one type of velocity curve per borehole is currently supported.

If the sonic log is very short, it may be better to use the time-depth curve data, otherwise the sonic
log is preferable as they provide the only direct measurement of depth and velocity pairs we have.
Check shot data, or time-depth charts derived from VSP surveys are generally preferred to the
interpreted time-depth charts.

Verify the time-depth curves by displaying them in the Well Explorer. Ensure you toggle on “Interval
Velocity” and “Average Velocity” overlays and ensure consistency of data between wells. It is better
to resolve any problems before loading the data into VelPAK.

7|Page
IHS Kingdom®
Kingdom has a variety of ways of filtering wells to reduce the list down to the most useful for a
purpose. The easiest way is to create a well subset & set that to be the active working set. VelPAK
will only see the wells in the active working set at the time it is launched; changes in the project tree
will not affect the data visible to VelPAK until it is closed and re-opened.

All the units in the well velocity logs must be consistent. Sonic logs may be recorded in
microseconds per foot or microseconds per metre in the database, but all logs imported into a
VelPAK model must have the same units. VelPAK will use the Project Options value set for
“Z(Depth) Units” (i.e. “ENGLISH” or “METRIC”).

If wells don’t have sonic, velocity or time-depth data, “apparent” interval velocities can be computed
in VelPAK by dividing the depth interval from the wells with the time interval from the
corresponding grids. We can also use the tops to “tie” the depth converted grids to the borehole
depths, so even wells with just formation tops can be useful.

Formation Tops Preparation


Formation tops link the well layer information from grids and horizons to borehole data. If you wish
to use borehole measurements or apparent interval velocities, there must be a formation top
corresponding to each layer in the model.

VelPAK currently does not support Kingdom formation top aliases, so it is a good idea that the tops
are named the same.

In the tutorial project, each borehole has:

• A top that corresponds to the 3 horizons to be used


• Top names with consistent spelling between wells

Review the data


In the tutorial project, create a correlation section through the wells in the time domain. Turn off
horizons so only the grids are displayed, and ensure the corresponding formation tops are turned
on. Display the sonic log on the section – you should see something like this.

8|Page
IHS Kingdom®
In your own projects, time spent checking the data now could save you much time later. Watch out
for inexplicable misties between the tops and grids, patches of bad log that should be repaired in the
log editor, missing tops, inconsistency of spelling of top names between wells from different sources
etc.

Tutorial Project Overview


The tutorial project data provided has undergone most of the data preparation described above so
we are ready to build a model. It cannot be over emphasized that time spent in selecting and
preparing the data for the model in your projects can save many hours in velocity analysis later.

The data used for this tutorial is a zipped Kingdom project which can be unzipped from (typically):

C:\Program Files\IHS Markit\KingdomSuite\<version>\VelPAK\data\veldir\Tutorial Project.zip

The project uses the SQL Server Express database. Unzip it into a folder on which you have full SQL
Server access (ideally on a local drive for performance – the tutorial when completed will occupy
about 4Gb of disk space). Select author Student when you open the project in Kingdom 2017.

Prior to launching VelPAK, it is always a good idea to ensure the data to be used is in good condition.
This invariably saves time later in the modelling process.

If you wish to leap right into VelPAK, there is a model with the data prepared that you can load into
VelPAK immediately. However, it is recommended that you familiarise yourself with the data
preparation procedure as it will save a lot of time in your own projects if you understand how to
condition the data correctly. The pre-prepared model can be found by opening the tutorial project
(unzipped above), launching VelPAK and then using “File > Open” and selecting “Base Model.bin”.
You may now jump directly to Layer Cake Depth Conversion.

The project consists of a single 3d survey, seven 2d lines and 9 wells, some with good sonic logs. The
2d lines have been tied to the 3d survey using mistie analysis, and interpretation made on all the
lines. Interpretation has been made on the 3d survey on every 20th inline (normal to the prevailing
structure).

9|Page
IHS Kingdom®
There are 3 horizons in the project tree. We will use VelPAK to depth convert these by building a
velocity/depth relationship for each layer between the gridded horizons. We will use different
techniques for each layer purposely to demonstrate different uses of the software. They are not
necessarily the best methods to use for this data, and the project has been simplified for the
purposes of this tutorial.

10 | P a g e
IHS Kingdom®
Chapter 2 – Loading data into a new Model

Save the project (Project > Save Project or CTRL+S) then launch VelPAK (Project > VelPAK). Saving
the project ensures that VelPAK will only “see” wells that are turned on in the Project Tree, which
could save a lot of time if there are many thousands of wells in the project.

When the VelPAK window appears, there aren’t many options available until you create a new
model or open an existing one. Create a new model

• Use File > New and enter a name for the model e.g. “My Base Model”.

Tip: it is strongly recommended to always use the suggested folders for saving models, workflows
etc. in VelPAK. Usually the only time you will need to use a different folder is for either import or
export of data to & from the model.

Start copying data from the project database into the mode

• Use File > Open TKS > Replace Mode…

Tip: File > Open TKS… has two options, “Merge Mode” and “Replace Mode”. “Merge” allows you to
add or update data in the model (for example, new well data), whereas the “Replace” option will
replace all of the data of that type. For example, if you wish to add a well to the model, use “Merge
Mode”. If you wish to remove all wells from the model, replacing them with the selected wells, use
“Replace Mode”.

For this tutorial, toggle on “All” on the front page


of the Wizard. This ensures maximum options
are available, even if we don’t wish to select
them.

Tip: If your project has many thousands of wells and you already have well data in the model that
you do not wish to update, toggle off “Select Wells” to remove unnecessary database queries and
improve performance.

• Press Next to step through the link.

You are presented with two tree views. The left hand is the Kingdom Project Tree and the right hand
is the VelPAK Model Tree. We are going to drag data we wish to use in the VelPAK modelling from
the Project tree into the model tree.

The title bar at the top of the display indicates what data to import.

Selecting Well data


• Open the Well folder in the left-hand tree.
• Drag the Well Locations icon from the Project tree to the Model Tree Well folder.

11 | P a g e
IHS Kingdom®
o If you wish to remove a well from the Model Tree, right-click on it and select
Remove. The check boxes next to the well are controlled by the options in the
Preference pane, rather than directly from the tree view.
o You can drag individual wells into the tree if you don’t select them all using Well
Locations

Your tree view should look like this:

No data is copied into the model now; transfer only actually occurs at the end of the link. You can
change your selection at any point before you end the link.

The right-hand panel of the wells selection dialog has lots of options for viewing the well data and
selecting the velocity data from each well. VelPAK currently permits one velocity function per well
to be imported into the model.

The Preference options allow you to set general rules for specifying which velocity data to use for all
the wells. The Well List Options allow you to group the well data table by type. These options
enable you to quickly sort through the well data to ensure you select the most appropriate well
velocity data for the model.

An alternative to the Well List Options is to use the data table in-built sorting options. Ensure Group
By Well is selected under the Well List Options. Above the data table is a floating button labelled
WellName. Click &drag this button onto the main data table then release the mouse. The button
disappears and you will see a simple list of all the well velocity data for the wells selected in the
Model Tree.

12 | P a g e
IHS Kingdom®
You can choose to sort (and sub-sort) the table in any way you choose. For example, to sort by Curve
Type (i.e. whether a well has a sonic log, velocity log and/or time-depth chart) drag the Curve Type
header upwards & release the mouse.

You can see instantly that 3 wells have no velocity data, 7 wells have sonic logs and 6 wells have local
time-depth charts.

How many types of sonic log do you have? Open any of the groups using the + icon, and drag the
Curve Name header to the top of the table, dropping to the right of the Curve Type header.

Open the Curve Type: Sonic folder using the + icon. You can see three curve names. Each folder lists
the wells with each log curve name. For example, there are have 5 wells with a sonic log called DT.

You can see how useful this sort mechanism tool is if you had many wells with many velocity curves.
It is available on all the data grids within the link too, not just the Wells selection.

To select the data to use for a well, use the Select column checkbox. For example, in this case if you
wanted to ensure well 48/14-4 used the DT_CalbTest1 velocity curve, open that group using the +
icon and check in the Select column. The check box in the DT group is automatically unchecked as
you can only select one velocity function per well.

13 | P a g e
IHS Kingdom®
You can use the Clear Selections button to deselect all data then use the Preference options to
reselect data by default.

For this exercise, ensure 48/14-4 uses the DT curve by checking on the Select column in the DT
group. The DT logs for the wells are the “raw”, unedited sonic logs for the wells. In a real project,
you would spend some time editing these log curves in to remove spikes, reconstruct missing log
runs and then calibrate the logs to the check shot/time-depth curve. However, for the sake of
example, we will perform a crude calibration in VelPAK later.

Remove the sorting of the table. Your final well selection should look like this:

Finally, ensure the sonic or velocity logs have the units set correctly (units of logs aren’t recorded in
the Kingdom database). Imperial (English) implies units are in microseconds/foot for sonic logs or
metres/foot for velocity logs. Metric implies units are microseconds/metre and metres/foot for
velocity logs.

Press Next to proceed through the link.

14 | P a g e
IHS Kingdom®
Defining the layer model
The Grids folder of the Kingdom Project Tree is opened, showing the grids in the Kingdom project.
You should know which grids are important layer boundaries as discussed previously.

First define the number of layers that are going to be in the model using the “Number of Layers”
Preference. In this case, select 3 from the drop-down list (you can define up to 30 layers, but
typically the number of layers is less than 10).

The Model Tree view appears with folders for Layers 1 to 3.

Under each layer is a folder for XYZ, Fault, Polygon, Grid and Interpretation data. At this stage, we
are only interested in Grid data.

The shallowest grid in our model is the Upper Triassic. Click and drag this grid and drop it into the
Grid folder for Layer 1. As you move the mouse over the Grid folder, it expands to show various data
types. The Upper Triassic grid is a time grid, so drop it in the Time folder.

If you drop the grid into the wrong folder, right-click on the grid and select Remove. Note you can
only put one grid in each folder.

This grid becomes the “Master Lattice” for the model. All other grids must have the same grid
parameters as this grid.

• Drag the Lower Triassic grid from the Kingdom Project Tree into the Layer 2 > Grid > Time
folder.
• Now drag the Base Triassic grid from the Kingdom and drop it into the Layer 3 > Grid > Time
folder

If this message pops up:

• Click Yes and a new folder appears called “ReSampled Surfaces”. Drag the Base Triassic grid
from this folder into the Layer 3 > Grid > Time folder. Review the grid properties in the data

15 | P a g e
IHS Kingdom®
table – the resampled grid parameters match the Master Lattice parameters. You should
carefully check the grid for re-gridding artefacts once loaded into VelPAK.

We now have a 3-layer grid model.

Later we will utilize a planimeter polygon to constrain computation of volumetrics for the top of our
target reservoir, layer 3.

• Open Polygons folder in the left-hand tree


• Drag the polygon named Prospect Extents into the Layer 3 > Polygons > Time slot

At this point you could drag horizon data into the Model Tree if you wished to work in Profile mode,
but we are not going to cover Profile mode in this tutorial as it tends to be for detailed work with
multi-Z interpretation.

Press Next.

Associating formation tops to the grid layers


The next screen allows us to associate formation tops to the corresponding grids previously selected.
This provides layering information for the wells, and so is important to get right.

Note the icons may look different, according to which version of VelPAK you are using.

The objective is to drag the tops that correspond to the grids in the Model Tree onto the correct
layer slot.

The Kingdom Project Tree shows the author’s formation tops whilst the Model Tree shows the
Layers defined by the grids on the previous screen.

Drag the:

• Upper_Triassic top into the Layer 1 > Upper Triassic folder (under “Tops in order of
preference”)
• Lower_Triassic top into the Layer 2 > Lower Triassic folder
• Base_Trias top into the Layer 3 > Base Triassic folder.

The formation tops data grid can be sorted using the same mechanism of dragging the header into
the area above the table.

16 | P a g e
IHS Kingdom®
A very important view is the Group by Layer Preference option (or drag the Layer No. header into
the area above the table). This shows the tops in each well used to define each layer. Tops not used
in the layer definition are assigned the value of 0 for the layer number.

Group the tops by layer number. We immediately see something strange. Layer 1 and 8 have 8 & 9
items respectively, whilst layer 2 only has 1 item. We haven’t defined all the layers for our 9 wells.

Open the Layer 1 folder – we seem to be missing one top from a well. We can see we have a top
called U_Trias in the Project Tree list. Drag this into the Model Tree folder for Layer 1. The data
table is reset so re-sort by Layer number. We now have 9 tops defining layer 1. Opening the Layer 1
folder shows well 48/14-4 doesn’t have an Upper_Triassic top but it does have the U_Trias, which in
this case is equivalent.

Drag the Lwr_Triassic top into the Model Tree folder for Layer 2 & re-sort the data table. Layer 2 in
the data table now has 10 tops – one more than the wells we have! Inspecting the layer, we can see
that well 48/15A-5 has both Lower_Triassic and Lwr_Trassic tops, at depths of 1389.9m and
1391.6m respectively. The top that defines the layer is the first in the list.

In this case the Lower_Triassic top will be used, rather than the Lwr_Triassic top as it is highest in the
list. In this example, the tops are near enough in value not to make a difference, but you can re-
order the tops by right-clicking on a top and moving up or down as required.

Check Layer 3. We have a top for each well so that is okay.

On your data check each layer for consistency thoroughly. You may need to exit VelPAK and go back
into Kingdom and interpret more tops if the layer definition is wrong.

17 | P a g e
IHS Kingdom®
Ensure your tops list looks like this before
proceeding.

You can preview the layer definitions graphically by pressing the Load. A window will appear
showing the selected well log data and the layers in the wells defined by the tops selected. You can
change the display parameters for the plot using the options on the right of the parameters pane. If
you change the well logs by stepping back through the wizard and reselecting the well data,
remember to reload the data using the Load button before updating the plot with the Plot button.

Page through the preview plot using the buttons to check the layer definitions, velocity
curves etc. Just because some wells don’t contains the velocity logs it doesn’t mean they are not
useful, provided they do have formation tops picked.

When you have finished the layer definition, press Next.

18 | P a g e
IHS Kingdom®
Selecting Seismic survey data
You may need to select seismic survey data if you wish to generate a seismic velocity volume from
the model, use the HiDef or display seismic traces on the Profile section.

In this case we are only concerned with the 3d survey, but it’s useful to show the 2d lines on the
VelPAK map so drag the entire Seismic2d folder from the Project Tree to the Seismic Trace folder in
the Model Tree.

Drill down on the Project Tree Seismic3d folder and drag the SNS__3d NoSeismic data type into the
Seismic Trace folder. This indicates that in this project there is no seismic for the SNS__3d survey; in
your projects you would typically see the seismic data types loaded for each survey in the tree.

Under Preferences, there are two options:

• 2D Navigation and 3D Geometry copies just the survey coordinates into the VelPAK model
• 2D Navigation and 3D Geometry and SEGYs copies the selected survey coordinates into the
model and then exports the selected data types to SEGY format (if it can’t already find the
attached SEGY file).

It is not often the SEGY data is required, so ensure you select the 2D Navigation and 3D Geometry
option.

Press Next.

Selecting Seismic Processing Velocities


VelPAK can incorporate seismic processing velocities into the model in several ways. If you have
processing velocities loaded as a seismic datatype, you can select the data on this screen. In this
tutorial, we are going to use stacking velocities but they have been provided as an ASCII file which
we will import later.

The mechanism for selecting a processing volume is the same as selecting survey data – drag from
the Kingdom Project Tree and drop into the Seismic Velocity folder. Ensure you specify the correct
Velocity Type in the Preference options & toggle on Load Processing Velocities.

Specify the spacing for lateral decimation and a time increment in milliseconds for vertical
decimation. Too many velocity samples can cause the VelPAK model to run slowly and often add
little value to the model. The default option is to specify the decimation in terms of distance units,
however the Custom option allows specifying the decimation in terms on inline and crossline
increments.

For this tutorial, ensure no volume is selected in the Model Tree & ensure Load Processing
Velocities is toggled off.

19 | P a g e
IHS Kingdom®
The section ”Utility – Export Time-Depth Curves using 3d volumes” is a utility feature that used to be
available from the VelPAK “Tools > Volume Tool” menu option. If you have selected a 3d survey
containing a velocity volume in the tree, for each well previously selected you can generate a time=-
depth curve from the volume along the well trajectory. This time-depth curve is exported to the CSV
file specified in the dialog. This can be edited and imported into the Kingdom project as required.

Press Next to continue.

Transferring data to the VelPAK model


Up to this point, the contents of the VelPAK model haven’t changed. You can use the Back button to
go back through the link to re-select data.

Press the Apply button to start the transfer to the VelPAK model.

Note that if you select to transfer seismic trace data via SEG Y, the export to SEG Y file (if the surveys
are not “attached” via SEG Y Direct) may take some time to generate.

Press Exit to exit the link.

The console window (at the bottom of the main VelPAK window) lists the data it is loading, finishing
with the message “Model Tree Updated”.

Data has been copied from the Kingdom project database into a local model. The model data can be
worked on without affecting the data in the Kingdom project tree. Only when we have finished
working on the model will we transfer data back into the Kingdom project database. The VelPAK
model can be updated with the new data from the Kingdom project database by re-running the File
> Open TKS… link, but ensure the Merge Mode option is set correctly (you can merge data into an
existing model, or replace it entirely).

Now is a good time to save the model using File > Save, File > Save As… or the equivalent floppy disk
icons in the top-left icon bar.

When re-opening the model, you can use File > Open…, or more conveniently File > Recent Files… to
give you a list of your most recently accessed models to choose from.

20 | P a g e
IHS Kingdom®
Chapter 3 – Exploring the VelPAK interface

Before working with the data in the model let us take a tour around the VelPAK user interface, as it
is somewhat different from the main Kingdom application.

The main VelPAK modules are accessible from the top bar in the main VelPAK window. Clicking on a
module button opens the module in a tabbed window interface. Click on the Surface, Well, Curve
and 3d modules to open them:

Each module has its own set of icons and action buttons and its own unique set of “fly-
outs” on the right-hand side of the module. These contain parameters and actions to
perform various functions in the software “by hand”.

Click on the Surface tab - here are the first three fly-outs on the right-hand side of the
module:

Fly-outs are opened by clicking on them. They “fly back” when you click outside them,
but you can pin them open using the pin icon in the fly-out title bar.

Modules and fly-outs are docked by default to the main VelPAK window. Windows can be detached
into “floating” mode by double-clicking on the tab title.

Double-click on the Surface tab to float the


Surface display

To dock a floating window, double-click on the title bar of the window and it will be re-docked in the
main VelPAK window.

Modules may also be docked adjacently, rather than stacked in a tab view. To dock a module, click
and drag the tab onto the main VelPAK display and a docking icon will appear. Release the tab on
one of the docking positions and the will be positioned accordingly.

21 | P a g e
IHS Kingdom®
• Relative sizes of docked windows may be changed by dragging the divider bar between
windows.
• To remove a window from the docked layout, drag the window title tab into the centre of
the docking icon.

Here’s an example of VelPAK modules docked – obviously this arrangement would benefit from a
higher resolution monitor or multiple screens.

Experiment with the behaviour of windows. You can use the File > Layout menu options to save,
reset or make customised layouts your default.

Most modules have customisable displays, with similar mechanisms for customisation.

Customising the display


Open the Surface module, then in the Model Tree, open the folder “Surface > Layer 1 > Grid” and
double-click on the “Time” grid. If the grid isn’t displayed, use either the:

22 | P a g e
IHS Kingdom®
• Display Types drop-down and toggle the display to “Shaded”, or
• Display fly-out, set the Display_Type to “Shaded”, then press Apply.

Generally, the drop-downs are quicker to use than the Display fly-out for changing one item on the
display; if you wish to change several display features the fly-out will be quicker.

Note that the Wizard and Workflow systems tend to reset display parameters so it is worth
familiarising yourself with the display options to quickly turn on what you want to see or set a
particular display style. Once you have defined a preferred display style for a particular mode, you
can create a simple “one-click” workflow to set the display style.

For now, on the Display fly-out, change the Contour_Auto parameter to “Yes”, then press “Apply”,
to ensure the software always selects a sensible contour increment for the Surface map display. You
can set Contour_Auto to “No” and set a Contour_Incr value if you wish to directly compare maps
with a fixed contour increment.

Click on Contour_Colour to bring up a palette selector. You can load your user-defined Kingdom
colour palettes into the list by pressing the Kingdom icon (multi-selection of files is supported).

To tidy up the well annotation, click on the “Preferences” tab (bottom-left of the main window) and,
in the Well section, toggle Number and UWI to No (double-clicking on Number and UWI is usually
faster than using the drop-down).

To see other layers in the model, use one of the following:

• the green Next Event and Previous Event arrow icons

23 | P a g e
IHS Kingdom®
• the Surface selector and specify the surface number:
• double-click on a grid in the model tree

You can change the type of data being displayed using the Slot selector:

Currently we only have Time domain grids in the model, so changing Grid to a different domain will
result in a blank display.

The Surface and Slot windows are detachable


from the Model Tree box, and can be docked
around the Model Tree.

If you have a tall enough display, one useful


layout allowing quick access to both Surface and
Slot selectors is shown here (your grid labels
maty appear differently).

You can save the layout using the File > Layout
menu options.

Be sure to return to Surface 1 (Upper Triassic), & set the Grid in the Slot selector to “Time” before
continuing.

Tip: To change the display colour of a surface in the model, click on the Surface number in the model
tree, then change the Colour value in the Properties tab that is positioned by default below the
model tree. You can also change the Name of the surface in this tab. If you select a grid in the model
tree, you can see the grid properties (X/Y extent, minimum and maximum value etc.).

24 | P a g e
IHS Kingdom®
Chapter 4 – Preparing data in the Model

Once data is loaded into a model, two procedures may need to be performed.

Define or Revise Layer Definition


Associate formation tops to grids to Not required if seismic velocities only
create well layers that correspond to are to be used or layer defnition
the grid intervals performed on import

Well to Seismic Event Velocity Calibration


If sonic logs are not calibrated to T-D
Not required for calibrated logs or
charts, tie a formation top to a
time-depth charts
prominent seismic event

Model Preparation 1: Define or Revise Layer Definition


We loaded data into the Kingdom model and applied a layer definition in the link process so no
further attention is required. However, you can revise and change it in the Layer module once data
has been loaded. You may wish to do this if you have many thousands of formation tops, complex
geology, or re-entrant tops on an event.

If you do change the layer definition, it is changing a fundamental part of the model and you should
re-depth convert any data in the model to ensure consistency.

Advanced layer definition is beyond the scope of this tutorial, but is discussed in the online help
(under Help > Contents > Layer Tool Module).

However, it is always a good idea to review the layer definition for each well before proceeding to
do any work in the model.

Reviewing the layer definition in the wells


Open the Well module by clicking on the Well icon, or using the View > Well menu option.

You should see the velocity curve for the first well in the Model tree displayed, 48/14-4. If not, open
the Well folder in the model tree and double-click on 48/14-4 to set it to be the current well (or use
the red Previous Well and Next Well icons to step back or forwards through the well list).

The Well display shows the sonic log curve converted to velocity, plotted depth vertically
downwards against instantaneous velocity horizontally. The formation tops are marked to the left-
hand side of the curve, and the grids at the intersection of the borehole trajectory on the right-hand

25 | P a g e
IHS Kingdom®
side of the velocity curve. Tops posted in blue indicate the current layer active in the model, other
tops are posted in black. The time grids have been depth converted using the well velocity curve
displayed.

To change the display to the time domain, using the Display Types drop-down, or the Display fly-out
& set Display_Type to “Time”. The log and tops are converted to time using the velocity curve
displayed.

The orange block shows the vertical thickness of the layering for event 1 at the well location. Use
the Display fly-out and set Show_Events to “All”, and Top_Type to “Layer”, then press Apply. This
shows as the three layers in the model as coloured blocks, and displays only the tops used in the
layer definition, for clarity.

Now display well 48/15A-5, either by double-clicking the well in the model tree or by using the red
Next Well icon.

We can see that there is a mismatch between the tops and the grids in the time domain – far more
so than if we were to display the well on the cross-section in 2d3dPAK. This is because 2d3dPAK
sections use a time-depth chart as the velocity function, whereas VelPAK is using the velocity log.
The borehole velocity log doesn’t measure the same velocity as the seismic velocity, and hasn’t been
run from the seismic datum (flip the display back to depth to see it starts at around 300m). We
know we can trust the depth measurements from the well, but we need to calibrate the velocity log
to match the seismic events for display.

Set the well Display back to the Depth domain.

26 | P a g e
IHS Kingdom®
Model Preparation 2: Well log calibration
Ideally, all velocity logs would be reconstructed back to the seismic datum, and calibrated to seismic
velocities. Kingdom can perform this function in the SynPAK, GeoSyn and the Seismic Inversion
modules, but if we haven’t got calibrated sonic logs, we can perform a crude but useful calibration in
VelPAK quickly.

Note that if you used time-depth charts instead of sonic logs, calibration is not required. Also,
calibration does not necessarily affect the outcome of the velocity modelling if you don’t use
apparent velocity methods (i.e. velocities derived using well depth and corresponding grid times).

Tip: you can tell which wells need calibrating by looking at the well title label - uncalibrated wells
have the word “uncalibrated” in the title.

To perform calibration, select an event that is clearly defined in most wells and the seismic pick has a
high degree of confidence. In this case, we will use the Upper_Triassic top and grid event, event 1.

• Open the Calibrate fly-out


• Set Type to “Event” and enter the Event number as 1
• Press Apply

The plot is updated; ensure the display is in the time domain to see what has happened. A
replacement velocity has been computed for the missing part of the log to tie the Upper_Triassic top
to the Upper Triassic grid (i.e. the coloured blocks have started matching either side of the velocity
curve). We would still expect to see some misties, but they are much more reasonable, with layer
thickness approximately matching. In this well, you will have to zoom in closely to see the mistie.

These misties are nothing to worry about – in fact the objective of the velocity modelling is to
stretch and squeeze the seismic time to match the well depths!

Change the Calibrate fly-out Wells option to “All” and press Apply. This will use the same schema to
calibrate all the wells in the model. You can also calibrate wells individually to different events
should you need to, and remove the calibration (“Uncalibrate”) from wells using the same fly-out.

Once wells have been calibrated, it can be useful to compare the velocity logs from different wells.
Open the Display fly-out and set the Overlay_Well to 48/14-4 & press Apply. You can see there is a
good correlation between the two velocity logs. Turn off the overlay well by selecting the blank field
at the top of the well list and pressing Apply.

Usually at this stage it is worth stepping through wells list (using the red Previous and Next icons) to
look for problems, misties, bad picks etc. It is particularly important to review time-depth curves, as

27 | P a g e
IHS Kingdom®
often these will contain completely unrealistic velocities that have been used to force fit the well
synthetic to the seismic. Time spent in quality control of the input data can reap benefits later.

Stepping through the wells, it is clear wells 48/15A-6, 48/19A-2A & 48/20A-2 have tops but no
velocity curve & are outside the area of the grids, 48/19A-4 has a T-D chart rather than a velocity log
& is also outside the grid area. Obviously, if there is no velocity curve for a well, tops can only be
displayed in the depth domain, and grids can only be displayed in the Time domain display.

Once well calibration and visual QC has been performed, save your model. Now the fun stuff begins!

My logs are already calibrated sonic logs – what do I do?


If you have loaded calibrated sonic logs, it is possible that they are not flagged as calibrated by
VelPAK (you can see in the Well module title the status of each curve).

To fix this, simply use the Calibrate fly-out and calibrate all wells to a Constant value of 0. VelPAK
will then consider the velocity curves as calibrated without changing the data.

28 | P a g e
IHS Kingdom®
Chapter 5 - Layer Cake Depth Conversion

We are going to depth convert the grids in our model a “layer cake” fashion. We will model the
velocities in the first layer & then depth convert the first grid. We will then model the velocities in
the second layer, compute the interval velocity for that layer, compute the isopach for that layer,
and add the isopach for the second layer to the depth of the first layer to give a depth grid for the
second layer. We will then repeat this process for the third layer.

VelPAK handles the “nuts & bolts” of this for you; all you need to do is provide a velocity method & if
necessary decide how to handle the residual correction to tie the depth converted grid to the
formation tops.

VelPAK can be used in three main ways - using the Wizard, Workflows or driving the software
manually.

Module Benefits

Increasing time and effort


Wizard Quick & easy to use, pre-defined methods
Many popular depth conversion techniques
Ideal introduction to depth conversion and core software
functionality

Workflow Broader range of techniques


More choice on methods & parameterisation
Always used for uncertainty & risk analysis

Manual Full range of pre-built techniques and user defined methods


Complete control over every step of analysis & depth conversion
Complete customisation of parameters, mapping etc.
Increasing time and effort

In this tutorial, we are going to drive the software using the Wizard, before moving on to using the
Workflow system for the uncertainty analysis using parameters defined in the Wizard. Manual use
of the software is outside the scope of this tutorial, though tips will be given where appropriate.

Before starting the Wizard, it’s a good plan to further review the data we have.

Reviewing the wells and the layers


Display well 48/14-4 in the Well module by double-clicking on the name in the Well folder of the
Model tree. Make sure the Display > Display_Type option is set to Depth. Look at the velocities in
each layer.

Step through the wells one by one (use the red Next Well icon or double-click on the well
name in the model tree). Wells 48/15A-6, 48/19A-2A and 48/20A-2 don’t have any velocity values,
but they do have tops so we can still tie our depth conversion surfaces to those tops if we choose.

29 | P a g e
IHS Kingdom®
Well 48/19A-4 doesn’t have a sonic log. On import, we chose to use the sonic logs in preference to
T-D charts. With no sonic log, the T-D chart has been used but this one appears to be quite useful
(which isn’t always the case with severely under-sampled charts).

Reviewing the velocities in the wells, the reason why these layers were chosen should be clear.

In the first (orange) layer, there is a clear trend of increasing velocity with depth. In the second
(yellow) layer, this trend is dominated by more abrupt changes in velocity (due to changes in
lithology). The third (green) layer is much more stable with nearly a constant velocity through the
layer.

Tip: you can edit layer properties by clicking on the Layer in the Model Tree then using the Properties
pane below to Model Tree to select colour, rename the layer etc.

It is beyond the scope of this tutorial to examine what is happening below the third layer, but those
higher velocity units are genuine

Analysing the first layer


Studies have demonstrated repeatedly that for uniform, consolidated sediments that haven’t
undergone any significant diagenetic change during compaction, there is a linear increase in velocity
with increasing depth & pressure. The actual propagation velocity primarily depends upon the rock
matrix, porosity and fluid content. In more variable geological regions, there may be no clear
depth/velocity relationship, and so other methods may be used.

Why do we even need to model velocities? If the rock layers were non-dipping, homogenous facies
that underwent compression, compaction and diagenesis at the same rate then modelling velocities
would be pointless; a single time-depth chart from one well would be perfectly useable.
Unfortunately, this is almost never the case, and if there is limited spatial well control (which is
invariably biased in distribution), a means of predicting the velocities away from known information
is required.

Looking at the well logs for our first layer, we can see that there is a clear increase in velocity with
depth, and it looks quite linear. Let’s analyse the velocity to depth relationship. The simplest way is
to use the Wizard tool to look at the data in different ways and work out what the best relationship
is.

Running the Wizard


Click the Wizard icon on the module icon bar. The Wizard Overview page opens in a new
tab.

This tab may be docked and floated just like all the other tabs. Generally, when running the Wizard
it is a good idea to float it away from the other windows, so you can interact efficiently with both the
Wizard dialogs and the screens it presents.

The Wizard Overview gives a summary of the state of the current model. The top table shows one
row per layer in the model, with columns indicating the status of those layers.

Because we haven’t done anything with the model yet, most of these columns are empty.

30 | P a g e
IHS Kingdom®
The Help toggle button shows or hides the Help panel below the Wizard Overview table.
Please review this information carefully – it contains useful tips to ensure the smooth running of the
Wizard. You can drag the slider bar at the top of the Help page up or down to show more
information as space allows.

We need to define a depth conversion method for the first layer in our model:

• Click the Run button in the first row of the Overview table.

The Wizard is launched with the option to choose one of 6 broad categories of depth conversion
methods. To the right of the Methods panel is a Help screen giving an overview of each of those
methods. This Help screen can be collapsed by pressing the collapse icon to the right of the Help
screen.

Regression is a common method for determining velocity-depth relationships, so let’s start with that.

• Ensure the Curve method is selected


then press Next to proceed through the
Wizard

You are presented with a data verification screen that reports the data in the model is in good
enough shape for the method selected. Note that this screen does not validate the data for
potential errors or guarantee any sort of good results – it just checks enough data exists!

Note the “Previous Depth Surface Exists” option is greyed out because we are running the Wizard for
Layer 1. Layer 1 does not require a previous depth surface (it is assumed the Seismic Reference
Datum is at depth 0.0).

• Press Next to proceed.

31 | P a g e
IHS Kingdom®
You are presented with some options to choose
from. The Help screen gives an indication as to
what each option does.

A very popular depth conversion method is to


determine a linear relationship between the
apparent interval velocity and mid-point depth
of a well.

• Select Apparent Interval Velocity Vs Depth to Middle of Layer


• Press the Generate Function button.

If not already open, the Curve, Well and Surface modules are opened.

Look at the Curve module display. A graph of Well Layer Midpoint Depth vs Vertical Apparent
Interval Velocity is shown, with one sample per well & a regression line fitted. In this case there are
very few sample points, so you can toggle on Show Labels on the Wizard options panel and press
Generate Function again to update the display with well annotations turned on.

The bottom-right of the plot has the statistics of the data and the regression. A0 and A1 are the
intercept and gradient of the regression line. The standard error, r2 (correlation coefficient),
adjusted r2 and F-Stat values are posted. These don’t suggest a good correlation between mid-point
depth and interval velocity.

32 | P a g e
IHS Kingdom®
Ensure the Edit Mode menu is set to “Point” and then ensure the edit icon is set to ”Point Edit”

Click on samples on the plot; they become greyed out when deselected, and the regression line
refits. Keep an eye on the value as this may help decide if the “fit” improves. Click on a deselected
sample to incorporate it again in the regression.

Set the edit icon to “Point Pick” and click on a sample to display the well in the Well display
(& set that well to be the “current” well in the model). Remember in this case, the plot we are using
is an apparent interval velocity, so formation top depths and grid times, not log values, are used to
compute the interval velocity.

Select a set of wells that give the best fit e.g.

Press the Next button at the bottom of the Wizard window. The linear depth conversion function
from the Curve display is used to depth convert the time grid.

Display the Surface module map. We see the computed Depth grid with red values at the well
locations posted on the map.

33 | P a g e
IHS Kingdom®
TIP: If you don’t see the red values, use the Layers Visible
drop-down menu above the Surface map and
ensure XYZ and XYZ Label are turned on.

You can use the Display fly-out and set Xyz_Box to “Yes”
or “No” to turn on or off a white background box for
maximum legibility.

These red values are the “residual errors” or “mistie” values: the formation top depths minus the
depths predicted by the depth conversion function. These values are in project depth units (in this
project, metres).

An alternative way to think of the mistie values is the value that needs to be added to the depth
converted surface to tie the formation tops; this way a positive number means the velocity function
is too slow, and a negative number means the velocities are too fast.

The errors range around a mean of zero because the depth conversion function is based on the
linear regression through the well samples, which of course works by minimising the differences
between the samples to the best fit line.

Try some of the other Curve methods. Press Previous on the bottom of the Wizard page to return to
the Curve (regression) options.

• Toggle on Apparent Average Velocity vs Time to Base of Layer on the Wizard and press
Generate Function, then press Next to use the new function as the Depth conversion
method and to update the residuals.
o The Curve and Surface displays update with values for the new function. Are the
error values better, worse or much the same?

We will settle on our first method.

• On the Wizard, select Apparent Interval Velocity Vs Depth to Middle of Layer


• Toggle ON the option for Multiple Realisation Parameters for Workflows. The option
“Show Confidence Bands” will be turned on. Leave the confidence level at 95%.
• Press the Generate Function button
• By turning on the multiple realisation option, we have primed the software with the
parameters it needs to generate a series of depth conversions within the confidence bands
plotted (95% confidence). These results aren’t realised until we tell the software to do so
later – we are just setting the options here for convenience.
• Press the Next button

The Time grid is depth converted using the velocity-depth function and the Depth grid displayed on
the Surface map.

34 | P a g e
IHS Kingdom®
Another screen in the Wizard appears, Error Correction Options. This screen enables you to create a
grid (using Simple Kriging) from the error values and add this grid on to the Depth grid to create a
Depth grid that ties the formation tops. This procedure is optional – many people prefer not to
apply error corrections on a per layer basis.

• Toggle on Generate Error Grid


• Press Generate Error Correction Grid. After some processing the error correction grid is
displayed in the Surface map.
• Change the Kriging range to e.g. 2000m for more localised correction
• Press the Generate Function button to show the revised grid
o This will vary in appearance depending upon which wells you deselected on the
Curve graph

Just as with the regression, we have the option to set parameters for multiple realisations. In this
case, we can randomise the error correction radius between two values we specify.

• Toggle on Multiple Realisation Parameters for Workflows


• Set the Minimum Range and Maximum Range as 2,000m and 20,000m respectively

By doing this we have instructed the software that when we generate the different depth
conversions using a regression within the 95% confidence bands we specified earlier, we also wish to
randomise the error correction radius between a localised 2,000m and larger area of 20,000m.
These values aren’t used until we generate the multi-realisations later, but now is a good time to set
the values after you experimented with the radius interactively.

Tip: In a real project you might wish to make several passes through the model to refine it to a best
technical case & only at that point consider how you might randomise the model, as you simply won’t
have much idea how certain or uncertain the model is until you have tried building it.

• Press Next to apply the error correction grid

35 | P a g e
IHS Kingdom®
The time grid is re-depth converted, the error correction applied to force the depth grid to tie with
the formation tops, and the interval and average velocity grids back calculated to the velocities
required to tie. This data is stored in the Model Tree.

The Wizard then presents a page for volumetric computations. Since our target reservoir is capped
by our third layer, there is little point in computing volumetrics for the first layer so simple press
Next to move through the Wizard.

We are then presented with an option to save data outside of the VelPAK model (results are also
stored in the model tree). If we were to perform multiple realisations it is often useful to animate
certain surfaces, so we could save the images externally as images or ZMAP format grids for use in
other packages. We will do this later for our target layer, but not now.

• Press Next.

We then come to the final page of the Wizard, where we save the options and parameters used in
the form of a “run file”.

• Use the default name and press Next.

We are taken back to the front page of the Wizard. We can see now the run file used in the Wizard
overview table. We can re-run this run file at any point, should we change the well or grid data, for
example.

Review the data in the Model Tree


We started off with just Time grids, but the Wizard has computed the grids we used for depth
conversion and stored them here. Open the “Upper Triassic > Grid” folder in the Model Tree.

Double-click on the Interval Velocity and Average Velocity grids to display them on the Surface map.
For the first layer, you would expect them to be the same – are they? You can also display the Depth,
Ioschron and Isopach maps, which again should be very familiar for the first layer.

Open the XYZ folder. This is where point data is stored. Double-click on an item to post the values
on the Surface map as XYZ points.

The data “Error: Depth Errors (Tie to Time grid)” are the residuals required to tie the time converted
depth grid to the well formation tops, at the formation top location in XY space, as seen before.

36 | P a g e
IHS Kingdom®
The “Error After: Depth Errors (At Depth Grid)” are the residuals after applying residual correction.
Double-click to see these posted on the map. If you applied residual error correction, they should all
be very small numbers (centimetres) where the tie occurred. They are not exactly zero as the well
formation top doesn’t lie exactly on a grid cell centre. Note that if wells were turned off for residual
error correction (see later), the “Error After” value is still always computed. Therefore, you may see
a different number of points in the “Error” and “Error After” XYZ data sets.

Using the Wizard Sonic log methods


The Curve methods are very reductive in their use of the available well data. Let’s use the Wizard to
make a velocity-depth relationship from the velocity (sonic) log data.

We will use the Wizard to design a depth conversion function based on the very popular and
frequently used “V0,K” method.

Understanding Vo + kZ
This is a very common depth conversion function that expresses the velocity in the form of a linear
relationship between instantaneous velocity (Vinst) and depth (Z):

𝑉𝑖𝑛𝑠𝑡 = 𝑉0 + 𝑘𝑍
• V0 is the velocity projected back to time zero (the intercept)
• k is the velocity gradient with depth.

Note that V0 rarely, if ever, has any geophysical meaning & is simply a variable to “hang” the
function from. k is a function of the rock matrix, saturation etc. It can often be taken as constant for
a given formation.

Generating the V0, kZ function from sonic logs in the Wizard


• Rerun the Wizard for surface 1
• Select the Sonic Log option
• Press Next, then Next
• Select the V0 vs Kz method
• Press the Generate Function button
o Tip: if the plot generation is slow, try setting Curve Decimation to 5, 10 or 20

Open the Curve module window. The sonic logs for all wells for this layer (defined by the well tops)
are plotted on axes of depth versus instantaneous velocity. A linear regression line is fitted through
the data.

You can toggle well curves off and on and set the current well using the edit icons as before. The
current well is plotted in red (or pink if the well is deselected). The current well is also plotted in the
Well display.

The regression line statistics are shown (by default) in the bottom-right hand corner of the plot; the
A0 value is the intercept of the line on the Y-axis, the A1 is the gradient of the line. A0 & A1

37 | P a g e
IHS Kingdom®
correspond to V0 and k in the above equation. The gradient looks reasonable for the velocity
gradient (k, in typical sediments and at depths typical for oil & gas exploration, usually ranges from
0.1 to 1.8, but may sometimes be outside these ranges). The precise values will depend upon which
wells you have deselected etc.

• Press Next to go to the Error Correction grid generation screen


• Set the Kriging Range to e.g. 2000m
• Press Generate Error Correction Grid & review the Surface map
• Set the parameters for Multiple Realisation Parameters for Workflows as you did earlier
• Press Next to apply the error correction to the depth conversion
• Press Next three more times to complete the Wizard and save these options as a new run
file.

Review the Error grid by double-clicking on it in the Model Tree to display it in the Surface window.
The error values are considerably larger than before using this approach – but does that mean the
velocity function is necessarily worse than using the pseudo (aka “apparent”) velocities?

On the face of it they are very similar techniques, but the measurements they use are significantly
different. The sonic logs are direct measurements; the apparent velocities are heavily dependent
upon the seismic image processed & interpreted. Which methods are better predictors of velocities
away from the measured information?

Both methods will depth convert. Which you choose depends very much upon your specific
objectives & data.

Note that using regression on the velocity curve doesn’t give you the option to randomise the
regression. Think about why this might be.

For tips on dealing with negative k values, refer to the VelPAK online help; search the Contents for
“negative k”.

Reverting to a previous method in the Wizard


Let’s say we are unhappy with the depth conversion we’ve just tried and wish to revert to a prvious
method and parameters. Or perhaps we have changed some of the data in the model and we wish
to re-run the depth conversion using identical parameters as before.

Click on the Review Wizard column for event 1:

From the pop-up, double-click on our previous run through the wizard “01_Curve_IV_v_Mid_Depth”

The steps previously taken in the wizard are automatically re-run, updating the model in the process
with the same parameters used when originally run.

38 | P a g e
IHS Kingdom®
Using the Wizard for optimisation of depth conversion parameters
Previously we used the Curve tool to fit linear functions to the well velocity information. Although
this is a useful approach, VelPAK can improve on this by using the powerful technique of numerical
optimisation.

Numerical optimisation, as a general technique, will determine the best parameters to satisfy two
unknowns in an equation given a data set.

For example, with the V0,K equation above, the variables V0 and K are unknown but we have lots of
measurements of Vinst and Z from the sonic log. Numerical optimisation will be able to find the
optimal pairing of V0 and K values that satisfy the equation for all our values of Vinst and Z.

It is not necessary that the equation is linear; functions such as Faust’s equation for velocity can also
be solved for the two unknown parameters a and m in the equation:

1
𝑉𝑖𝑛𝑠𝑡 = 𝑎𝑍 𝑚
It is out of the scope of this tutorial to explain how optimisation works, but it is described in full in the
VelPAK online help under Contents > Optimize Module. Only linear Vo + kZ is currently supported in
the Wizard options but other methods can be used in the Workflow system or driving the software
“by hand”.

There are two ways optimisation can be used in VelPAK. The unknown parameters can be
determined to give the best fit to satisfy the sonic log data, but this will result in residual errors with
the formation tops.

Alternatively, the unknown parameters can be optimised to the point where there is no (or minimal)
residual error with the formation tops, using just the tops depths and grid times.

The latter option may have the most initial appeal, but bear in mind that the best fit method uses
the available data and has a single, unique solution. The minimised residual solution on the other
hand is non-unique – there are an infinite number of combinations of the two unknowns that can
satisfy the equation to give zero error. Also, the residual is more sensitive to the formation tops
being picked accurately in the well. If the velocity logs are reliable and you have a high confidence in
the formation tops and corresponding seismic interpretation, minimising the residual error is
probably a good option.

VelPAK optimisation will use whatever velocity curve is available, so it can be used with time-depth
charts or sonic logs. If the velocity curve is a sonic log (rather than from a time-depth chart) the sonic
log is decimated to improve computation time.

Optimisation can be take one step further. As discussed previously, in the V0,K model, K is often
considered constant for a given formation that has undergone a consistent diagenetic and
compaction history. Given an optimisation result for the best parameters of V0 and K, we can
choose to fix K at a specific value & then find the corresponding V0 values for each well for that K.
We can then grid these V0 values to create a depth conversion intercept map, and use that as an

39 | P a g e
IHS Kingdom®
input to the depth conversion method with the constant K. This brings space variance into the V0,K
method, rather than have a single function with no lateral changes, and should lead to a better
depth conversion. Additionally, the V0 & K pairing for each well is guaranteed to tie to the formation
top in that well, so no residual error correction is required!

Optimisation has its own module, but the easiest way to run the optimisation is via the Wizard.

Review the second event in the Well module (the yellow layer). Overall there is increasing velocity
with depth, but the log curve within the layer is a bit haphazard.

• Open the Wizard tool


• Click the Run button for Layer 2
• Select Optimise and press Next, ensure the data is correct and press Next again
• Review the options then choose From Seismic Datum
• Under Optimisation Methods select Fit to Wells
• Press the Next button

The Optimise module is opened (& will show the previous optimisation results if any have been
generated). Default parameter ranges are suggested in the Wizard – these can be changed later.

• Press the Run Optimise button


o This may take a few minutes to run; reduce the Increment values to make things run
faster at the slight cost of accuracy if you have many wells

The results are displayed in the Optimise module. The optimal V0, K values computed shown in the
Information box in the Wizard.

The x-axis shows the range of V0 values examined, the y-axis the range of k values examined. Each
well is plotted as a pink line – for any point on the pink line, the V0 and K parameters represent the
optimal fit. We observe that all the wells seem to converge. The software computes this
convergence line and point for all the wells, plotted as an orange line and point. The point
represents the optimal V0,K pairing to maximise the fit function for all the wells.

40 | P a g e
IHS Kingdom®
If the lines don’t converge, it is worth looking to see if there are outliers, then looking at the well
data to see why. The plot is useful for determining if certain wells have undergone uplift, for
example.

Please refer to the Wizard Help screen on how you can interact with the Optimise plot, for
deselecting data, zooming etc.

Press the Next button.

You can now choose your own V0,K values, and/or use the Fix K and Contour V0 option.

• Toggle on Fix K and Contour V0

Two options are available – “Minimise Residual Depth” or “Fit Error”. The former reduces the depth
mistie between the depth conversion and the formation tops, the latter best fits the well velocity
curve i.e. the latter is entirely seismic interpretation independent.

In this case, we want to tie the depth conversion to the tops, so

• Toggle on Residual Depth


• Press Generate V0 Grid and Display It

The V0 map is displayed on the Surface module. This is the “Depth Conversion Intercept” grid stored
in the Model Tree and provides lateral variation to the depth conversion function. The K value that
is fixed is shown in the Information box as “Current K”.

Note that we can also randomise the parameters for multiple depth conversions.

• Toggle on Multiple Realisation Parameters for Workflows


• Look at the inner contour on the Optimise display, it is around 0.17 or thereabouts. We can
use this as a contour within which we can randomly choose V0 and k pairings.
• Set the Contour Maximum value to 0.18

If we are generating a V0 grid, we can choose to randomise the range of the Kriging range for the
V0 grid creation, just as we could with error creation. For the sake of simplicity, leave this option
toggled off for now.

• Press Next to complete the depth conversion and finish the Wizard.

Note you are not prompted to generate an error grid, because for each well we know the V0 value
and K pairing at the well location will predict the depth almost exactly.

Review the grids for Layer 2 in the Model Tree.

Using Seismic Velocities with the Wizard


We have so far concentrated on using well information for depth conversion. VelPAK however can
leverage seismic velocity information too.

41 | P a g e
IHS Kingdom®
Importing Seismic Velocities from ASCII files
Typically, velocity data are imported from seismic volumes loaded into Kingdom using the import
link. However, this project uses stacking velocities loaded from ASCII.

The file can be found in the main Kingdom project folder, SNS_RMS_Velocities_For_Import.txt.

You can review the file in e.g. Notepad if you are interested.

The file is columnar, of the format “inline, crossline, time (ms), RMS velocity (m/s or ft/s)”. Extra
columns can be used for interval & average velocity; please refer to the VelPAK user guide for more
information. There is a tool called Scanit (“Tools > Scanit”) that can be used to reformat most
stacking velocity files into the columnar format required by Velit. Scanit has worked examples
shown in its own Help menu.

• Use File > Import > Profile Stack


• Click on the File Browser icon

• Locate the file “SNS_RMS_Velocities_For_Import.txt” in the main project folder


• Ensure the Prefix box has the SNS_3d survey selected

• Press OK
• Open the Velocity module, the points should be displayed as a cloud with Well velocities
overlain for the current layer

• Set the Surface number to 0 to display the velocities for all events:
• The blue lines are well velocities, the red line is the currently active well in the model
• Set the Edit Mode menu to Point to show a pop up as you move the mouse across the

display

42 | P a g e
IHS Kingdom®
In the Wizard window, click the Run button for Layer 3

• Select Seismic Velocity & press Next twice

The first set of options refer to using Stacking Velocities (which we have). The second set refer to
using other types of seismic velocities which may be imported.

• Choose the third option, Direct Depth Conversion, then press the Next button

The results of the Dix-converted RMS velocities are plotted in the Velocity display as green dots.
Later we will apply a calibration factor to better match the seismic velocities to the well velocities.

The interval velocity grid for Layer 3, derived from the Dix-converted stacking velocities, is shown on
the Surface display.

43 | P a g e
IHS Kingdom®
The Wizard gives us three options for smoothing:

• No Smoothing will use the grid we see in the Surface display.


• Simple Moving Average Smoothing gives a gentle smoothing over the radius you specify.
Experiment with this value to see how it behaves.
• We will use the third options, Local Regression Smoothing. This is often best for regional
work, but it works nicely here too.
o Toggle on Advanced Multi-Pass Smoothing Using Local Regression
o Press Apply Local Regression Smoothing

After some computation, the smoothed velocity grid is now display in the Surface display.

Unsmoothed Interval Velocity Grid Smoothed Interval Velocity Grid

• Press Next to depth convert the time grid with this velocity grid

The seismic velocity grid won’t tie with the well formation tops, so compute the Error Correction
Grid as before and depth convert with that.

• Toggle on Generate Error Correction Grid


• Adjust the Simple Kriging Range as you see fit
• Press Generate Error Correction Grid
• Turn off the option for Multiple Realisation Parameters for Workflows as we will be
choosing another depth conversion method for our final depth conversion.
• Press Next to depth convert then Next again to finish the Wizard

Calibrating Seismic Velocities to Well Interval Velocities


Because we have well velocities, we can calibrate the seismic velocities to the well interval velocities
and depth convert with that. This should reduce residual errors at the wells.

• Rerun the Wizard for Event 3


• Select Seismic Velocity and press Next, then Next again
• Toggle on Calibrate to Wells and Depth Convert then press Next
• Select the Advanced Multi-Pass Smoothing Using Local Regression option then press Apply
Local Regression Smoothing
• Press Next

44 | P a g e
IHS Kingdom®
The Curve module displays the calibration factor from seismic to well interval velocity, plotted as a
point per well. The mean calibration factor is the constant horizontal line, of value A0. Refer to the
Wizard Help screen to see how to interact with this plot.

• Press Apply Calibration Factor to depth convert the Time grid


• Press Next to go to the Residual Error Correction screen and generate an error correction
grid
• Toggle on Multiple Realisation Parameters for Workflows and set the minimum and
maximum range as you see fit (for example, 2,000m and 20,000m)

The Error correction map should have much smaller values than the previous depth conversion
attempt!

Some other common uses for seismic velocities are the generation of pseudo-wells, or using seismic
velocity grids as drift grids towel velocity kriging. Refer to the Wizard Help screens for further
information. Press Next to depth convert then Next to proceed through the Wizard to the end.

Congratulations!
You have depth converted a 3-layer model. The techniques used here have been selected to show
some common approaches and are not necessarily the best techniques to use for this model.

It’s now a good point to save the model.

• Use File > Save As… and save your model as “Depth Conversion Defined”
o We will use this model in a subsequent chapter
• Review the grids in the model tree for all layers
• Check the Depth grids in the 3d view or transfer them back to Kingdom for better
visualisation (next section)

At some point you will wish to move beyond the basic capabilities of the Wizard. Please refer to the
sections on the more capable Workflow system and depth converting “by hand” later in this tutorial.

However, before moving deeper it’s a good idea to learn how to get the data from VelPAK into the
Kingdom project database.

45 | P a g e
IHS Kingdom®
Chapter 6 - VelPAK Outputs
Generating a velocity volume from our model
Once all layers in the model have been depth converted, we can also generate a SEG Y file of the
velocities for the surveys in the model.

Volume generation is performed in the Velocity module using the Volume fly-out. We have a 3d
survey in our model, but the approach is the same for 2d lines as well.

• Open the Velocity module and pin open the Volume fly-out
• On the General 3D tab, click in the Survey box then click on the button that appears.
• Select the 3d survey available, SNS_3d
o The survey extents and geometry fields become populated with the full extents of
the survey.
o If you have a large survey, it is often worth generating a small test sub-volume by
changing the Inline/Xline _Min/_Max ranges. Generate the small volume then check
it is okay before generating the full volume, as volume generation can be time
consuming.
• Enter the name of the file to generate in the File
field.
o The file will always be generated in the
volume subfolder of the model folder.
• Set the Time_Increment to 4 (the sample rate for
the volume in ms)
• Set Time_Max to 2000, the maximum time for the
volume (in ms)
o Time_Min should usually be 0 ms
• Set Dimension to be the velocity volume type to
generate, in this case “Average”

To generate the volume, use either the Apply button to


run the velocity volume generation as a single process or
the Batch Execution button (on the icon bar) to
generate the volume using multiple CPUs on your
machine. The latter is the most efficient, but it is usually a
good idea to leave one or more CPUs free for you to run
other things during the volume generation!

We will need an instantaneous velocity volume for the HiDef tool later on in this tutorial.

• Change the File to “Vinst.sgy”


• Change Dimension to “Instantaneous”

46 | P a g e
IHS Kingdom®
• Generate the instantaneous velocity volume using the or Apply button

Volume results can be viewed in either the Profile & 3d display (not covered in this tutorial) or in the
HiDef tool (covered later). Usually the SEG Y files may be loaded into the Kingdom project for use in
depth stretching seismic volumes or depth converting other surfaces.

Moving grids and velocity volumes back into the Kingdom Project Tree
Having depth converted our three layers, we can copy the grids we have made from VelPAK into the
Kingdom Project Tree using the menu option File > Save TKS….

• Use File > Save TKS… to open the save link screen

Unlike the “load” link, there is only one tree – the


VelPAK Model Tree. Simply check on the items you
wish to transfer back to the Kingdom project.

• For each of the 3 layers, ensure the Depth grid


is checked and the Time grid is unchecked
(since we loaded those from Kingdom in the
first place)
• Press Apply to save the data to the Kingdom
Project Database

The transfer progress is written to the centre window.

• Press Exit to return to the main VelPAK window

In addition to grids, velocity volumes and pseudo-wells


(see later) may be transferred back in to the main
Kingdom project using the same mechanism.

The transferred data is written directly to the Kingdom


project database, not the view of the project in the
computer memory, so you will need to refresh the
project in memory to see the new data. The quick way
is to simple close & re-open the project.

When velocity volumes are transferred into a Kingdom


data type, they are named after the model name and
date, so be sure to use the “Surveys > Data Type
Management > Properties” tab to rename the volume
to something more meaningful.

47 | P a g e
IHS Kingdom®
Chapter 7 – Generating multiple realisations based on our depth
conversion method

When using the Wizard, we specified parameters for the depth conversion in hand. We were also
able to specify parameters in boxes labelled Multiple Realisation Parameters for Workflows. These
parameters aren’t used in the depth conversion, but provide the ability to subsequently randomise
the depth conversion parameters within known ranges.

Why do this? By changing even one parameter in the depth conversion, we will produce a different
depth conversion. Given we have many parameters, one sensible approach to find the range of
possible depth conversions & sensitivity to the parameters is through constrained stochastic
modelling – varying parameters randomly and independently of each other. If we do this many
hundreds of times, we can eventually get a reliable range of depth conversions that are probable
(provided the parameter constrains are reasonable).

There are two approaches to specifying the randomisation parameters. The Wizard allows you to
specify the parameters to vary as you define the depth conversion method. Alternatively, the
Workflow system gives you more options but is more complex to setup. This latter approach is
covered later.

• Load the model you saved earlier, “Depth Conversion Defined.bin” (or if you jumped directly
to this chapter, “Depth Conversion Defined Example.bin”).

Return to the Wizard home page, it should look something like this:

We can generate a workflow from the depth conversion setup. In our case, we wish to generate a
“looped” workflow that will utilise the multiple realisation parameters.

• Toggle on Looped in the icon bar of the Wizard page


• Enter the number of realisations to generate, in this case 20 into the adjacent dialog
o We can change this later in the workflow or when we run it, but we are going to
generate a low number of loops (or “realisations”) just to check things are working
• Press the Create icon
• The file dialog always suggests a default name of “Wizard.xml”; press OK to save the
workflow to that file
o It is strongly recommended to not change the default folder suggested

The workflow is generated for us and stored on disk. We haven’t explored the Workflows interface
yet, but it’s easy enough to use. Subsequent chapters explore Workflows in more detail.

• Open the Workflow module from the top row of icons

48 | P a g e
IHS Kingdom®
• In the icon bar for the workflow screen, press the Open Workflow icon
• Load the “Wizard.xml” file you saved earlier
o This workflow contains all the parameters and instructions to reconstruct our depth
conversion, and to randomise the parameters too.

• Press the Run Workflow icon to start the workflow running


o It may take 5 minutes or so to run
o The progress bar at the bottom will give an estimate of the
time to complete
o Windows & plots will appear & may look quite strange –
don’t worry about this, the results will be fine!

When the Workflow completes, the model is reset to exactly the state it was
before you ran it.

Reviewing the results


• Open the Analyse module from the top icon bar
• Click on the Data tab to see the results tabulated
• Click on the Graph tab
• Open the Generate fly-out and click on the Standard tab
• Scroll down to find the Histogram category and click on Pos Volume (short for “positive
volume”) then press
o A histogram of the range of volumes realised is displayed

You can change the number of bins used on the Display fly-out

Clearly the histogram looks okay, but we need more results to start any meaningful analysis

Running multiple realisations in batch


Let’s run this model for 500 realisations to give a better spread on the histogram. We can edit the
workflow to change the number of realisations, regenerate it from the Wizard, or use the best
option – run in batch.

Batch mode allows you to spread the load over the number of CPUs you have on your machine.

• Click the Batch Execution icon to bring up the batch job launcher
• Set the number of realisations to run in the Loop Stop field to 500
• Specify the number of CPUs you wish to run on in the Number of Tasks field
o Tip: a good compromise is to divide the suggested number by two, to allow your
machine to work efficiently on other tasks
• Press OK

49 | P a g e
IHS Kingdom®
The job will start running, and after a few moments progress bars will indicate the job is running.
This may take several hours on a slower machine.

When the job has completed, press Exit to close the batch window and then you can analyse the
results in more depth!

Analysing results from multiple realisations


Once the workflow has run through 500 hundred iterations, ensure you are on Surface 3, then open
the Analyse tool and click on the Data tab. The data may take a few moments to display.

The Data tab shows a summary table of information for the current surface for each well for each
model that was generated, sorted by default into model order (the first column). Review the column
headers. As we used an optimisation method for the first surface, we can see values in the Opt
Param1 and Opt Param2 columns. Because we used a Vo,K optimisation solution, they represent V0
and K respectively. Had we used optimisation for say the Faust equation, they would represent the
parameters ‘a’ and ‘m’.

Click on the Summary tab to see the parameter names, and the method for each layer. The Base
model is the model we started with, our best deterministic model derived before running the
stochastically generated realisations. The Random section shows which variables were
parametrically varied & within what bounds.

Change back to the Data tab and change Surface to 3. Here you can see the regression parameter
columns have values, as we used the Curve fit linear regression to generate the velocity function for
layer 3.

Notice in surface 3 we also have the results of the volumetric computation recorded for each
realisation. Pos volume is the positive volume computed, i.e. the volume above the specified fluid
contact and/or base. Pos Area is the area under the structure.

Let’s display the Positive volume graphically.

• Click on the Graph tab


• Pin open the Generate fly-out and go to the Standard tab
• Plots are grouped by style. We would like a histogram of the positive volume above our
contact of 2040m
• Click on Pos Volume in the Histogram group and press Apply

50 | P a g e
IHS Kingdom®
A histogram plot of the different volumes computed for each model is made. By default, the
Probability curve is also plotted; for each model, a point is plotted as positive volume versus it’s
probability as a percentage, on the Y-axis on the right hand side of the graph. Hover the mouse over
a sample to see a tooltip contains the model number, the precise volume & it’s probability as a
percentage.

Proven, probable and possible


The models closest to the P90, P50 and P10 values are highlighted in red. The P90 value is often the
called the “Proven” volume: 90% of realisations will have a volume greater than this amount. The
P50 is often called the “Probable” volume, half-way through the distribution (not half way between
minimum and maximum volumes). The P10 volume is often called the “Possible” volume, as there is
a probability that just 10% of the realisations result in a volume greater than this value.

M0 is the value of our deterministic case model for reference.

The histogram data displayed is collated in the Data2 tab, for export to a spreadsheet, if required
(the flags column contains the indicators of the P10/P50/P90 and M0 values).

You can use the Display fly-out Histogram Bins parameter to change the number of bins on the
histogram. Set Probability to No if you wish to hide the probability curve on the graph. Press Apply
to make the changes.

In addition to the histogram we’ve just seen, other plots can be generated. Most of the useful ones
are predefined in the Generate > Standard tab, though you can use the Advanced tab to plot any
column from the Data table against any other column. If any column doesn’t contain data, a blank
plot will be the result.

Explore the parameters for different layers.

• Set Surface to 2
• Under Generate > Standard > Group By Model, make a scatter plot of Opt Param1 v Opt
Param2 (in our case, these are the V0 & K parameters).

51 | P a g e
IHS Kingdom®
You should see that the pairings displayed match the shape of the contour you selected for
optimisation randomisation. The tooltip on each sample gives the precise V0,K pairing for that
model.

Animating the results


In the “Height Above Display” workflow, you may have elected to record images. These can be
animated for playback.

• Open the Anim tab, and then the Anim fly-out


• Click in the Basename field and then press the icon that appears
• Select any Height Above image – the basename is taken from the image as “Height Above”
• Press the Play button
o You will see a series of surfaces corresponding to the models in the Data tab
displayed in sequence. The surfaces will appear random as that is exactly how they
were generated.

A more useful animation is to sort the surfaces first. Most logical is to sort by volume:

• Go to the Data tab and click on the Pos Volume column header
o The column is sorted in ascending order
• Return to the Anim tab and press Play again – the surfaces are animated in order of Data
table
o You can re-sort the Data table on any column & replay the animation.

There are other analytical tools available, but these are beyond the scope of this tutorial. Refer to
the online Help for use of the Statistics fly-out and the Tools > Lever Analysis features.

52 | P a g e
IHS Kingdom®
Chapter 8 - Depth Conversion in VelPAK by hand

Using VelPAK by hand unlocks the full power and functionality of VelPAK, opening the range of
features not available through the Wizard.

We will re-depth convert our 3-layer model by hand. If nothing else, it is worth depth converting at
least one layer by hand to get a feel for how this works!

In the same project, open your model, or use File > Open.. and select “Base Model.bin”. Then save
the model under a new name using File > Save As..

Using the Curve module by hand


First ensure you are looking at the Upper Triassic grid in the Surface map, as all operations in the
Curve tool relate to the current layer. Recall there are three ways of ensuring you are working with
the correct layer:

• Use the green Previous Event and Next Event icons


• Double-click on any grid for the required event in the model tree
• Set the Surface selector value to the required event number (in this case, 1)

You can check at a glance which is the current layer by inspecting the information strip at the
bottom of the main VelPAK window (tool tips give more information).

Open the Curve module either by clicking on the icon on the main icon bar or using the View > Curve
menu option.

Open the Generate fly-out and click on the Standard tab to see a pre-built set of curve types.

The Well Layer section contains a variety of methods that all relate to using “apparent” interval
velocities (sometimes called “pseudo” velocities), computed using the layer thickness between tops
in the well and dividing by the corresponding time thickness in the grids at the well location.

The Well Curve section uses the velocity curves themselves. Click on the “V0 v Kz from sonic log”
curve and press the Apply button.

53 | P a g e
IHS Kingdom®
A plot is drawn of the sections of sonic log that lies in layer 1 i.e. between the surface and the
Upper_Triassic top, depth on the X-axis versus instantaneous velocity on the Y-axis. The curve
drawn in red indicates the “active” well i.e. the well currently displayed in the well module. Re-
arrange the windows so the well module is either floating or docked next to the curve display. Press
the red ‘Next’ well button and see how the curve display is updated.

Tip: if the display is slow to draw, set the Point_reduction value to 20, erase the graph by pressing
the “Erase” icon then press ‘Apply’ again. Every 20th log sample will be plotted, speeding up the
display.

Two icons control the interaction with the graph. Ensure the Edit Mode drop-down menu is set to
“Point” select either the Point Pick or Point Edit.

With Point Pick active, clicking on a section of log curve sets that well to be the current well, and
displays the log in the Well display. The current well curve is plotted in red, other well curves in blue.

With Point Edit active, left-clicking on a section of curve turns that curve “off”. If the curve belongs
to the active well, the curve changes from red to pink, if the well is not the active curve it turns from
blue to grey. Left-clicking the curve turns it back “on”.

Identify which wells are used in the plot. You will see that any well with a velocity log and tops are
plotted, irrespective of whether they are outside the grid area. This plot doesn’t use grid
information in any way whatsoever. Consider the advantages and disadvantages this.

To display the “V0,K” function on our data, we simply need to perform a linear regression on the
curve data.

• Open the Display fly-out and set the Fit value to “Linear” and press Apply.

A linear regression through all the data points is made. The regression line statistics are shown (by
default) in the bottom-right hand corner of the plot; the A0 value is the intercept of the line on the
Y-axis, the A1 is the gradient of the line. A0 & A1 correspond to V0 and k in the above equation. The
gradient looks reasonable for the velocity gradient (k, in typical sediments and at depths typical for

54 | P a g e
IHS Kingdom®
oil & gas exploration, usually ranges from 0.1 to 1.8, but may sometimes be outside these ranges).
The precise values will depend upon which wells you have deselected etc.

For tips on dealing with negative k values, refer to the VelPAK online help; search the Contents for
“negative k”.

Depth converting using our V0+kZ function


We have defined a velocity function using the Curve module, and can use this function to depth
convert our first grid.

Grid depth conversion takes place on the Surface module.

• Switch to the Surface tab and open the Depth fly-out (pin it out for easy access).

The General tab has two options, Type and Verify. Almost always Type should be set to
“Current_Event”. The only time you might want a depth conversion method to apply to “All_Events”
is when using a single well time-depth function. The Verify option, when set to “Yes”, provides
warning prompts when you are about to overwrite or modify data in the model. This is useful for
beginners, but soon you may wish to set this option to “No”.

The Parameters tab is where the parameterisation of the depth conversion occurs. Selecting the
Formula drop-down reveals all the pre-built depth conversion methods built into VelPAK (these can
be added to by the user – refer to the online help for details). The From option tells the software
where to get the parameters from (typically the Curve or Optimise modules, or “User”, which means
the user can type in the values).

• Set the Formula drop-down (not the Formula tab!) to “[Curve Fit]VoK from sonic log”
o This should match the graph created in the Curve module.
• Set From to be “Curve Fit”
o Open the “Input a0” and “Input a1” fields and you can see they match the A0 and A1
values from the Curve graph (your numbers may differ depending upon the tops you
picked, which wells were deselected etc.)

55 | P a g e
IHS Kingdom®
The remainder of the parameters are defaulted. Input a2 to a5 are zero (this allows for up to fifth
order polynomial coefficients, though they aren’t relevant for a linear function).

Input last time is the time grid for the layer above the current model. In the case of the first layer, it
is set to a constant value of 0, i.e. the seismic datum.

Input time is the time grid we are depth converting, and it is set to GridEvent 1, Time (note that the
value of 1 could be changed to the value of “Current”, with the value of “Previous” always equating
to “Current-1”, which is more useful for creating generic workflows).

Input last depth specifies the depth of the layer above. In this example, we are at the first layer so it
is set to a constant value of 0.

Input error is used to specify the residual error correction i.e. fix the mistie between the depth
conversion and the formation tops. As we haven’t done the depth conversion yet, we don’t know
what these values should be, so no residual error correction will be applied (it is set to a constant
value of 0).

The remaining parameters are all output girds – “depth”,” isochron”,” isopach”, “interval” and
“average” velocity. The outputs all go into the named slots set by default. If you wish to change
them you can do, but it’s a good idea to enter a description of the grids in the “GridDesc” field so
you know what the data is if you revisit the model some time later!

If you don’t specify a descriptive label for output grids, VelPAK automatically puts in the label
“XPRESS”, which is the name of the numerical engine running inside VelPAK. This lets you know if the
data was made automatically, you’ve labelled it or it was imported (the grid description will say
“None”). You can change the label of a grid by clicking on it in the model tree then change the
“Name” field in the “Properties” table below.

The final tab on the Depth fly-out is labelled Formula. Click on this tab to see the actual Xpress code
that is used for the depth conversion (this is not a help screen – it is the actual code). If you are
uncertain as to how exactly a method works, this tab tells you exactly what computations are
performed. VelPAK has an open design philosophy – “black boxes” are avoided as much as possible,
as we shall see when we look at workflows.

Return to the Parameters tab. To perform the depth conversion, press the Apply button. Some
information is printed to the Console window, and the Model Tree is updated. In the Grids folder of
the Upper Triassic section of the model tree, we now see a series of new grids; Interval Velocity,
Depth, Average Velocity, Isochron and Isopach. Double-click on the grids to see them in the Surface
map (you may need to adjust the Contour_Incr value in the Display fly-out to see more detail).

These grids look similar in shape, if not value, to the time domain Upper Triassic grid. This is because
we are working from surface to the Upper Triassic, and we have used a simple, linear velocity to
depth relationship, so naturally the shape should match the time grid.

Residual error correction


We have used a linear regression on the depth domain sonic log values to derive a time-depth
function, and used that relationship to depth convert the time grids. We can assess the accuracy of

56 | P a g e
IHS Kingdom®
the depth conversion by subtracting the depth grids from the corresponding formation top depths in
the wells. By incorporating these “residual errors” in the depth conversion directly, we can choose
to compute a depth grid that ties each well exactly.

Open the Well module. If the domain of the display is depth, the mistie will be posted as a red line
on the display (you won’t see the mistie in the time domain). The end of the red line is the depth
grid position in the borehole, predicted by our depth conversion method. The longer the line, the
worse the mistie!

Error values are automatically computed each time a depth conversion is performed. They are
stored in the XYZ category section of the model tree, called “Error” and “Error After”.

For the “Error” data, the X,Y values comes from the well location and the Z value is the mistie
between the formation top and the predicted depth grid using the depth conversion method
specified (in our case, the Vo,K parameters).

The “Error After” data has the same X,Y values as above but here the Z value is the difference
between the formation top and the existing Depth grid in the model.

In our example, the depth grid was created by our V0,K method and so the “Error After” Z values will
be the same as the “Error” Z values, but once we apply residual error correction to the depth grid,
the “Error After” values should be zero, whereas the “Error” values will still give us the same values.
This feature becomes quite useful for cross-validation and blind well testing.

• Open the Surface module


• In the Model Tree, open the Layer 1 > Xyz folder
• Double-click on the “Error” node
o If nothing appears on the map, ensure the “XYZ” and “XYZ_Label” overlays are
turned on using the Display fly-out or Layers Visible drop-down.

The values are posted in red on the map (you can change the XYZ posting colour in the Display >
Colour fly-out). Change the Display Type to “Basic” to see them more clearly.

57 | P a g e
IHS Kingdom®
You may have different values, depending upon the V0,K values used. Note that the errors are all
negative, indicating the velocity function we used was too “fast”, and the absolute values of error
are quite high compared to the depths (for example 48/15A-9 has an error or 110m on a depth of
1017m for the Upper Triassic top – so almost 10%!).

For the purposes of this tutorial, we can try some different depth conversion methods.

Selecting wells for Curve fitting and residual error correction


VelPAK will use all the data it can for a given depth conversion method. Sometimes this is
undesirable. You can de-select wells on the Curve display as we have seen, but you can also de-
select wells on the Surface map too.

• Open the Surface module


• Set the Edit Mode drop-down to “Well Location”
• Click on the Point Edit icon & then click on a well on the Surface map. A pop up appears,
similar to this:

To remove a well from statistical velocity analysis, uncheck Fit. To remove a well from the residual
error computation, uncheck Residual. Unchecking both is equivalent to deactivating the well (i.e.
making it grey or pink) on the Curve display. You can elect to set wells that don’t contribute to the

58 | P a g e
IHS Kingdom®
velocity analysis but are used for residual error correction – useful for testing the depth conversion
method designed independently of that well data.

Note that this editing is done on a “per layer” basis. Be aware that if you have a Curve display
generated and then you edit the Fit value, you will need to erase then regenerate the Curve display.
[Note to self: fix in HotFix1]

Trying different depth conversion methods


• Return to the Curve module
• Open the Generate fly-out
• Erase the current graph by pressing the Erase Graph icon.
o It is important to erase the graph as data displayed is cumulative; allowing you to
add different data provided the axes are compatible.
• Click on “Depth v Time from sonic log” and press the Apply button.

A very different graph is plotted, time on the X-axis and depth on the Y-axis.

o Open the Display fly-out and change Fit from “Linear” to a second order polynomial,
“Polynomial_2”. The fitted curve now matches the log curve data much better (you can
change the fitted line colour on the Display fly-out if required).

To use this polynomial fit for depth conversion:

o Return to the Surface module


o Open the Depth fly-out
o On the Parameters tab set the Formula drop-down to “[Curve Fit]Depth v Time from sonic
log”
o Ensure From is set to “Curve_Fit”. You should have parameters set for a0, a1 and a2.
o Press Apply to do the depth conversion using the new method.

If you haven’t already done so, you can set the Verify option to “No” on the General tab to prevent
the “Overwrite Grid?” messages appearing.

Note that in the current version of VelPAK, when new XYZ values are computed, they aren’t always
automatically displayed.

o On the Well display, right-click and choose “Refresh” to update the display, and do the same
on the Surface map.

The new values are plotted, and they look much more reasonable – than before – a maximum
correction to the depth grid of about 30m is required to tie the formation tops.

We have used a 2nd order polynomial fit. This looks convincing over the range of depths we have in
the wells, but it is quite possible for it to “blow up” as the layer thickens or thins. If you know the
maximum thickness of your layer is within this range of the thicknesses in the wells, it is probably
safe to use. If the layer thickens or thins beyond that measured in wells, use polynomial fitting with
extreme caution!

59 | P a g e
IHS Kingdom®
Try different curve fitting methods to see if the misties can be reduced. The procedure is always the
same:

• In the Curve module, erase the current graph and then generate a new graph
• Try different Fit functions
• Go to the Surface module Depth fly-out, set the correct Curve Fit method, and press “Apply”
• Refresh the Surface map to see the new error values

If you arrange the Surface, Well and Curve windows carefully, and pin-open the fly-outs you use, you
can try different depth conversion methods very efficiently with minimal mouse-clicking! A left to
right arrangement often works well:

When trying different depth conversion methods, it is always important to keep in mind the basic
geology and geophysics of the layers you are depth converting as there can be a tendency to “force
fit” curves to data. For example, choosing a 5th order polynomial function may well minimise
residuals, but what is the validity of this function outside of the known data ranges, perhaps when
the unit thins or thickens outside the well data?

To improve the model, we need to move away from a single fitted velocity function to incorporate
spatial variance in the velocity field. There are also some tools that let you automatically minimise
residuals for V0,K and Faust functions in the Optimise module. We will examine these solutions later
in the tutorial.

Applying residual error correction


Once a depth conversion method has been found that minimises the residual errors at the wells, we
can apply the residual error correction to the depth conversion.

VelPAK allows us to apply a constant value or a grid as a residual error correction in the depth
conversion.

A constant value for error correction is occasionally useful (unless that value is zero, in which case no
error correction is applied), but more frequently a grid is used.

We currently have our residual error values as XYZ data in the Model Tree, so to use them we need
to make a grid of the values to ensure the correction isn’t used simply at the well location, which
could lead to spikes in the depth surface.

60 | P a g e
IHS Kingdom®
Gridding in VelPAK
Creating grids in VelPAK follows the same procedure as in 2d3dPAK, though the GUI is rather
different:

1. Select the data to be gridded


2. Select a gridding method
3. Set the gridding extents and parameters
4. Name the output
5. Create the grid

On the Surface display, the Grid fly-out is used to create grids from XYZ (& other) data . The General
tab is used to specify the gridding method, input and output data. The Range tab specifies the
extents of the grid to create, and the gridding parameters to use. If a Kriging method is to be used,
the Variogram tab lets you construct the semi-variogram required. If SGS Kriging is to be used, the
Randomise tab is used to specify the minimum and maximum range for the randomisation of the
surface between the sample points.

We will make a grid using a quick and simple gridding method first, review it and then look at Kriging
to refine the correction grid.

Generally, gridding is performed automatically in the Workflow system, but it’s a good idea to learn
how this is done “by hand” so you can understand the parameters used.

Gridding the residual error values


o Open the Surface module and pin-open the Grid fly-out
o Set Method to “Radial_Basis_Function” under the “Popular”
category
o The “RBF” gridding method is a quick method best used
on sparse data, such as our error points. Method
descriptions are available in the online help, along with
tips on their use, under Contents > Surface Module >
Grid Dialog > Gridding Method Types.
o Set Input data is set to “Xyz_slot” & set Input_Xyz to use the
values in the “Error” slot.
o Note that VelPAK can only grid XYZ and horizon data, it
cannot directly re-grid a grid, unlike 2d3dPAK (you need
to convert the grid to XYZ first, then grid).
o Set Output_Grid to “Error” and type in a label for the
Output_Name (optional)
o Press the P icon to set the default parameters for RBF gridding

61 | P a g e
IHS Kingdom®
o On the Range tab press the G icon to grab the grid extents
from the Time grid for event 1 (the “Parent” grid specified at
the bottom of the parameters).
o Usually there is no reason to change the parent grid,
as the input time grids were all made to the same
extents.
o Press the P icon to have VelPAK estimate optimal gridding
parameters for the gridding method selected
o Press the Apply button to create the grid

The grid is added to the Model Tree; double click on the “Error” grid to display it. You may need to
use the Display fly-out to change the Contour_Incr to improve clarity.

Tip: pressing the P icon on the Display fly-out estimates the best contour increment for the size of
display you are looking at. If you set the value of Contour_Auto to “Yes” (the default for models
created in Kingdom 2015 and later), the software will make a best estimate of the contour level
required for each display. Set it to “No” to specify your own contour level if you require consistency
between displays.

You should see a residual error correction


grid not dissimilar to this. Watch out for
trends introduced into the data, especially
when well control is sparse. We can use
Kriging to mitigate these trends.

Kriging residual errors


If we use Kriging, values away from the search range around the real data will revert to the mean
error value, which gives us a more localised correction without introducing any trends into the error
grid.

Return to the Grid fly-out and on the General tab change the Method to “Kriging_Fast”. There
should be no changes required on the Range tab (thought pressing “G” followed by “P” is a good

62 | P a g e
IHS Kingdom®
habit to get into), then go to the Variogram tab. Kriging_Fast doesn’t use the full set of semi-
variogram parameters, just the Range. Other Kriging types do use the semi-variogram.

Tip: you can expand the fly-outs and border of the semi-variogram window to see more detail

In this case we only have a small number of samples so the actual construction of the variogram is
statistically meaningless. Set the Range to be the distance around a well sample point you’d like the
correction to occur (the smaller the Range, the tighter the radius of localised correction), and set the
Sill value to be 1. Here I’ve set the range to be 2500m. Press the Apply button to create the new
grid. Notice how all the error correction is localised, with the mean correction applied away from
the wells.

Adjust the Range parameter to see how it can affect the data. When you are happy with the residual
error correction grid, we can apply it to the depth conversion.

How you approach constructing the residual error correction grid depends very much on the number
of wells the distribution of wells and the error values that need to be applied. Also, you may choose
not to apply any residual error correction for certain layers if the depth conversion results in small
errors, or ignore the residual errors until the target surface is reached.

Depth converting using the residual error correction grid


To incorporate the residual error grid in the depth conversion, it is simply a case of setting the “Input
error” parameter on the Surface module Depth fly-out Parameters tab. Open up the Input error
section and set the Grid_Event to 1 (or “Current”) and the GridType to the slot containing our error
grid, in this case “Error”. Note that the Value changes from 0 to blank when we specify a grid input.

Press Apply and the depth conversion takes place, but this time the residual error is incorporated to
correct the depth grid to tie the formation tops. The procedure is as follows:

1. Depth conversion using the velocity method specified


2. The residual error grid is added to the depth gird to give a depth corrected grid
3. New isopach, interval and average velocities are created using the depth corrected grid

The 3rd stage is important to understand if you specify an interval velocity grid as the input to a depth
conversion method. If the input interval velocity grid is in the “Interval Velocity” slot, and depth
conversion with an error grid is made, the” Interval Velocity” grid slot will be overwritten with the
error corrected interval velocity. This is often what you want, but sometimes you may wish to keep

63 | P a g e
IHS Kingdom®
the input interval velocity grid uncorrected. In this case, change the Output interval velocity grid to
go into a different slot, such as General 01, in the depth conversion parameters.

Adding or editing control points


Sometimes it may be necessary to add control points to help constrain residual error correction (or
indeed, any spatial gridding method).

Control points can be added to a model via import from a column ordered, space delimited ASCII file
(via “File > Import > Surface XYZ...”) or picked interactively on the Surface map.

To pick points, use the “Slot” selector to define the XYZ data set you wish to add control points to
e.g. “General 01”.

Ensure the XYZ and XYZ_Label overlays are turned on (using the “Layers Visible” drop-down or the
Display fly-out). Use the “Edit Mode” drop-down to select “XYZ” & then icon bar will change to
include XYZ edit icons. Activate the “Point Insert” icon then click on the Surface map; a popup will
occur asking for a value to assign to the control point just created.

Use the Edit, Delete and Move icons to modify the points as required.

To merge the control points with an existing set (e.g. Error XYZs), use the XYZ fly-out, set Type to
“Concatenate”, and the input and output values as follows:

The manually created control points from General 01 are joined to the Error values, ready for
gridding.

The reason for putting the control points in General 01 is to ensure that they don’t get overwritten
when you regenerate the mistie values. You can easily concatenate them with the Error values as &
when required.

Validating the residual error correction


To validate the depth conversion, double-click on the Model Tree XYZ folder “Error After” values to
display them on the Surface map.

The “Error After” values won’t always be exactly zero, due to the fact the wells typically do not lie
exactly on grid cell centres. “Error After” values are triangulated to the well position, from the
nearest three grid cells.

64 | P a g e
IHS Kingdom®
We now have a Depth grid in the model tree that ties the formation tops, and probably is a very
good representation of the true depths away from the wells too. We are ready move on to the
second layer to analyse the velocities & then depth convert the second time grid.

However, now is a good time to introduce the VelPAK workflow system, which can reduce all of the
previous steps to a few clicks of the mouse.

Save the model before proceeding.

65 | P a g e
IHS Kingdom®
Chapter 9 - Depth converting layer 1 by workflow

The workflow system allows the user to set up a sequence of operations that can be easily repeated.
This is convenient for updating models if for example new well data becomes available, or if you
wish to make a custom workflow for a scenario not covered by the pre-built workflows.

Open the Workflow module by clicking the Workflow icon or using the “View > Workflow” menu
option. You are presented with a blank canvas with a series of fly-outs running down the side.

The Nodes fly-out consists of a sorted list of all the low-level workflow nodes available. The
Parameters tab specifies the parameters for an active node in the workflow, whilst the Model tab
specifies how that node should behave (and appear) in the workflow. The Workflows fly-out
contains a larger variety of pre-built workflows that are ready to use in most scenarios.

Creating a workflow
Pin out the Workflows fly-out. You can see it consists of series of folders. Open up the “1 Start
Here” folder, open up the “Template” folder. Click on “Simple Workflow#1” and whilst holding the
mouse button down, drag it on the main canvas, then release the mouse button. Press OK at the
prompt. A sample workflow appears. Save this workflow with a new name using the blue Save
Workflow icon in the workflow module icon bar. Use the suggested folder but enter a new
filename, such as “Workflow for Layer 1”.

Edit the workflow by deleting the all the nodes after “Event 1” and before “End”. Either click on
each node then press delete on the keyboard (or the delete icon), or click-drag a box around the
workflow nodes and then delete them all in one go. Delete all the comment boxes (pale yellow
background) to tidy up the workflow. Click and drag the “End” node further up the screen to
remove some of the space in the workflow:

On the Workflows fly-out, the depth conversion workflows are under the Depth folder. Open this
folder & you see the depth conversion methods are organised by category.

Our first attempt at depth conversion was to use a the V0K function from the sonic logs. We can
find the workflow equivalent of this method in the “Sonic Log” folder. Drag the node “V0K from

66 | P a g e
IHS Kingdom®
Velocity-Depth”’ onto the main canvas, positioning it between the “Event1” and “End” nodes. Draw
in connecting lines by holding the mouse above the Event 1 node, click on the red dot that appears
and then dragging an arrow onto the blue polynomial node. Release the mouse button when it
connects. Draw in the connector to the End node to complete the workflow:

Save the workflow again, overwriting the existing workflow.

For reporting purposes, workflows can be copied and pasted into standard Microsoft Office
applications. Highlight the workflow nodes you wish to copy in the workflow window (you can press
CTRL+A to select all of the workflow), then press the Copy icon (or CTRL+C), open Microsoft Word,
then use Paste Special command and select the Bitmap option to copy the workflow into the
document.

Running the workflow


Before running the workflow, it’s a good idea to either dock the window to the side of the main
windows or detach it and move it away from the main VelPAK window, so you can see what happens
when the workflow runs.

To start the workflow running, press the blue Run Workflow icon in the icon bar. As the workflow
runs, the active node is highlighted in red, and you will be prompted for parameters.

The first prompt is to set the point reduction parameters for the Curve display; leave this as 1 as we
only have a very few well logs to display. If you check mark the option “Do not ask again”, you won’t
be asked this question again if you re-run the workflow (which in this case, is a good idea).

You can reset workflow parameters and prompts back to default by using the “Clear run cache” icon.

Press OK to continue. The following prompt is displayed:

67 | P a g e
IHS Kingdom®
If the curve display looks good leave “Yes” checked, but if you wish to interact with it (or were using
a new model and hadn’t done any analysis), you could choose one of the other options to stop the
workflow, interact with the plot (changing display parameters, toggling wells on & off) etc.

Press OK. The next prompt is about how to handle the residual error correction. Select Kriging (as
that seems to give a more controllable result with this data set), press OK, select “Simple or Ordinary
Kriging”, press OK, select “Simple” and press OK. Leave the increment factor as it is (you can re-run
to test different Increment_Factor values later), press OK, then opt to let the Radius be calculated.
Accept the radius value by pressing OK, then set the Range value (e.g. 2500m for this model) for the
Kriging. The workflow then creates the residual error correction grid and applies it to the final depth
conversion, ensuring the depth grid ties the well formation tops.

All of the grids the workflow creates are stored in the Model Tree for inspection (they should look
identical to those you created, unless you changed any of the parameters).

Once the workflow has been setup, it is very easy to re-run, and what’s more, it keeps a record of
the parameters you entered in the model.

Tip: when a workflow is running, you can press the “ESC” key on the keyboard to terminate the
workflow. It will stop execution at the next available opportunity.

Examining how a workflow works


VelPAK has a “no black box” philosophy. You can see exactly how a pre-built workflow works, you
can edit their behaviour to adapt to a particular problem or construct a library of your own
workflows.

To view each operation in a workflow, toggle on the “Watch Sublevel Execution” icon on the
workflow icon bar prior to running the workflow. As the workflow runs, nodes automatically expand
to show each step in the workflow sequence being executed (the active node is highlighted in red).

To view all the steps in a workflow, double-click on a node to expand it out into a “scratch” tab.
Double-click on the “V0K from Velocity-Depth” node in your workflow. The contents of the
component are displayed in a new tab. You can see this component has its own “Start” and “End”
nodes, just like the main workflow, but many individual nodes. Pin out the “Model” and
“Parameter” fly-outs.

68 | P a g e
IHS Kingdom®
The first node vertically below the “Start” node is a Check node, and clearly causes the workflow to
branch into randomized regressions. We haven’t covered this in the tutorial yet, so we will just
consider the workflow as flowing vertically downwards. Click on the “Not Loop mode” node. You
will see the Parameters fly-out changes and that the Type of node is Pin, which essentially means it’s
purpose is purely cosmetic.

Click on the next node down, Select.Active.Slot. The Model fly-out shows the data types set to
display (as if the user had selected them from the Slot selector). The Parameters fly-out shows the
Execute node is set to “Yes” which indicate the model parameters are set immediately.

Click on the next node down, Surface.Depth.General. This effectively goes to the Surface display,
opens the Depth fly-out and goes to the General tab. We can see from the Model node it sets Type
to “Current_Event” and sets Verify to “No” (that is, depth conversion is applied only to the currently
active layer and the option to display the “Overwrite Grids?” prompt is disabled). The Parameters
fly-out indicates that Execute is set to “No”, which means the Apply button is not pressed just yet.

The next node down, Surface.Depth.Params, explains why. The Surface module, Depth fly-out,
Parameters tab is being set up with the depth conversion formula, but not executed as we haven’t
generated the Curve display yet.

This is done by the next nodes. Curve.Generate.General.Clear goes to the Curve display, opens the
Generate fly-out on the General tab and presses the Clear button (the eraser icon), prior to setting
the Display parameters in Curve.Display.General, then actually generating the plot using
Curve.Generate.Sonic. Note that the Parameters tab for this mode indicates Execute is now set to
“Yes”, meaning the Apply button is effectively pressed.

Arrange the windows so you can see the Curve and Workflow modules. Now double-click on the
Curve.Generate.General.Clear node to run just that node. The Curve module display is cleared, as
expected.

It should be getting clearer how the workflows work. The Parameters fly-out controls the behaviour
of this workflow node; the text label that appears on the node, icon & text colours, whether the
mode is executed now or sin etc. The Model tab contains the options & settings you’d see as if
running the software manually.

For example, let us make a simple change & change the fit line colour. Click on the
Curve.Display.General node and set Fit_Color to “Lime”. Save the workflow using the floppy disk
Save Workflow icon and use the name and location suggested. Go back to the main tab and re-ruin
the workflow. Everything is the same except the Curve display now has a regression line drawn in a
Lime colour!

Note that when you saved the workflow, a copy of the original VelPAK workflow is saved in the local
model folder structure. This means that within this model, you can change the workflow as much as
you like without affecting any other users or any other models.

We have looked at the main types of work flow node, so now is a good time to explore the workflow
system to see exactly how they work and copy & paste bits of workflows into your own creations.

69 | P a g e
IHS Kingdom®
Note there are some components that are generally useful, such as “Error Multi”. This is the yellow
node after Well.Tie.General (the node that computes the mistie values). Double-click on it to see
how it works. You will probably use this frequently in your own workflows, as it presents the user
with options for gridding the mistie values. You can also find this component in the Workflows fly-
out, under the Write Your Own Workflows > Component >Gridding > Error folder, along with lots of
other useful functions.

You can practise running different workflows for layer 1, before we look at a more sophisticated way
of maximising the values in the velocity logs for depth conversion.

Using Numerical Optimisation in a Workflow


Modify your workflow “Workflow for Layer 1” as below – you can find the new blue workflow node
under the Workflows fly-out Depth > Optimise > V0Kz > Residual > FixK folder. Save the workflow
as “Workflow for Layer 1 Minimised Residuals Fixed K”.

Run the workflow. The first prompt asks if you would like VelPAK to establish the parameter space to
work the optimisation in. Usually it is a good idea to do this – the only reason you might want to
change this is if there is some bad log data that throws the computation off.

You can check the V0 and K ranges the optimisation works in on the next screen and adjust if
required, but leave them alone for the first run through. Choose to replace the optimisation results
(the prompt is there as optimisation can take some time to run with lots of log data). The
optimisation will run.

70 | P a g e
IHS Kingdom®
You are presented with a lively display and the prompt to select a gridding method for depth
conversion intercept. This is functionally the same as gridding of errors you encountered before.
Choose the Global method at this point to keep things simple. You can re-run the workflow at any
time and explore the different gridding methods. Because well data is typically sparse, simple
Kriging might again be a good option to try.

After the workflow has run, the V0 grid is stored in the Model Tree with the name “Depth Conversion
Intercept”. Inspect this – it has little or no geophysical meaning but can be used to spot outliers due
to incorrectly picked tops, bad well data, etc.

Also examine the Error XYZ values and the error grid. The errors should be almost zero.

Review the Optimise module display in conjunction with the online help (Contents > Optimize
Module) to explore the convergence of V0,K pairs in the “solution trough”.

Now change the optimisation method from zero residual method to best fit method by adjusting the
workflow to replace the optimisation node with “Optimise V0kz Fit Fix K Multi” found in the
Workflows fly-out Depth > Optimise > V0Kz > Fit > Fix K folder.

Save and run the workflow. Notice that the best fit optimisation display shows less convergence
than the residual method previously used. You can deactivate wells on the Optimise display just as
you would on the Curve display. However, to get the optimal parameters updated, it is necessary to
re-run the optimisation workflow.

On the Display fly-out, set the Line_Residual and Point_Residual options to “Yes” & press Apply to
overlay the Residual lines on the Fit display. Use the Colour tab to adjust the line colours for clarity.

71 | P a g e
IHS Kingdom®
Chapter 10 - Cross-validation (“blind well testing”) in VelPAK
One of the best ways to assess whether a depth conversion method is working is to simply remove a
well from the velocity modelling process, derive a depth conversion method, depth convert, and
then compute the mistie at the well to see how well the model fits.

In VelPAK, wells can be deselected on a per layer basis, so wells can be easily excluded if there is bad
log, uncertain tops, or if the well data is good and to be used for cross-validation.

We have seen that we can select & deselect wells on the Curve fit display and on the Surface map,
but another way to deselect wells is in the Optimise module. Click on the Data tab next to the Graph
tab in the top-left of the display to reveal a table of all the parameters for each well for the current
layer (layer definition must have been performed).

The Fit column indicates whether a well is being used to derive the velocity method parameters.
Note that although this dialog is in the Optimise module, it equally applies to the Curve module too.

To remove a well from the modelling tools, double-click on “Yes” for that well in the Fit column, and
press the “N” key on the keyboard to toggle it to “No” (and to reverse the status, double-click on
“No” and press “Y” on the keyboard). You will need to regenerate the Curve and/or Optimisation
graphs as they won’t be dynamically updated.

The Residual column indicates whether a well is included in the mistie computation. Use the same
method as above to change the status. Note that “Error After” values are always computed for all
wells, irrespective of the Residual column flag.

In our example model, and especially for the first layer, we have a limited amount of well data so
there is probably more value using the existing data to derive a velocity function rather than
performing cross-validation.

Using Apparent Interval Velocities in Workflows


For the first layer, we have concentrated on determining velocity versus depth (or time)
relationships, using a variety of methods, based on well velocity log data. This gives us the best
chance of predicting velocities (& hence depth) as we move away from well data, whether it is up or
down dip from the existing wells, across fault planes, and as the layer thickens or thins etc.

However, if you don’t have well velocity data, you might be reliant on using pairs of formation top
depths with the corresponding horizon/grid times. By dividing the well depth thickness by the
corresponding horizon time thickness, you get an apparent interval (sometimes called a pseudo-
velocity) velocity for that well location. By gridding the apparent interval velocities, you can

72 | P a g e
IHS Kingdom®
generate an interval velocity grid for depth conversion that is guaranteed to tie the well formation
tops.

There is a pre-built workflow to do this found in the Depth > Mapping > Interval Velocity folder.

This seems like a good solution, and if there is good well control and there is little dipping or faulting
in the structure, can be very workable. However, more often than not well distribution is biased
around traps (typically structural highs or fault blocks), so to rely on gridding algorithms to predict
geologically controlled velocity changes away from the wells can be a little naive. Apparent interval
velocities also give no indication as to the velocity behaviour between then layers (e.g. if the velocity
is increasing quickly with depth, or is constant over a layer).

When using apparent interval velocities, residual errors will be zero (bar variation due to the fact
that wells are not exactly on grid cell positions) – not because the method is robust, but because any
interpretative errors are incorporated in the velocity computation.

Tip: if you wish to see diagrammatically how well Layers are determined in deviated boreholes,
please refer to the online help under Contents> Curve Module > Advanced Curve Inputs > General
Concepts for the Advanced Curve Inputs > Well Location onward.

If you only have top depths and grid times to define layers, VelPAK has use two approaches distinct
approaches to adding value to this data; “hybrid” methods and Kriging with external drift.

Interval Velocity versus Depth to Middle of Layer


This popular method is a hybrid of apparent interval velocity and velocity versus depth methods.
The apparent interval velocity is cross-plotted against the middle depth of the layer , where the
middle of the layer is computed by using:

( d 2  d1 )
d middle  d 2 
2
where d1 and d2 are the depths of the tops defining the layer in the well, so in curve fitting apparent
interval velocity is related to the middle depth of the layer. This is analogous to the V0,K function we
have seen earlier, but in those examples velocities used were from well log measurements.

73 | P a g e
IHS Kingdom®
This relationship can be determined in the Curve tool by using the Generate fly-out and the pre-built
plot “Interval Velocity v Depth to Middle of Layer” plot, or by running the “Curve IntervalVelocity v
DepthToMiddle Layer Multi” workflow.

On the Curve display, each well is reduced to a single point, and a linear function can be fitted to the
data.

Quite often this method is the first plot users will generate for a layer, because it is often
immediately apparent where outliers are, and those well points can be quickly de-selected.

The disadvantage of this method is, just as with the V0K from Sonic Log method, that there is no
lateral variance in the layer (other than that introduced by the gridding of residual errors, if
performed).

VelPAK has a number of other hybrid methods sometimes used in the industry, but some are not as
geophysically as justifiable as others, and so should be used with caution.

Kriging with external drift


We have used Simple Kriging to create grids from sparse, irregularly distributed data. Away from the
data, Kriging reverts to the mean of the data rather than attempting to fit a trend surface to the
data. If we have some external grid data that has a provable linear correlation with the data to be
Kriged, we can use the external grid to control the behaviour of the sparse data away from the

74 | P a g e
IHS Kingdom®
sample locations by linear regression; rather than reverting to the mean, the values adapt to the
shape of the drift grid. This gives much better lateral control and character to the resultant grid.

For details on using Kriging with External Drift, please refer to the section “Using Stacking Velocities
in VelPAK”.

Depth converting the second layer


We have depth converted the first event in our model, so we can move on to layer 2.

Set the current Surface in the model to layer 2 either by double-clicking on the Base Triassic time
grid in the model tree, setting the Surface tab Surface number to “2”, or using the green and “Next
Event” icon on any of the module windows.

If you are using workflows, you could also run a workflow featuring the Event 2 node as the last
event node, which will set everything to focus on the second event. Event nodes can be found in the
Worfklows fly-out under the “Event” folder.

Notice that the Curve module is now empty, as no curve fitting has been performed for the second
layer yet. On the Surface module, the Depth fly-out Parameters values are all blank, as we have not
yet defined a depth conversion method. Flip back to the first layer; the Curve is redrawn as you left
it, and the depth conversion parameters are shown. Flip back to the second layer.

When the current layer is set, all modelling functions, curve fitting, optimisation techniques etc. only
use data from that layer.

Use the techniques you have learned from layer one to model and depth convert the second layer.
Try some simple regressions, workflows and optimisation methods to find a best depth conversion
method. You can use the pre-built workflows by adapting your existing workflow to include “Event
2” as follows:

The workflow bypasses Event1, as we don’t need to re-run the optimisation & depth conversion for
Event1 each time we change the method for Event2. Don’t forget to patch it in later when you have
finalized the workflow.

75 | P a g e
IHS Kingdom®
Layer 2 is in quite easy to model using optimisation, as there is convergence on the V0,K domain plot,
and the K value is quite reasonable (look at Surface > Depth fly-out to see the computed Input K
value after running the workflow). However, if you review the well display for the second layer,
there is a clear velocity change about half-way through the layer. In a real project, it would be
sensible to pick an event that corresponds to that change & ensure there is an associated formation
top in the well. Then create a 4-layer model. This would almost certainly lead to a more accurate
depth conversion away from the well location.

When selecting layers, it is not always best (or time efficient!) to have too many, or to have very thin
layers. Thin layers contain less information and will generally show less influence of compaction
than thicker units. Often it may be better to assign thin layers’ simple interval velocities, or compute
apparent interval velocities, rather than attempt to fit a gradient to the layer.

Using “by hand” depth conversion in workflows


If you wish to depth convert a layer by using the various tools and the Surface > Depth fly-out rather
than by using a workflow, that is quite alright. Depth convert the current layer then move on to the
next.

The main reasons for using a workflow are repeatability & risk reduction (examined later in this
tutorial). If you are expecting to revise the data in any way (new horizon interpretation, changed
tops, extra wells etc.) then it is most efficient to be able to load in the new data, perform layer
definition, then re-run the workflow. For risk reduction, a best case workflow is mandatory.

All operations performed by hand can be encapsulated in a workflow, but whether it is worth the
time and effort required to put these into a workflow depends upon the size of the problem at hand.

One compromise solution is available. If your depth conversion method has a final interval velocity
grid, you can use this in the workflow as a shorthand for all the steps you used to get to it. Simply
use the “Surface.Depth.Params” workflow node, set to “Simple Interval Velocity” and specifying the
correct interval velocity grid, as shown below. Note the cunning use of “Current” and “Previous” to
represent the layer numbers; doing this means the node can be copy & pasted to other events with
no modification required.

The only thing to watch out for is the “Error” correction value; if this has been factored into the
computation of the interval velocity grid, it should be set to zero to stop it being re-applied. Also, if
used in VelPAK risk reduction workflows, this layer cannot be perturbed to give multiple realisations.

76 | P a g e
IHS Kingdom®
What happens if I change the depth conversion for Layer 1?
If you have worked out a schema for depth converting layer 2 and then decide to re-depth convert
layer 1, the layer 2 depth conversion will be wrong. To fix this, just re-do the depth conversion for
layer 2. Generally, your depth conversion method won’t have changed, but layer thicknesses may
have, so re-model the curve fitting, re-run the optimisation, or simply re-rerun the workflow.

As you can see, if you have say 5 layers in the model and you wish to revise say the second layer
above it, you will also have to update layers 3, 4 and 5.

Therefore, it is usually a good idea to ensure the depth conversion for all layers can be encapsulated
in a workflow!

Testing random combinations of wells


Often it is useful to randomly “drop” one or more wells from a depth conversion method, to assess
the stability of that method against other methods for that layer.

The Combinations tool may be run from the Wizard. Using it is outside the scope of this tutorial, but
the Help screen on the Wizard gives pointers on how to set it up and review the results.

77 | P a g e
IHS Kingdom®
Chapter 11 - Stacking velocities in VelPAK

Stacking velocities can be a huge asset in creating velocity models for depth conversion. They are
regularly spaced, matching the survey acquisition and processing geometry, unlike well data which
are almost always biased in their distribution (being drilled where prospects are expected). They will
exist for every processed seismic survey, and most importantly, stacking velocities approximate RMS
velocities, and there is an empirical relationship between the RMS velocities and interval velocity for
a layer, expressed by the Dix equation:

2
𝑣22 𝑡2 − 𝑣12 𝑡1
𝑣𝑖𝑛𝑡 =
𝑡2 − 𝑡1
where v2 and v1 are the RMS velocities (approximated by stacking velocities) at times t2 and t1
respectively.

Note that this equation assumes that the surfaces are flat, parallel layers with direct ray paths for
the seismic wave front – the equation rapidly breaks down with more complex geology.

Additionally, the Dix interval velocity over a layer is typically faster than the true vertical velocity (as
measured by the sonic log) due to seismic wave front having a lateral component. Typically rock
layers are anisotropic, with a faster horizontal velocity than vertical velocity. Therefore, Dix interval
velocities need to be calibrated to well vertical velocities if they are to be much use. Typically, this
calibration involves a scaling of 90-95%.

Popular techniques for using the stacking velocity data are:

• making a grid of Dix interval velocities for each layer & using for direct depth conversion
• calibrating stacking velocities to the well velocities for direct depth conversion
• making pseudo-wells from stacking velocities and modelling functions from those
• Kriging well velocities using the calibrated stacking velocities as an external drift function.

It is impossible to recommend a particular method, as it will depend upon the data & distribution of
the data in the project, the geology, geophysical constraints etc. It should also be born in mind that
Dix interval velocities are an approximation built on an approximation – they are not direct
measurements. Nonetheless, handled carefully, they can be extremely valuable to the depth
conversion process.

Importing stacking velocities into our model


Stacking velocities can be imported into VelPAK from ASCII files, or from a seismic volume that has
been loaded into Kingdom. The stacking velocities cannot be converted to a SEG Y volume anywhere
in Kingdom, or loaded into the main Kingdom project database (unless converted to grids).

The stacking velocity ASCII file must conform to a simple, columnar format.

For 3d: Inline crossline time velocity

For 2d: linename SP time velocity

78 | P a g e
IHS Kingdom®
where time is the time in milliseconds and the velocity is in either metres/second or feet/second
(matching the Kingdom project units).

Often files aren’t provided in this format, but they can be reformatted using the VelPAK ‘Tools >
Scanit’ utility. The Scanit program has its own ‘Help’ menu which features some guided
walkthroughs for using this tool.

If the stacking velocity volume has been loaded in to Kingdom, stacking velocities can be imported
using the “File > Opens TKS…” menu and enabling Select Surveys and Select Velocity Volume. Note
that the survey decimation must match between the survey specification and volume import dialogs.

See Using Seismic Velocities with the Wizard for details on importing the velocities. Import these
velocities into your model “3 layers depth converted.bin” using “File > Import Profile Stack…”.

On the Survey module, use the “Layers Visible” drop-down or the Display fly-out to turn on the
Velocity overlay. Set the display type to “Basic” to make for a cleaner display. You will see pink
blobs where the stacking velocities have been loaded (if you see a black line, this indicates the
current line active in the Profile display, which we haven’t looked at yet).

Set the “Edit Mode” drop-down to “Velocity” and left-click on a pink blob to see printed in the
Console window the summary information for the stacking velocities at that location. Use the
middle-mouse button to see the velocity data in a popup dialog:

To see the velocity data graphically, open the Velocity module. Open the Display fly-out, and set the
overlays so only Rms_Overlay is “Yes”, then press “Apply”.

You will only see the velocity samples for the current layer. To see all the velocity data irrespective
of layer, set the Surface number to zero, or press the green Previous Event icon until the plot title
says “All Events”.

Note that you can also generate “Well Curve” plots in the Curve module for all events, when Surface
is set to 0.

79 | P a g e
IHS Kingdom®
The Velocity display shows Time on the vertical axis versus velocity from surface on the x-axis. If
you zoom in closely, using right-click > Zoom, you can see the horizontal black lines are actually black
dots; they are striped horizontally as the RMS (stacking) velocity data has been decimated vertically
at a sample rate of 40ms. The point values can be made into bigger dots using the “Display fly-out
and increasing Size.

In the Display fly-out, set Well_Overlay to “Yes”. The connected lines in red and blue are the well
velocity curves, this time expressed in terms of average velocity. The red line indicates the active
well currently shown in the Well module, the blue line are the other wells. You can step through the
wells in the Well module or Velocity module (using the “Previous Well” and Next Well” icons) and
see the active well update.

Calibrating the stacking velocities to well velocities


Use the green “Next Event” icon (or set Surface to “1”) to look at the velocities for layer 1 only.
There is a reasonable correlation in the shape of the RMS velocities with the well velocities, which
suggests they might be reliable to use. Before we do so, we need to convert the RMS velocities to
interval velocities using the Dix equation.

Open the Calibrate fly-out. The Factor tab allows the user to set a different scaling type and
percentage value for each layer in the model. Set the type for each layer (01_Type for layer 1,
02_Type for layer 2 etc.) to “Value” and the corresponding value by percentage. VelPAK defaults to
92. Press the Apply button.

80 | P a g e
IHS Kingdom®
Green blobs should appear (if not, turn on the Average velocity overlay using the Display fly-out).
These are the RMS velocities converted to Dix interval velocities, then displayed as average velocities
for plotting and comparison to the well velocities.

Th 92% scaling was probably a little too much, so change 01_vALUE to “95” and press Apply. The
seismic velocities now fit the well velocities a bit better. On the Display fly-out set RMS_Overlay to
“No” to clean up the display. We are only concerned with matching the well velocities to the Dix
velocities.

We have estimated a scaling factor for the seismic velocities visually, so we can start to use them
directly. We could convert them the XYZ data (using the XYZ fly-out), then create an interval velocity
grid with the XYZ data, smoothing them if required and then using the velocity grid for depth
conversion.

However, rather than guess at a scaling factor visually, as we have seen previously, VelPAK has a pre-
built Wizard (& also a pre-built workflow) that will calibrate the seismic to well layers more
accurately.

Using stacking velocities without wells


What if there is no well data to calibrate the stacking velocities to? Essentially you will have to make
an estimate of the scaling factor and then use the “Dix IntervalVelocity Multi” workflow, which does
a direct conversion of the layer using the scaled velocities.

Given that you have estimated the scaling percentage, it is probably a good idea to run a series of
models with your best estimate, and upper and lower estimates (e.g. 92%, 88% and 96%). You can
then look at the variation in depths between each conversion to give a quick estimate of potential
error.

81 | P a g e
IHS Kingdom®
If you are only using stacking velocities in a model, there is no need to do layer definition of course!

Making pseudo-wells from stacking velocities


Pseudo-wells (or “stack” wells) can be created in VelPAK by amalgamating velocities derived from
RMS (”stacking”) velocities within a specified radius of a specified location. The resultant velocity
curve can be used as if it were a velocity log from a well.

This powerful technique has multiple uses, but some of the commonest are:

1. Comparing well velocity curves to stack velocity curves to evaluate the reliability of the
stacking velocities
2. Using the stacking velocities with well-based methods (such as optimise, curve fitting etc.) if
there is insufficient well information
3. Determining velocity gradients in areas with no well information
4. Generating well data that can be used with Kingdom’s Dynamic Depth Conversion if there is
insufficient well data available (particular caution must be paid to the validity of the stacking
velocity data and the calibration to any real well data that may be available)
5. Looking at the local vertical seismic velocity response in a spatially controlled manner

Once pseudo-wells have been created in VelPAK, they can be exported for use in Kingdom or other
applications.

VelPAK model prerequisites for creating pseudo-wells


• Stacking velocities loaded into the VelPAK model
• Grids

Prior to creating pseudo-wells, ensure the Dix equation has been applied to the stacking velocities
(in the “Velocity” tab). If well velocity logs are available, attempt to visually match the resultant
average velocity to the well average velocity curve by adjusting the percentage for each layer. Don’t
spend a lot of time doing this, just get a “ball park” match, as once the pseudo-wells have been
made, it becomes far easier to match accurately.

For more details of the amalgamation process, please refer to ‘Help > Contents > Velocity Module >
Amalg Dialog > Amalg Methodology’.

82 | P a g e
IHS Kingdom®
How to create pseudo-wells
The easiest way is to run the Wizard for a layer. It doesn’t matter which layer, as the pseudo-wells
are created for all layers simultaneously.

• Select Seismic Velocities


• Press Next at the verification screen
• Toggle on Generate Pseudo-Wells From Seismic Velocities and press Next
• Toggle on Create Pseudo-Wells In a Regularly Spaced Array & set the spacing to be 2000m
• Toggle on Create Pseudo-Wells At Same Location as Real Wells
• Set the Amalgamate Radius to 1000m (the distance around each pseudo-wells the stacking
velocities are utilised from)
• Press the Create Pseudo-Wells button (it may take a few monents)

Comparing a real well velocity curve with a pseudo-well curve


Just as you could overlay real well velocities on another well velocity curve, you can also overlay
pseudo-well velocities on a real well velocity curve. Display the real well in the Well module, open
the Display fly-out and set Overlay_Stack to “Yes”. Press Apply . The pseudo-well velocity is
displayed in green over the well velocity log in blue.

You may then choose to adjust the Dix fly-out scaling percentage, but you will need to re-create the
pseudo-wells in the Wizard (they don’t automatically update).

It is worth inspecting the pseudo-well curves for break in velocity trends that may or may not be
present in the well logs. They may indicate that an extra surface may be required in the model or
that the existing surfaces do no correspond to noticeable changes in seismic velocity which could
make the velocity modelling process easier and reduce residual error values.

In this project, the seismic velocities have a very similar trend to the sonic log, but are completely
insensitive to the high velocity anhydrites in our reservoir layer.

83 | P a g e
IHS Kingdom®
Kriging with external drift
Kriging with an external drift is a powerful method for gridding real data using a “drift” grid to guide
the shape of the data away from the well data. Away from the input values, simple Kriging reverts to
the mean of the input data values. If an external drift grid is used, the shape of the drift grid is used,
but using the values of the input data, to give a more reasonable grid geologically.

Before using Kriging with external drift, it should be ascertained that there is a linear relationship
between the input data and the drift grid. For example, Kriging errors with an external time drift
grid will be invalid, as residual errors should be quite independent of the time grid. However, Kriging
velocities with a time grid may be more reasonable, if the relationship can be demonstrated.

With our model, we would like to take our well interval velocities and grid them to the same shape
of the stacking interval velocities. This is a two-step process: generate the drift grid from the seismic
velocities, then map the well velocities specifying the drift grid.

Generating the drift grid


• Run the Wizard for event 1
• Select Seismic Velocity and press Next twice
• Toggle on the first option Generate An Interval Velocity Grid, No Depth Conversion
o If you were using seismic velocities that are stacking velocities, you would select the
same option under Use Other Seismic Velocities
• Press Next & you are taken to the familiar smoothing options page
• Apply your preferred smoothing then press Next twice to finish the Wizard
• Review the grids in the Model Tree for the first surfaces
• We are going to use the grid type Stack Interval Velocity Smooth as our drift surface

Mapping the well velocities using the external drift grid

• Run the Wizard for event 1


• Select Mapping and press Next twice
• Select Well Apparent Interval Velocities then press Next
• Select Kriging (Sparse Data) then press Next
• Set the Kriging Range to a small value (e.g. 1000) & press Generate Grid
o There should be isolated blobs
• Toggle on Use Kriging With External Drift & specify the Drift Grid as Stack Interval Velocity
Smooth then press Generate Grid
o See how the grid has changed between wells, following the shape of the stacking
velocity grid
• Press the Previous button then the Next button to reset the default Kriging Range, specify
the Drift Grid again & then press Generate Grid to see a more balanced map
• Press Next 4 times to complete the depth conversion

84 | P a g e
IHS Kingdom®
Chapter 12 - Creating “high definition” velocity volumes

VelPAK generated velocity models may contain both vertical and lateral velocity gradients that
respect the layers within the model. These velocities are ideal for depth conversion. However, they
do not necessarily carry enough detail for petrophysical, rock characterisation or inversion studies.
VelPAK contains a tool that allows log level detail (from sonic logs or detailed check shot/time-depth
curves) to be merged into the velocity model to give log level detail in the velocity volume.

Some packages provide simple log propagation between wells in a layered model. This may work
satisfactorily enough for some log types, such as a gamma log whose primary response is not related
to compaction, depth of burial etc. However, we know sonic responses do change with depth &
structure, and the simple propagation or “spreading” of them between wells will at best be
inaccurate.

The HiDef tool takes the VelPAK background model and adds the character of the sonic logs to that
volume in a geological and geophysically consistent way, so the resultant velocity volume will still be
accurate for depth conversion, tie the wells and retain the velocity gradient in the low frequencies of
the volume, but with log scale detail.

The pre-requisite data for the HiDef tool are as follows:

• A VelPAK model containing


o calibrated well sonic logs
o formation tops
o time grids that cover the geographical extent of the 3d velocity volume
• A background velocity model from one of:
o An instantaneous velocity volume in SEG Y format generated from the VelPAK
model (see Generating a Velocity Volume)
o An internally generated velocity volume
o An instantaneous velocity volume generated by the Dynamic Depth Conversion
function in Kingdom Advanced
• an understanding of the geological behaviour between the grids

The input background velocity volume should cover the extents of any 2d lines as well. In our
example, we created a velocity model for entire extents of the grids, which covered the 2d line
ranges, so we could generate a volume for that area & use this.

There are other useful features available within the HiDef tool, including

• SEG Y trace interpolator


o Useful for decimated SEG Y files or those with missing traces
• Interval to Average velocity SEG Y volume conversion
o Useful for Dynamic Depth Conversion volumes which are only generated as interval
velocities

85 | P a g e
IHS Kingdom®
Preparing data and launching the HiDef tool
HiDef can be launched from the VelPAK Tools menu. You are prompted for the velocity volume you
wish to add detail to. Browse to the file, and press OK if prompted about indexing the file, and then
HiDef is ready to run.

For this tutorial, use the volume generated earlier in this tutorial, Vinst.sgy. It will be found in the
“volume” folder, under your model name folder.

The HiDef display


HiDef works in a similar way to the main VelPAK application. It has a series of main display tabs
which can moved, docked and arranged according to personal preference. On the right hand of the
display are fly-outs that control the parameters for the operation of HiDef tool, plot parameters and
some general tools. On the left hand side, there is a tree like organisation of data in the model, with
HiDef and Velit tabs.

The Project Parameters screen appears when HiDef starts. In it is a summary of the layers & wells in
the model. Toggle options for each item allow the model to be fine-tuned on per well and per layer
basis.

The Map screen shows an auto-contoured map of the grid surfaces. Unlike the VelPAK Surface tool,
you can zoom in just by click-dragging a box over the map. Right-click and choose “Un-zoom” to
zoom back out. Use the General fly-out Map tab to specify what items will appear on the display.
Each parameter has a “tool tip” shown in a box at the bottom of the panel (the box can be resized to
show more text if required).

Use the Tree > Velit >Layers folders to select which grids to display (double-click on the appropriate
grid).

The Browser screen shows the velocity generated by the HiDef algorithm overlain by the nearest
well sonic velocity. Drag the Browser screen onto the main display and dock it to the right of the
map.

86 | P a g e
IHS Kingdom®
Click on the map grid to see the velocity at that location plotted in black on the browser display, with
the sonic velocity from the nearest well plotted in red. Click exactly on a well location and the
velocity generated by HiDef should look like a low frequency version of the well velocity. You can
also select a well location by double-clicking on the well in the Velit tree.

As we haven’t set the parameters for the geological model yet, the velocities generated between
wells won’t necessarily be correct!

You can use the General fly-out Browser tab to adjust the parameters for the browser display.

The Well display shows up to three panels for the current well, pertaining to the velocity, residual
depth error correction and calibration error for the well log. Double-click on a well in the Velit tree
to change wells, or use the red icons at the top of the well display to step through the wells in order.

Use the General fly-out Well tab to toggle on which panels are shown, set other display options and
post a legend on each panel of the display.

87 | P a g e
IHS Kingdom®
The Profile window is a vertical display through the volume, from either an inline, cross-line or
random line.

Dock or detach the Profile window so you can see it next to the Map window. Open the General fly-
out Profile tab, and set Line Type to “Inline” and set Volume Type to “HiDef”. Click the Inline
parameter box and drag the slider around. Observe the inline on the map display updates as you
drag it; drag the line over well 48/14-4 (or type in 5904), then press the Apply button at the top of
the fly-out. The HiDef profile is computed and plotted in the Profile window. The Cancel button can
be used to interrupt the display.

Change the Volume Type parameter to “Velit” to see the background model from the SEG Y file;
notice how much detail HiDef has added to the section.

To create a random (arbitrary) line on the Map display, ALT-Left Click a point on the map, move the
mouse, then Alt-Left Click another point. Repeat until you have drawn the line. You can then use the
Random option in the General fly-out Profile tab to see the random line. Use the Erase icon on the
Map display to remove the random line.

Now you have familiarised yourself with the user interface, we need to look in more detail at how
HiDef works, and what parameters the user needs to be aware of to give the optimal result.

How does HiDef work?


HiDef uses 3d volume kriging to distribute sample values from the sonic logs between layers,
considering the background trend from the supplied velocity model and the geological layering
defined in each layer. The detailed velocities are used to depth convert each layer, and a residual
correction computed to ensure the velocities tie the formation tops at the wells. The residual error
correction is then applied propagated to the velocities using the same method as the initial
distribution of sonic velocities to ensure a self-consistent volume.

88 | P a g e
IHS Kingdom®
Parameterising the HiDef method
HiDef intelligently generates and defaults most of the parameters required, but it does need to be
told how much detail to add to the model and how the geological behaviour between layers.

For this tutorial, we will use the three types of geological scenarios built into HiDef.

Open the HiDef fly-out and go to the Setup tab.

Controlling detail
The top section of the HiDef Setup tab, “Smoothing Parameters” control how the smoothing of the
velocity trace is performed. The objective of smoothing is to remove localised peaks and troughs
from the sonic log, to give a more realistic level of detail at the seismic resolution.

To review the effects of smoothing, open the Wells display & ensure the “Well Velocity” panel is
visible (turn it off or on using the General fly-out Well tab). Display well 48/14-4

Toggle Smooth Active off; with it on, the Smooth Order, Smooth Points and Number of Passes
options are not used and no smoothing is performed. Look at the detail in layer 3 (with an eye on
the anhydrite velocity layers), then turn on smoothing. The detail is lost. However, look at the low
velocity spike just above event 3. This doesn’t occur in other wells, and so to aim to propagate it
may be unreasonable; smoothing removes it.

Note that smoothing applies to the entire log, independent of layering.

Ordinarily wells that don’t have sonic logs that extend completely through the last layer are not
incorporated in the distribution of their values for that layer. However, if you have very limited log
data and do wish to use them, you can toggle on the Allow Partial Penetration option. However,
because there is no log information, it is recommended you select the “Cut From Base” option for
the layer (see below), to ensure the log values aren’t “stretched” incorrectly downward through the
layer.

For logs that are absent or unreliable over different layers, those sections of logs can be ignored in
the model using the Project Parameters display and toggling on “Use Background”, indicating the
background velocity model will be used instead of the log curve. It is recommended to step through
each well in the Well display to review each layer carefully if you haven’t analysed the well velocities
in VelPAK .

Notice the value for the Radius – you may recall this number from the kriging of surfaces when we
made the VelPAK model. This radius is computed to cover the diagonal of grid area, and is best left
defaulted unless you have specific reason to change it.

Specifying the geological behaviour between layers


The user can specify how the geological layers behave between events directly, using three pre-
defined geological scenarios, or the user can import a geological model in SEG Y format (generated
by packages such as PaleoScan) for more complex modelling of layers.

Under the Spread Parameters section of the HiDef Setup dialog, there is a set of the same options
for each layer in the model.

89 | P a g e
IHS Kingdom®
The Kriging Range has been computed on a per layer basis and is defaulted so the distribution
covers the entire range of the grids.

The Spread Type specifies how to handle the geological shaping between layers. The first 3 options,
“Cut From Top”, “Cut From Base” and “Stretch and Squeeze” cover most geological scenarios. The
“Background” option means don’t distribute the well velocities for this layer, whilst the “Geological
Model” option indicates the model should be used from the imported file (see below).

Note that if Background is selected for a layer, it overrides the individual well selection on the Project
Parameters display; all wells in that layer will use the background velocity from the SEG Y file rather
than sonic log data for distribution.

The three Spread Types we are going to use are explained diagrammatically in the HiDef online help.
Obviously interpretive knowledge is required to ensure the correct option! For layer 1, select “Cut
From Top”, for layer 2 select “Cut From Base” and for layer 3 select “Stretch and Squeeze”. Notice
the Well and Browser displays update dynamically as you change options.

However, the Profile display does not automatically update (as long lines could take several minutes
to compute). Open the General fly-out and on the Profile tab press Apply to update the display (set
it back to display inline 5904) if you have changed it.

Look at layer three, and how the anhydrites have been propagated to the left of well 48/14-4. They
appear to get very much thicker, as they are stretched over the increasing thickness. This would
seem to make sense as the higher velocity layers appear, so the interval becomes thicker in time.
However, interpretation indicates the anhydrites may actually appear as quite thin, discrete “rafts”
in the section. Try changing Spread Type for layer 3 to “Cut From Base” and regenerating the Profile
display.

Does the change make geological sense? The depth conversion isn’t going to change, but the detail
within the layer certainly does. The HiDef procedure requires interpretative input, but results can
also be used to aid further interpretation.

HiDef and faulting


It is important to note that faulting isn’t handled explicitly using fault surfaces. It is assumed that the
layer selection and gridding have incorporated faulting into the layer creation. Complex geological
models can be built and imported from dedicated modelling packages (see below).

Using an externally generated geological model


To import a geological model in SEG Y format, specify the file in the Geological Model SEG Y File
field, then for each layer that is to use this data, toggle on “Geological Model” for Spread Type in
each of the layers you wish to use it.

If the model has been generated in PaleoScan, you may need to convert the SEG Y file to a format
appropriate for HiDef. Use the Tools fly-out Process SEGY tab, set Process Type to “Convert
PaleoVolume”, specify an output file, adjust the output ranges if required, then press Apply. You
can then use the converted volume as the input geological above.

90 | P a g e
IHS Kingdom®
Generating the HiDef volume
Once parameters have been defined on the HiDef fly-out Setup tab, the final volume of the HiDef
data can be generated. Use the Range tab to specify the survey range. Default parameters specify
the range defined in the VelPAK model, but you may choose to amend the values. Specify an output
filename and the type, then move to the Run tab.

Volume generation can be CPU intensive, so HiDef allows you to specify split the processing into
several jobs that run simultaneously. If you intend to work on your PC, set the number of tasks to
one or two less than the processors you have available and press Apply to start processing.

The output from the job goes into the left-hand side of the Console output window; you can carry on
interacting with the program as the volume generation runs.

In addition to the HiDef volumes, other data may be generated by the HiDef program. Look in the
Tools fly-out at the Make Grids and Process SEG Y tabs. Please refer to the online help for further
information.

Walkthrough using HiDef with an internally generated velocity volume


Assuming you haven’t generated a velocity volume, but you have a VelPAK model with well velocity
logs and grids defined, you can generate a background model internally within HiDef.

The workflow is as follows:

• Launch HiDef from the VelPAK Tools menu


• Select “No” when prompted for a background model
• Select an SGC file containing the survey definition (see SGC file definition if you need to
create one by hand)
• Use the General > Background tab to parametrise the definition of the background velocity
between layers for each layer
• There are 3 options:
o V0KZ: uses robust fitting of a linear regression through the velocity log samples to
give a V0,K relationship mapped over the layer
o Mean: uses a constant the mean of the velocity log samples for the layer
o Median: uses a constant median of the velocity log samples for the layer
• Specify a constant velocity in Missing for layers where the well velocity log is absent

You can then use the tool as in the worked example above. If you are viewing a Profile, don’t forget
to press Apply if you change the Background parameters to update the display.

Walkthrough using Dynamic Depth Conversion data


This walkthrough assumes you have worked through the previous tutorial. Here we will use the
same project, but use the dynamic depth conversion data within HiDef.

The workflow is as follows:

91 | P a g e
IHS Kingdom®
• Set up DDC in the tutorial project in the usual way, using the same three layers and tops as
used in the VelPAK model
• Generate the DDC average velocity volume using Actions > Create Static Velocity Volume
• Export the volume as SEG Y (Surveys > Export > Single SEG Y…)
• Build the VelPAK model framework
o Launch & create a new model in VelPAK
o Use “File >> Open TKS..” and import the survey, grids and wells
o Perform layer definition, associating the tops to the grids
o Perform log calibration (if sonic logs are un-calibrated)
o Save the model
o Generate the VelPAK file set (“File > Export> File Set…” as index.txt)
o Move the SEG Y file exported from Kingdom into the VelPAK “<model-name>/volume”
folder, creating the” volume” folder if it doesn’t already exist (This is important! HiDef
won’t find the data if the SEGY is located elsewhere)
o Launch Tools > HiDef

92 | P a g e
IHS Kingdom®
Chapter 13 - Notes on model storage and VelPAK files

Model files are stored by default under the <KingdomProject>/<author>/velpak folder. The model
consists of two parts – the <modelname>.bin file and also a folder tree with the name of the model.
This folder becomes populated with data as the model is created, organised into sub-folders as
required. For this reason, it is strongly recommended you always use the sub-folders suggested by
the software when you save data.

The main subfolder you need to be concerned with is the “volume” folder, which contains any SEG Y
velocity volumes you may generate. The “volume_batch” folder contains temporary working files if
you are using batch mode to generate velocity volumes.

When you save an existing model using File>Save, the current <modelname>.bin file on disk is
renamed to <modelname>.bin.bak and the new file saved. This gives you the opportunity to return
to revert back to a previous model should you require – simply rename the <modelname>.bin.bak to
a <new-modename>.bin and open that file.

When you save a model to a new name using File>Save As..., the <new model file>.bin is created,
and the existing <modelname> folder tree is copied to a folder tree with <new model name>. If you
have large velocity SEG Y volumes in the folder, you will be prompted whether they should be copied
too. If you ran multiple realisations of the model, you will also be asked if you wish to copy the
results of those too. Press “Cancel” at the prompt to avoid copying the data.

Files created in the volume_batch & analyse_batch folders are never copied; they are temporary
files created by the software, and it is safe to delete the folder contents if you are low on disk space
(provided the model isn’t open in VelPAK).

If you load a model from a folder outside the project tree, for example a tutorial model, it is usually a
good idea to immediately use “File > Save As..” to save the model in the correct place in the project
folders.

The SGC file


SGC files are plain text files that are used to define survey geometry for the HiDef tool. When
creating velocity volumes, VelPAK creates the SGC files automatically.

If you wish to use the HiDef tool with an internally generated velocity model, it requires the survey
definition. If you haven’t got one, they are easy to create/edit in Notepad. The format for a “bare
bones” definition is below.

The Inline, Xline, XLocation & YLocation define three corner points of the survey. Z_Min, Z_Max and
Z_Incerement define the time window & sample rate to generate the HiDef cube at (in ms).
Line_Distance and Trace_Distance are in the inline and crossline trace to trace spacing, with an
increment in Inline_Increment and XLine_Increment. The other options aren’t used by HiDef.
File=
Type= Segy_From_HiDef
Verify= Yes
Survey=
Dimension1= Time

93 | P a g e
IHS Kingdom®
Dimension2= Interval_Velocity
Constant= Yes
Interface= No
Order=InlineOnly
Inline1= 4154
Xline1= 2255
XLocation1= 620265.9
YLocation1= 5908569
Xline2= 3696
XLocation2= 637087.8
YLocation2= 5915009
Inline3= 7005
Xline3= 2255
XLocation3= 607526.9
YLocation3= 5941851.5
Inline_Min= 4154
Inline_Max= 7005
Inline_Increment= 1
Xline_Min= 2255
Xline_Max= 3696
Xline_Increment= 1
Z_Min= 0
Z_Max= 3000
Z_Increment= 20
Z_VupVdown=10
Event_Diags=No
Depth_Diags=Yes
Vint_Diags=No
Vinst_Diags=Yes
Vrms_Diags=No
Vave_Diags=No
Time_Diags=Yes
Error_Diags=No
Line_Type=Xline
Values=Yes
Inline_Rounding=Yes
Inline_Clipping=Yes
Xline_Rounding=Yes
Xline_Clipping=Yes
Line_Distance= 12.4998795348788
Trace_Distance= 12.4999954415178

EOF

94 | P a g e
IHS Kingdom®

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