You are on page 1of 460

19.

Geology & Model Designer


User Guide

Rock Flow Dynamics

March 2019
19.1

Copyright Notice
Rock Flow Dynamics r (RFD), 2004–2019. All rights reserved. This document is the intel-
lectual property of RFD. It is not allowed to copy this document, to store it in an information
retrieval system, distribute, translate and retransmit in any form or by any means, electronic
or mechanical, in whole or in part, without the prior written consent of RFD.

Trade Mark
RFD, the RFD logotype and tNavigator r product, and other words or symbols used to identify
the products and services described herein are trademarks, trade names or service marks of
RFD. It is not allowed to imitate, use, copy trademarks, in whole or in part, without the prior
written consent of the RFD. A graphical design, icons and other elements of design may be
trademarks and/or trade dress of RFD and are not allowed to use, copy or imitate, in whole
or in part, without the prior written consent of the RFD. Other company, product, and service
names are the properties of their respective owners.

Security Notice
The software’s specifications suggested by RFD are recommendations and do not limit the
configurations that may be used to operate the software. It is recommended to operate the
software in a secure environment whether such software is operated on a single system or
across a network. A software’s user is responsible for configuring and maintaining networks
and/or system(s) in a secure manner. If you have any questions about security requirements
for the software, please contact your local RFD representative.

Disclaimer
The information contained in this document is subject to change without notice and should
not be construed as a commitment by RFD. RFD assumes no responsibility for any error that
may appear in this manual. Some states or jurisdictions do not allow disclaimer of expressed
or implied warranties in certain transactions; therefore, this statement may not apply to you.
Since the software, which is described in the present document is constantly improved, you
may find descriptions based on previous versions of the software.

2
19.1

Contents
1. Introduction 15

2. Designer project 17
2.1. Designer project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2. Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3. View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4. Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5. Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6. Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7. Import Data from Rescue File . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.8. Top panel buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.9. Left Panel Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.10. Right Panel Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.11. Well, Groups and Network Filter. Stream Line Filter . . . . . . . . . . . . . 30
2.11.1. Well filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.11.2. Streamline Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.11.3. Group filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.11.4. Network filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.12. Report Panel – Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.13. Visualization tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.13.1. Cross-Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.13.2. Geosteering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.14. Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.14.1. Local Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.15. Stream Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.15.1. Creating a Stream Line . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.15.2. Stream lines settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3. Cases 55
3.1. Dynamic Model Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.1. Runspec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.2. Grid Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.3. Static . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.4. Fluid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.5. Aquifer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.6. Faults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.7. Selective Writing of Results . . . . . . . . . . . . . . . . . . . . . . . . 58
3.1.8. Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.2. Creating different variants of dynamic model . . . . . . . . . . . . . . . . . 59
3.2.1. Create cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.2.2. Restart and Forecast models . . . . . . . . . . . . . . . . . . . . . . . . 61

CONTENTS 3
19.1

4. From static to dynamic model 62


4.1. WOC and faults: regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.2. Fault transmissibility, threshold pressure . . . . . . . . . . . . . . . . . . . . 63
4.3. PVT and fluids-in-place . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.4. Permeabilities and fluids-in-place . . . . . . . . . . . . . . . . . . . . . . . 65
4.5. Initial water saturations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.6. Connected components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

5. Geometry Objects. Calculations 69


5.1. Calculations panel buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

6. Wells 77
6.1. Wells Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2. Import. Well Trajectories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.2.1. Import. WELLTRACK Format . . . . . . . . . . . . . . . . . . . . . . 78
6.2.2. Import. Well Path/Deviation Text Format . . . . . . . . . . . . . . . . . 80
6.2.3. Import. LAS Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.2.4. Import. GWTD Format . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.2.5. Import. OWX Format . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.2.6. Import. MoReS Format . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.2.7. Import. Vertical Wells Format . . . . . . . . . . . . . . . . . . . . . . . 90
6.2.8. Load Wells from Database . . . . . . . . . . . . . . . . . . . . . . . . 91
6.3. Trajectory construction methods . . . . . . . . . . . . . . . . . . . . . . . . 91
6.4. Import. Well Heads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.5. Well Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.6. Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.7. Create Log by Trajectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.8. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

7. Markers 97
7.1. Import. Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
7.1.1. Text Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
7.1.2. OWX Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.2.1. Text format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.2.2. Tabular format – Well/Marker Table . . . . . . . . . . . . . . . . . . . 99
7.3. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.4. Build Marker by Horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.5. Build Marker by Logs Correlation . . . . . . . . . . . . . . . . . . . . . . . 100

8. Wells Attributes 103


8.1. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
8.2. Average Log Between Markers . . . . . . . . . . . . . . . . . . . . . . . . . 103

CONTENTS 4
19.1

9. Logs 106
9.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
9.1.1. LAS Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
9.1.2. RFT Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
9.1.3. OWX Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
9.1.4. Production Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
9.1.5. Load Well Logs from Database . . . . . . . . . . . . . . . . . . . . . . 112
9.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
9.3. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
9.4. Logs Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
9.4.1. Generate synthetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
9.4.2. Upscale Log to Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
9.4.3. Create Log by Property . . . . . . . . . . . . . . . . . . . . . . . . . . 114
9.4.4. Create Log by Blocked Wells . . . . . . . . . . . . . . . . . . . . . . . 115
9.4.5. Log Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
9.4.6. Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
9.4.7. Mute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
9.4.8. Fill Gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
9.4.9. Remove Equals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
9.5. Merge Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
9.6. Linear Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
9.7. Logs Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
9.7.1. Remove Equals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
9.7.2. Resample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
9.7.3. Remove Spikes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
9.7.4. Block/Unblock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

10. Comment Logs 127


10.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
10.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

11. Core Sample Images 129


11.1. Load Core Sample Images by List . . . . . . . . . . . . . . . . . . . . . . . 129
11.2. Load Core Sample Images by file name . . . . . . . . . . . . . . . . . . . . 130

12. Well Test Info 131


12.1. Data Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
12.2. Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

13. Horizons 132


13.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
13.1.1. Import. CPS Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
13.1.2. Import. Horizon ASCII Format . . . . . . . . . . . . . . . . . . . . . . 135
13.1.3. Import. Surfer 6 GRD (Bin) Format . . . . . . . . . . . . . . . . . . . 136

CONTENTS 5
19.1

13.1.4. Import. Surfer 7 GRD (Bin) Format . . . . . . . . . . . . . . . . . . . 137


13.1.5. Import. Z-Map Plus Format . . . . . . . . . . . . . . . . . . . . . . . . 137
13.1.6. Import. GXF-3 Format . . . . . . . . . . . . . . . . . . . . . . . . . . 139
13.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
13.2.1. Export All Horizons to Horizon Format (ASCII). . . . . . . . . . . . . 142
13.2.2. Export Horizon to Horizon Format (ASCII). . . . . . . . . . . . . . . . 142
13.2.3. Export Horizon to Surfer 7 Grid Format. . . . . . . . . . . . . . . . . . 142
13.3. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
13.4. Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
13.4.1. Horizons: IDW Method . . . . . . . . . . . . . . . . . . . . . . . . . . 143
13.4.2. Horizons: Kriging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
13.4.3. Horizons: SGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
13.4.4. Horizons: Least Squares method . . . . . . . . . . . . . . . . . . . . . 147
13.4.5. Horizons: Least Squares interpolation (by Point Set) . . . . . . . . . . . 149
13.5. Universal Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
13.6. Horizons Adjustment to Markers . . . . . . . . . . . . . . . . . . . . . . . . 153
13.6.1. IDW method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
13.6.2. Least Squares method . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
13.7. Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
13.7.1. Rotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
13.7.2. Translate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
13.7.3. Smooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
13.7.4. Pull Up Horizon to Marker . . . . . . . . . . . . . . . . . . . . . . . . 156
13.8. Auxiliary Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
13.8.1. Create Horizon by Pointset . . . . . . . . . . . . . . . . . . . . . . . . 157
13.8.2. Create Horizon by Seismic Horizon . . . . . . . . . . . . . . . . . . . 158
13.8.3. Crop Horizon by Polygon . . . . . . . . . . . . . . . . . . . . . . . . . 158
13.8.4. Horizons Merging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
13.8.5. Create Top/Bottom Horizon by Grid . . . . . . . . . . . . . . . . . . . 159
13.8.6. Create Horizon by Faulted (Multivalued) Horizon . . . . . . . . . . . . 160
13.8.7. Create Horizon by Structural Model . . . . . . . . . . . . . . . . . . . 161
13.9. Local Horizon Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
13.10.Local Horizon Update (simple) . . . . . . . . . . . . . . . . . . . . . . . . . 164

14. 2D-Maps 168


14.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
14.2. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
14.3. Crop 2D Map by Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
14.4. Voronoi Regions 2D Map by Markers . . . . . . . . . . . . . . . . . . . . . 170
14.5. Volumetric Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
14.6. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
14.6.1. 2D-Map ASCII Format . . . . . . . . . . . . . . . . . . . . . . . . . . 173
14.6.2. Surfer 7 Grid Format . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
14.7. Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

CONTENTS 6
19.1

14.7.1. 2D Maps: IDW Method . . . . . . . . . . . . . . . . . . . . . . . . . . 174


14.7.2. 2D Maps: Kriging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
14.7.3. 2D Maps: SGS Method . . . . . . . . . . . . . . . . . . . . . . . . . . 176
14.7.4. 2D Maps: Least Squares method . . . . . . . . . . . . . . . . . . . . . 178
14.8. 2D Map Adjustment to Wells Attributes . . . . . . . . . . . . . . . . . . . . 180
14.8.1. IDW method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
14.8.2. Least Squares method . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
14.9. Universal Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
14.10.Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
14.10.1. Rotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
14.10.2. Translate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
14.11.Auxiliary Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
14.11.1. 2D Map by Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
14.11.2. Azimuth Map by Polygons . . . . . . . . . . . . . . . . . . . . . . . . 187
14.11.3. Thickness Map by Horizons . . . . . . . . . . . . . . . . . . . . . . . . 188
14.11.4. 2D-Maps Merging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
14.11.5. Create Isochores by Structural Model . . . . . . . . . . . . . . . . . . . 190
14.12.2D Distance Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

15. User Map Images 192


15.1. Load User Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
15.2. Edit User Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

16. Seismic 193


16.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
16.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
16.3. Velocity by Seismic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
16.4. Calculate Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
16.4.1. Instantaneous Amplitude . . . . . . . . . . . . . . . . . . . . . . . . . 197
16.4.2. Instantaneous Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
16.4.3. Instantaneous Frequency . . . . . . . . . . . . . . . . . . . . . . . . . 198
16.4.4. Coherence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
16.4.5. Velocity to Depth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
16.4.6. Depth to Velocity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

17. Seismic Horizons 201


17.1. Create a new seismic horizon . . . . . . . . . . . . . . . . . . . . . . . . . . 201
17.2. Seismic Interpretation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
17.3. Autotracking parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
17.4. Line and Projection display . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
17.5. 3D Correlation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

CONTENTS 7
19.1

18. Polygons 205


18.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
18.1.1. Single Polygon File (Text file) . . . . . . . . . . . . . . . . . . . . . . 207
18.1.2. .bln files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
18.1.3. TKS Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
18.1.4. Polygon lines (ASCII) . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
18.1.5. CPS-3 lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
18.1.6. Shapefile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
18.1.7. Z-Map Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
18.2. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
18.2.1. Export all curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
18.2.2. Export the selected curve . . . . . . . . . . . . . . . . . . . . . . . . . 209
18.3. Polygons Union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
18.4. Add Polygons to Polygon Set . . . . . . . . . . . . . . . . . . . . . . . . . 210
18.5. Perform boolean operations on polygons . . . . . . . . . . . . . . . . . . . . 211
18.6. Create Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
18.7. Polygon by Horizon intersection . . . . . . . . . . . . . . . . . . . . . . . . 214
18.8. Set Polygon Z-Coordinates by Depth . . . . . . . . . . . . . . . . . . . . . 214
18.9. Set Polygon Z-Coordinates by Horizon . . . . . . . . . . . . . . . . . . . . 215
18.10.Transform Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
18.11.Calculate Polygon Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
18.12.Smooth polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

19. Aquifers 217


19.1. Aquifer Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
19.1.1. Calculate Aquifer by Polygon. . . . . . . . . . . . . . . . . . . . . . . 217
19.1.2. Calculate Aquifer by Property. . . . . . . . . . . . . . . . . . . . . . . 218
19.1.3. Calculate Aquifer by Grid. . . . . . . . . . . . . . . . . . . . . . . . . 219
19.2. Aquifer Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

20. Faults 222


20.1. Fault Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
20.2. Fault Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
20.3. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
20.3.1. Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
20.3.2. From Table (3D Fault) . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
20.3.3. Surfer .Bln Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
20.3.4. Surfer 7 GRD Format . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
20.3.5. Z-Map Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
20.4. Smooth Fault Surface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
20.5. Approximate Pointsets by Surface . . . . . . . . . . . . . . . . . . . . . . . 231
20.6. Create Fault by Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
20.7. Create Vertical Faults from Polygons . . . . . . . . . . . . . . . . . . . . . 231
20.8. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

CONTENTS 8
19.1

20.8.1. Export Fault as Curve Set . . . . . . . . . . . . . . . . . . . . . . . . . 232


20.8.2. Create Fault by Seismic Fault . . . . . . . . . . . . . . . . . . . . . . . 232

21. Fault Lines 233


21.1. Create and visualize fault lines . . . . . . . . . . . . . . . . . . . . . . . . . 233
21.2. Edit the Fault Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
21.3. Use Fault Lines for the grid computation . . . . . . . . . . . . . . . . . . . 233

22. Faulted Horizons 234


22.1. Create Multivalued (Faulted) Horizon by Grid Layer . . . . . . . . . . . . . 234
22.2. Create Multivalued (Faulted) Horizon by Grid Filter . . . . . . . . . . . . . 234

23. Point Sets 236


23.1. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
23.1.1. XYZ format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
23.1.2. Lines (ASCII) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
23.1.3. CPS-3 lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
23.1.4. Import Pointsets from Shapefile . . . . . . . . . . . . . . . . . . . . . . 238
23.1.5. ZMap plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
23.2. Import With Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
23.3. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
23.3.1. Export all PointSets in XYZ format . . . . . . . . . . . . . . . . . . . 241
23.3.2. Export all PointSet in XYZ format . . . . . . . . . . . . . . . . . . . . 241
23.4. Create Point Set by Horizon . . . . . . . . . . . . . . . . . . . . . . . . . . 241
23.5. Create Point Set by Multivalued (Faulted) Horizon . . . . . . . . . . . . . . 242
23.6. Create Point Set by Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . 242
23.7. Create Point Set by Seismic Horizon . . . . . . . . . . . . . . . . . . . . . . 242
23.8. Create Point Set by Seismic Horizon (Velocity Model) . . . . . . . . . . . . 242
23.9. Create Point Set by Seismic Fault . . . . . . . . . . . . . . . . . . . . . . . 243
23.10.Create Point Set by Seismic Fault (Velocity model) . . . . . . . . . . . . . . 243
23.11.Create Point Set as Wells and Horizon Intersection . . . . . . . . . . . . . . 243
23.12.Create Point Set by Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
23.13.Clear Point Set Near Faults . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
23.14.Clear Point Set Inside Polygon . . . . . . . . . . . . . . . . . . . . . . . . . 244
23.15.Create a Point Set by Grid Layer . . . . . . . . . . . . . . . . . . . . . . . . 244
23.16.Pointsets Union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
23.17.Shift Point Set by Vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
23.18.Z Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
23.19.Numeric Attributes Calculator . . . . . . . . . . . . . . . . . . . . . . . . . 245

24. Tables 246


24.1. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
24.2. Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
24.3. Create a Table from Property . . . . . . . . . . . . . . . . . . . . . . . . . . 247

CONTENTS 9
19.1

24.4. Create Table from Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247


24.5. Create Log Statistics Table . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

25. 3D Grids. Model grids 250


25.1. Multiple grids in one project . . . . . . . . . . . . . . . . . . . . . . . . . . 252
25.2. Import. Load Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
25.3. Create Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
25.3.1. Create Simple Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
25.3.2. Create Grid by Horizons . . . . . . . . . . . . . . . . . . . . . . . . . 254
25.3.3. Create Grid by Horizon and Faults . . . . . . . . . . . . . . . . . . . . 257
25.3.4. Create Grid by Point Sets&Faults . . . . . . . . . . . . . . . . . . . . . 260
25.3.5. Create Grid by Structural Model . . . . . . . . . . . . . . . . . . . . . 263
25.3.6. Create Coarse Grid (upscaling) . . . . . . . . . . . . . . . . . . . . . . 264
25.3.7. Create Fine Grid (downscaling) . . . . . . . . . . . . . . . . . . . . . . 266
25.4. LGR Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
25.4.1. Create Simple LGR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
25.4.2. Create LGRs by Wells . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
25.4.3. Create LGRs by Filter Property . . . . . . . . . . . . . . . . . . . . . . 270
25.4.4. Remove LGR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
25.5. Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
25.5.1. Edit Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
25.5.2. Translate & Rotate Grid . . . . . . . . . . . . . . . . . . . . . . . . . 272
25.5.3. Cut Grid 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
25.5.4. Update Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
25.6. Add Geological K to Grid 3D . . . . . . . . . . . . . . . . . . . . . . . . . 273
25.7. Import Existing Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
25.8. Calculate Grid Geometry Properties . . . . . . . . . . . . . . . . . . . . . . 274
25.9. Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
25.9.1. Export. Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
25.9.2. Export. All Maps to GRID_ECL . . . . . . . . . . . . . . . . . . . . . 275

26. Grid Properties 276


26.1. Import. GRID_ECL (ASCII) . . . . . . . . . . . . . . . . . . . . . . . . . . 277
26.2. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
26.3. Facies Modeling (Zones, Regions) . . . . . . . . . . . . . . . . . . . . . . . 278
26.4. Property Interpolation (Zones, Regions) . . . . . . . . . . . . . . . . . . . . 280
26.5. Facies Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
26.5.1. Facies Modeling and Discrete properties modeling: Trivial interpolation 283
26.5.2. Facies Modeling and Discrete properties modeling: Multilayer IDW
method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
26.5.3. Facies Modeling and Discrete properties modeling: Multilayer Kriging 285
26.5.4. Facies Modeling and Discrete properties modeling: Multilayer SIS . . . 286
26.5.5. Facies Modeling and Discrete properties modeling: Kriging 3D . . . . 287
26.5.6. Facies Modeling and Discrete properties modeling: SIS 3D . . . . . . 289

CONTENTS 10
19.1

26.5.7. Facies Modeling and Discrete properties modeling: MPS 3D . . . . . . 290


26.6. Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
26.6.1. Interpolation: Trivial interpolation . . . . . . . . . . . . . . . . . . . . 292
26.6.2. Interpolation by Blocked Wells . . . . . . . . . . . . . . . . . . . . . . 293
26.6.3. Interpolation: Multilayer IDW method . . . . . . . . . . . . . . . . . . 293
26.6.4. Interpolation: Multilayer Kriging . . . . . . . . . . . . . . . . . . . . . 294
26.6.5. Interpolation: Multilayer SGS . . . . . . . . . . . . . . . . . . . . . . . 295
26.6.6. Interpolation: Kriging 3D . . . . . . . . . . . . . . . . . . . . . . . . . 296
26.6.7. Interpolation: SGS 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
26.6.8. Interpolation: MPS 3D . . . . . . . . . . . . . . . . . . . . . . . . . . 299
26.6.9. Interpolation: By Distribution . . . . . . . . . . . . . . . . . . . . . . . 300
26.7. Connected Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
26.7.1. Connected Components . . . . . . . . . . . . . . . . . . . . . . . . . . 302
26.7.2. Filter Small Connected Components . . . . . . . . . . . . . . . . . . . 303
26.8. Volumetric Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
26.8.1. Calculate Volumetric Properties . . . . . . . . . . . . . . . . . . . . . . 304
26.8.2. Calculate Geometrical Volume . . . . . . . . . . . . . . . . . . . . . . 310
26.8.3. Calculate Pore Volume . . . . . . . . . . . . . . . . . . . . . . . . . . 310
26.9. Auxiliary Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
26.9.1. Copy Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
26.9.2. Resampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
26.9.3. Grid & Faults Intersection Property . . . . . . . . . . . . . . . . . . . 313
26.9.4. Grid & Fence Polygons Intersection Property . . . . . . . . . . . . . . 313
26.9.5. Calculate Cut by Polygon . . . . . . . . . . . . . . . . . . . . . . . . . 314
26.9.6. Calculate Cut by Wells . . . . . . . . . . . . . . . . . . . . . . . . . . 314
26.9.7. Create Property by Zones Table . . . . . . . . . . . . . . . . . . . . . . 315
26.9.8. Edit Property Inside Polygon . . . . . . . . . . . . . . . . . . . . . . . 315
26.9.9. Calculate Property by VPC and 2D Map . . . . . . . . . . . . . . . . . 315
26.9.10. Property by Well Log Distribution (experimental) . . . . . . . . . . . . 316
26.9.11. Assign between surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . 316
26.9.12. 3D Voronoi Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
26.9.13. Multilayer Voronoi Regions . . . . . . . . . . . . . . . . . . . . . . . . 318
26.9.14. Faults Segments Property . . . . . . . . . . . . . . . . . . . . . . . . . 319
26.9.15. Property by Seismic Survey 3D . . . . . . . . . . . . . . . . . . . . . . 319
26.9.16. Property By Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
26.9.17. Property by 2D-Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
26.10.Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
26.11.Distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
26.12.Moving Window Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326

27. Interpolation Algorithms 328


27.1. Least Squares method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
27.2. Trivial interpolation method . . . . . . . . . . . . . . . . . . . . . . . . . . 330
27.3. Multilayer IDW method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

CONTENTS 11
19.1

27.4. Kriging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332


27.4.1. About the Kriging Variance . . . . . . . . . . . . . . . . . . . . . . . . 333
27.5. Sequential Gaussian Simulation (SGS) method . . . . . . . . . . . . . . . . 335
27.6. Cokriging and collocated Cokriging . . . . . . . . . . . . . . . . . . . . . . 336
27.7. Multi-point facies simulation (MPS) . . . . . . . . . . . . . . . . . . . . . . 336

28. Blocked Wells 338


28.1. Select a log template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
28.2. Create Blocked Wells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
28.3. Create Blocked Wells by property . . . . . . . . . . . . . . . . . . . . . . . 341
28.4. Calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

29. Contacts 343


29.1. Create Contact by Horizon . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

30. Structural Model 344


30.1. Create Structural Model Box . . . . . . . . . . . . . . . . . . . . . . . . . . 344
30.2. Add Faults to Structural Model . . . . . . . . . . . . . . . . . . . . . . . . . 345
30.3. Add Horizons to Structural Model . . . . . . . . . . . . . . . . . . . . . . . 346
30.4. Build Horizons of Structural Model . . . . . . . . . . . . . . . . . . . . . . 346

31. Fractures 349


31.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
31.2. Unstructured Grids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
31.3. Fracture Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
31.4. Fracture Planes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
31.5. Fracture Template XYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
31.5.1. Required parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
31.5.2. Optional parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
31.5.3. Optional parameters - Dual Porosity (DP) . . . . . . . . . . . . . . . . 357
31.5.4. SRV boundary shape . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
31.6. Fracture Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
31.7. Fracture Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
31.8. Fracture Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
31.9. Fractures Intersection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
31.10.Integration with third party software . . . . . . . . . . . . . . . . . . . . . . 365
31.10.1. GSLIB files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
31.10.2. Fracture Pointsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366

32. Fluid Properties 368


32.1. General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
32.2. Relative Permeability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
32.2.1. RP Tables and Corey functions . . . . . . . . . . . . . . . . . . . . . . 369
32.2.2. Operations with RP Tables . . . . . . . . . . . . . . . . . . . . . . . . 370

CONTENTS 12
19.1

32.2.3. Operations with RP functions . . . . . . . . . . . . . . . . . . . . . . . 371


32.2.4. Additional features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
32.3. PVT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
32.4. Initial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
32.5. Rock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
32.6. More Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375

33. Wells Data. 376

34. Wells Data. Tables 376


34.1. Well Production Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
34.1.1. Import History – One Table . . . . . . . . . . . . . . . . . . . . . . . . 377
34.1.2. Import History – Grouped by Wells . . . . . . . . . . . . . . . . . . . . 380
34.1.3. Import History – Field History File format . . . . . . . . . . . . . . . . 383
34.1.4. Group Production Tables . . . . . . . . . . . . . . . . . . . . . . . . . 384
34.1.5. Load Wells History from Database . . . . . . . . . . . . . . . . . . . . 384
34.1.6. Operations with production tables . . . . . . . . . . . . . . . . . . . . . 385
34.2. Well Structure Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
34.2.1. Events – One Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
34.2.2. Events – Grouped by wells . . . . . . . . . . . . . . . . . . . . . . . . 390
34.2.3. Events – OWX format . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

35. Wells Data. Strategies. 392


35.1. Time Steps and Rules management . . . . . . . . . . . . . . . . . . . . . . 394
35.2. Right Panel Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
35.3. Global Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
35.3.1. Input Wells Trajectories . . . . . . . . . . . . . . . . . . . . . . . . . . 397
35.3.2. Input VFP tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
35.3.3. Input Well Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
35.3.4. Gas Lift Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
35.3.5. Enable Fracture Table . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
35.4. Well Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
35.4.1. Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
35.4.2. VFP tables for wells . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
35.4.3. Economical Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
35.4.4. ASP Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
35.4.5. Thermal properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
35.4.6. Brine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
35.5. Group Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
35.5.1. Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
35.5.2. Economical Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
35.6. Other Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
35.6.1. Fractures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
35.6.2. User keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404

CONTENTS 13
19.1

36. Wells Data. VFP Designer. 406

37. Wells Data. Schedule 407

38. Data Analysis 408


38.1. Variograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
38.1.1. Variogram models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
38.1.2. Variogram Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . 411
38.2. Analyze Blocked Wells data . . . . . . . . . . . . . . . . . . . . . . . . . . 422
38.2.1. Create and analyze variograms by zones and regions . . . . . . . . . . 422
38.2.2. Create and analyze VPCs by zones and regions . . . . . . . . . . . . . 423

39. Graphs 423


39.1. Graph calculator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
39.1.1. Data structures and functions . . . . . . . . . . . . . . . . . . . . . . . 429
39.1.2. Importing libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
39.1.3. Usage examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437

40. Workflows 442


40.1. Creating workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
40.2. Editing workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
40.3. Creating variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
40.4. Running workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
40.5. Functions and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . 446

41. Run AHM from Model and Geology Designers 450


41.1. Use of Discrete Fourier transform algorithm for history matching . . . . . . 453
41.1.1. Discrete cosine transform (DCT) algorithm . . . . . . . . . . . . . . . 453
41.1.2. How to use DCT via GUI . . . . . . . . . . . . . . . . . . . . . . . . . 455

42. References 459

CONTENTS 14
19.1

1. Introduction
tNavigator is a software package, offered as a single executable, which allows to build static
and dynamic reservoir models, run dynamic simulations, perform extended uncertainty anal-
ysis and build surface network as a part of one integrated workflow. All the parts of the
workflow share common proprietary internal data storage system, super-scalable parallel nu-
merical engine, data input/output mechanism and graphical user interface. tNavigator supports
METRIC, LAB, FIELD units systems.
tNavigator is a multi-platform software application written in C++ and can be installed on
Linux, Windows 64-bit OS and run on systems with shared and distributed memory layout
as a console or GUI (local or remote) based application. tNavigator runs on workstations and
clusters. Cloud based solution with full GUI capabilities via remote desktop is also available.
tNavigator contains the following 8 functional modules licensed separately:

• Geology Designer (includes PVT Designer and VFP Designer);

• Model Designer (includes PVT Designer and VFP Designer);

• Network Designer (includes PVT Designer and VFP Designer);

• Black Oil simulator;

• Compositional simulator;

• Thermal simulator;

• Assisted History Matching (AHM, optimization and uncertainty analysis);

• Graphical User Interface.

The list of tNavigator documentation is available in tNavigator Library.

In this document the following modules are described:

• Geology Designer – building static models from scratch.

• Model Designer – a pre-processor to build dynamic models.

Modules Geology Designer, Model Designer are fully integrated with simulation engine
(Black Oil simulator, Compositional simulator, Thermal simulator).

Geology Designer and Model Designer allow to:

• Create static model from scratch using initial data;

• Load rescue files of the static model and edit data; create a dynamic model based on
existing geological model;

1. Introduction 15
19.1

• Load existing model in the tNavigator, E1, E3, IM, ST, GE, MO formats and edit grid
locally, edit properties and keywords;

• Load well trajectory, seismic surfaces, markers, faults, LOG data;

• Interpret seismic horizons;

• Perform well correlation;

• Build horizons and a model grid using different interpolation algorithms;

• Run workflows;

• Build PVT tables using compositional properties and match with measurement data
(PVT Designer is described in the document tNavPVTDesignerGuide);

• Create phase relative permeabilities;

• Create lifting tables (VFP) using correlations and match with measurement data;

• Load wells events and historical data;

• Define rules for wells (well control mode, economic limits, group controls and other);

• Work in one graphical interface with static and dynamic data;

• Calculate the designed dynamic model visualizing results on 2D, 3D and graphs.

tNavigator User Manual contains the description of physical model, mathematical model
and the keywords that can be used in dynamic model.

1. Introduction 16
19.1

2. Designer project

Examples of how to set project settings and import the data are shown
in training tutorials:

• GD1.1. How To Get Started Geology Designer;

• GD1.2. How To Import Data.

2.1. Designer project


The graphical interface is composed of:

• Top menu (Document, View, Files, Reports, Queue);

• Top Panel Buttons;

• The Options Panel (Cases, Geometry Objects, Fluid Properties, Wells Data, Data Anal-
ysis, Graphs);

• There are three working panels: a tree of corresponding objects (at the left), a visual-
ization properties panel and a list of calculations which are available for the object. It is
possible to activate only the panels you need for work using buttons placed at the left
(Left panel buttons);

• The Visualization panel (2D, 3D, Wells Table, Well Section, Histogram, VPC, Crossplot,
Seismic, Geosteering);

• The Right panel buttons;

• Log Panel at the bottom of the project window.

The required option can be chosen by left clicking on the corresponding button. For most
part of the options, selecting an option brings up an additional sub-options panel near the
main option panel. On the right panel, the corresponding data are visualized for viewing and
editing.

2. Designer project 17
19.1

Figure 1. Designer project window.

2.2. Document
• Save.
Save current project.

• Import data from RESCUE file.


The dynamic model will be built from the RESCUE files. Grid, model porosity property,
permeabilities, trajectories of wells can be loaded and a creation of the dynamic model
can be continued based on these data (cf. Import a Rescue file).

An example of this approach can be found in the training tutorial


MD1.3. How To Load Rescue And Create Model.

2.2. Document 18
19.1

• Import data from Existing model.


After indicating the existing model *.data file, its grid, properties, phase relative perme-
abilities, PVT, wells data, and other properties will be loaded. The geological project
will be created based on the loaded model. Further, the model can be modified. It is
possible to make a local grid editing, change properties, add an aquifer, do a local grid
refinement, etc. After all necessary modifications the modified model can be saved.
This feature is also accessible as a procedure in workflow, see 40.2.

• Load Symbols
Loading well symbols (see 6.5).

• Open Model.
Open a created dynamic model.
This feature is also accessible as a procedure in workflow, see 40.2.

• Export Model.
The created model will be saved in tNavigator format. The definition and detailed
description of this format are given in the User Manual section tNavigator format.
This feature is also accessible as a procedure in workflow, see 40.2.

• Stop.
Stop calculation of the model.

• Close model.
Close the created model.

• Settings.

• Coordinate System.
– Coordinate System. Using the button Select the Coordinate Reference Sys-
tem, the coordinate reference can be set for the entire project. The coordinate
system can be found by its EPSG code (European Petroleum Survey Group). A
detailed information about each coordinate system is available, including the
name, the EPSG code, the type of coordinates (projected or geographic), the
information and the data source and the information about the datum (ellipsoid
and origin of the coordinate system).
– Datum. Displays the datum associated to the chosen coordinate system once
it is set. Note that it is possible to import objects which are not in the same
coordinate system as the one which is set for the entire project (see the options
in calculations panel)
• Output Units. The units indicted by the user (METRIC / FIELD / LAB) will be
used for the project graphical interface and for the saved model as well.

2.2. Document 19
19.1

• Templates.
See Templates below.

• Workflows
See 40. Workflows.

Templates.
Templates allows to specify units, a type (continuous, discrete and ternary palettes) and cate-
gories (in the case of discrete properties) of the objects. At the bottom of the List of Templates
dialog there are buttons allowing:

• Add New Template. Tabs Info and Palette to the right become active;

• Delete Template;

• Duplicate Template. Duplicates the selected template;

• Export Selected Template. Specify a template name. The template is exported as


a file with the extension *.tte;

• Import Templates. Specify a name of the file containing a template.

On the tab Info the following data can be specified for a new template:

• Name. Select a name of new template;

• Type. Select a palette type for visualization;

– Continuous palette;
– Discrete palette;
– Ternary palette.

• Units. Specify units of measurement;

• Numeric precision. Specify the number of decimal places.

In the tab Palette a palette preview is shown in relative units. In order to change palette
settings right-click on it. If Continuous palette is chosen as Type the following option are
available:

• Set Predefined Palette. A list of palettes available by default:

– 5-color Palette (set by default);


– 7-color Palette;
– Seismic Palette;

2.2. Document 20
19.1

– Seismic Horizon Palette;


– Delta Palette.
The palette is zero centered, i.e. property zero value corresponds to the white
color of palette (see figure 2). It is applied for properties varying from negative to
positive values. If property values are positive or negative the palette is not zero
centered;
– Delta Hard Palette.
Zero centered palette with intensive colors (see description of Delta Palette);
– Delta Soft Palette.
Zero centered palette with pale colors (see description of Delta Palette);
– History Matching Analysis Correlation Palette;
– Stacked Plot Palette;
– Grayscale Palette;
– k-Size Random Colors Palette.
It is possible to specify the number of colors in the palette. Colors will be selected
randomly;
– k-Size Random Colors Discrete Palette;
– Dummy Palette.

• Add Color. Adds a new color at the current position;

• Change Color. Select a new color in the Select Color dialog;

• Change Value. Change value for the selected color;

• Remove Color. Removes a color from a palette;

• Edit Palette. Allows to move (up/down) a color boundary (horizontal line denoting a
begining of color identification);

• Edit Colors Simultaneously. Allows to move color boundaries simultaneously;

• Logarithmic Palette. Colors associated with positive parameter values will be varied
logarithmically (all negative parameter values will be set equal to zero). It is recom-
mended to use this palette for parameters having small values for better visualization of
their distributions;

• Inverted Palette. For a normal palette a region of property maximal values is marked
with red color, while region of minimal values is marked with blue color. For the
inverted palette the region of maximal values will be marked with blue color and the
region of minimal values will be marked with red color;

2.2. Document 21
19.1

• Discrete Palette. In contrast to a continuous palette, where each parameter value corre-
sponds to its shade palette color for a discrete palette each palette color corresponds to
a range of parameter values. There is no linear interpolation between palette colors. The
number of colors is specified by the option Discretization Degree in palette settings.
If Discrete palette is chosen as Type in the tab Info the following option are available:
• Alternative Mode. A name, a color and a pattern are assigned to the selected object
values;
• Graphic Mode. The created discrete palette is visualized.
If Ternary palette is chosen as Type in the tab Info the following option are available (in
order to edit palette settings right-click on it):

• Set: Gas – Red, Water – Blue, Oil – Green;

• Set: Gas – Green, Water – Blue, Oil – Red;

• Change Color. Select a color;

• Change name. Specify a new phase name.

Examples of working with templates and palettes are given in the train-
ing course COMMON1.1. How to use Templates and Palette.

In order to apply the created template to the selected object, right-click on it and in the
pop up Object Settings dialog go to the tab Settings and select the template from the drop
down menu Template. To edit a template press the button ... to the right.

!
In oder to apply a template palette untick Use Locale Palette in the palette
settings dialog which can be opened by right-clicking on the current palette
(see Palette).

2.3. View
• New View. Create Designer new window for the current project.

• Hide all. Hide all additionally opened windows.

• Show all. Show all additionally opened windows.


• Close all additional views. Close all additionally opened Designer project windows.

Comment. If there are additionally opened Designer windows it is possible to switch


between them using the View menu.

2.3. View 22
19.1

Figure 2. Delta Palette: zero centered palette.

2.4. Files
Project files are available for viewing here.

2.5. Reports

See training tutorial SIM1.2. How To Import Export Data Reports

2.6. Queue
• Calc Model: One Model;

• Show State of Calculations.

Some of above mentioned menu elements can be found on Top panel buttons.

2.4. Files 23
19.1

2.7. Import Data from Rescue File


This dialog, accessible from the Document menu allows to load a model from a rescue file.
The following parameters have to be set:

• Rescue File Name. Complete path to the rescue file. The path can be changed by the
ellipsis button;

• Grid coordinates Measure Units. Set the units for XY and Z;

• Length Measure Units. Set the length measure units for XY units and Z units;

• Grid and Properties. Contains the following parameters:

– Apply ACTNUM to Grid. Tick or untick the box to use or not ACTNUM cube
(if present) in the project (cf. the keyword ACTNUM, see 12.2.29). The cube will
be loaded as region and will be displayed in the category Regions in Geometry
Objects. If no ACTNUM cube is available and the option is activated, the rescue
file is loaded, but a message is displayed in the message panel indicating that no
ACTNUM is available;
– Use. Tick or untick the box to import or not the properties;
– Input Name. Name of the property in the model;
– Name in Designer. Name of the property which will be displayed in Designer
interface. The field can be changed by double clicking on it;
– Quantity. Set the equivalent quantity of the properties. The proper quantity can be
chosen from the list by double clicking on the field;
– System. Set the system of the properties from SI, METRIC, LAB, FIELD.

• Wellbores. Contains the following parameters:

– Load Wellbores. Import the wellbores if the box is ticked;


– Append To Existing. Add the imported wellbores to the existing ones;
– Add Point with Zero MD. Continue the well trajectories to the nearest point at
XY plane if the top trajectory point is visually below this plane. ;
– Use. Tick or untick the box to import or not the wellbores;
– Input Names. Name of the wellbore in the model;
– Name in Designer. Name of the wellbore which will be displayed in Designer
interface. The field can be changed by double clicking on it;

• Faults. Contains the following parameters:

– Load Faults. Allows to load the faults as separate geometry objects. After the
loading, the faults will appear under Faults in the objects tree.

2.7. Import Data from Rescue File 24


19.1

– Use. Tick or untick the box to import or not the fault;


– Input Names. Name of the fault in the model;
– Name in Designer. Name of the fault which will be displayed in Designer inter-
face. The field can be changed by double clicking on it;
– Find and Replace in Faults Column. Allows to edit the name of the faults in
Designer Interface:
∗ Reduce to 8 symbols. Reduce the fault names in Designer to 8 symbols. If
Change Left Part of Word is checked, the 8 first symbols of the name are left.
If not, the 8 last are left;
∗ Find What Replace With. Allows to edit the name of the faults in the inter-
face. The symbols which are entered in the field Find What are replaced by
the one entered in Replace with when the button Replace is pressed. These
operations can be undone using the button undo.

• Horizons. Contains the following parameters:

– Load as Horizons.Allows to load the horizons which are present in the model.
The horizons will appear under Horizons in Geometry Objects;
– Load as Faulted Horizons. Allows to load the horizons which are present in the
model as faulted horizons. After the loading, the horizons will appear in Geometry
Objects below faulted horizons;
– Use. Tick or untick the box to import or not the horizons;
– Input Names. Name of the horizon in the model;
– Name in Designer. Name of the horizon which will be displayed in Designer
interface. The field can be changed by double clicking on it

This feature is also accessible as a procedure in workflow, see 40.2.

2.7. Import Data from Rescue File 25


19.1

2.8. Top panel buttons


The description of buttons Create new view, Hide All additional views, Show
all views, Save, Open model and Stop see sections Top menu (Document, View
etc.);

• Reload Graphs.

• Open Time Step Editor. Time step editor will be opened (figure 3):

– Add Steps.
Step Length. Time step length: One step, Year, Month, Week, Day. Initial date.
Initial date of the time interval. Final date. Final date of the time interval. In
accordance with defined settings the list of dates will be formed. The number of
steps fitted inside a given time interval will be added.
One step means that time step length is equal to the whole time interval. For any
length of time interval one time step will be always added.
– Remove Step. Remove the time step.
– Add Steps from History and Event Tables. Time steps will be defined
automatically after loading wells data and/or history. Any date can be defined as
initial or final by right-clicking on the date and selecting in dialogue Defined as
initial or final.

Figure 3. Time steps editor – adding a time step.

2.8. Top panel buttons 26


19.1

2.9. Left Panel Buttons


• Show the list of visualization methods and the tree of corresponding objects
Clicking on the button brings up the panel of available options and corresponding ob-
jects. Clicking on the button again hides the panel.

• Show Settings
Clicking on the button brings up the visualization properties panel. This panel gathers
the main visualization settings for all the objects. Clicking on the button again hides the
panel.

• Show list of calculations of the selected object


Clicking on the button brings up list of available Calculations for the selected object,
e.g. loading object data, creating object from scratch or based on another available object
or exporting the available object. Detailed information about the object can be found in
the section corresponding to the object.

2.9. Left Panel Buttons 27


19.1

2.10. Right Panel Buttons


• View and Presentation Params
Switches graphics area to default view (zoom and position).

• 3D Slicing
Shows slices of the model.
• Properties Filter
Opens a tool for creating cuts based on property values.

• Create Cross-Section
This option allows to create vertical or horizontal cross-sections of the model. You can
also create a cross-section via selected points or wells or well trajectories. The created
cross-section can be viewed in 2D.
• Ruler
Measures the distance between two blocks specified by mouse clicks or selected by
coordinates.
• Statistics & Information
Shows statistics concerning the grid in general and the currently selected property.

• Brush
Opens a tool for convenient freehand selection of arbitrary areas in 2D and 3D.

• Pull
Opens a tool for freehand transformations of grid geometry.

• Faults
Creates faults with a variety of options (see Fault Editing).

• Point Sets
Opens a tool for freehand editing of point sets.

• Create Screenshot
Creates a screenshot in a variety of formats.

• Use Well Filter


Opens the well filter tool (see Well, Groups and Network Filter. Stream Line Filter).

• Find Well/Conn
Opens the well search tool.

• Show Information Tooltip


Toggles the information tooltip that reveals info on any object as mouse pointer hovers
over it.

2.10. Right Panel Buttons 28


19.1

• Seismic
Opens a number of tools for working with seismic data.

2.10. Right Panel Buttons 29


19.1

2.11. Well, Groups and Network Filter. Stream Line Filter


Use Well Filter. The button with the well filter on.

The button Well Filter opens the popup window with the following functionality:

1. Create Well filter (see section 2.11.1). If the filter is turned on, only the selected objects
will be shown in all visualization; in the Graphs option only graphs and data for the
selected objects will be accessible.

2. Create Filter for groups (see section 2.11.3). This filter allows to visualize only selected
groups and connections between them in 2D.

3. Create Filter for surface network visualization (see section 2.11.4). This filter allows
to visualize only selected nodes of surface network and branches between them in 2D.

4. Create Streamline Filter (see section 2.11.2). Using this filter allows to show all the
wells of the model and visualize only streamlines for the wells selected by the streamline
filter.

2.11.1. Well filter


The Well Filter dialog is shown in the figure 4. Using this dialog you can select wells one by
one (left side of the dialog – Single Well Selection) or select multiple wells (right side of the
dialog – Multiple Well Selection).

To select wells, use the following interface elements:

• Global buttons (located at the bottom):

• Select All;
• Deselect All;
• Invert selection.

• Single Well Selection. On the left side of the window, check the wells you need. You can
find a well in the list of wells using the search line (start typing well’s name or number
in the search line).

• Multiple Well Selection. On the right side of the window, click the collections you need.

◦ Groups deals with wells in a specific group.


◦ FIPs deals with wells in a specific fluid-in-place region.
◦ Current Historical/Calculated Well Types selects wells by status: Producers, In-
jectors (further subdivided by control type), Stopped, Shut, Not Present on This
Time Step.

2.11. Well, Groups and Network Filter. Stream Line Filter 30


19.1

Figure 4. Creating a well filter.

◦ Accumulated Historical/Calculated Well Types does the same, but considers the
past status of a well along with its current status. For example, a producer well
converted at some point to an injector will be selected both as a producer and as
an injector.

With each of these collections, the following actions are available via the context menu:

◦ Select Only the wells of this collection;


◦ Add this collection to the filter;
◦ Deselect this collection, i.e., remove its elements from the filter.

Once you have included in the filter all the wells you need, click Close.
Well filters are saved automatically and will persist when you close and re-open the model.
Buttons to work with filters
• Delete Filter.

• Create Filter.

• Duplicate Filter the current well filter (create a new filter that only includes the
wells selected in the current filter).

2.11.1. Well filter 31


19.1

• Use As Streamline filter (the wells in the current filter will be included in the
Stream Line Filter, see the description below).

• Create Well List.


Currently selected wells will be saved as a well list (WLIST). Graphs for wells included
this list are available as well. When list is created, the keyword WLIST (see 12.19.33)
is writing to user-file in the USER folder.
Well list (WLIST) creating.

1. Check wells which will be included to a new list. Press Create Well List.
2. Enter a list name. Press OK.

• Export. A list of wells in the filter will be saved to a text file. The file can be loaded to
the model as a filter.

• Import. A saved filter can be loaded from a file or from the clipboard.

2.11.2. Streamline Filter

This example is also presented in the training tutorial SIM2.1. How To


Manage Waterflood.

Figure 5. Streamlines for wells included in the Streamline Filter.

Creating a Stream Line Filter:

2.11.2. Streamline Filter 32


19.1

1. In the Well Filter dialog, select Current Filter – Streamline Filter. Select the required
wells. For these wells streamlines will be visualized.

2. Select the Current Filter – Well Filter 1 (or a different filter that includes wells
required to be displayed). Well Filter 1 includes all wells. Click Close in the dialog.

3. Go to 3D view or 2D view of the model. Uncheck Show Mesh and check Stream
Lines. Streamlines will be shown only for the selected wells– figure 5. However, all the
wells of the model will be visible (according to Well Filter 1).

4. Go to 2D view. Right-click on the property near a well, and you will see a pop-up menu
to define the Stream Line Filter. Add This Well. Selecting Keep This Well Only
keeps only this well in the Stream Line Filter.

Display of streamlines is described in 2.15. Stream Lines.

2.11.3. Group filter

The example of this functionality is shown in the training tutorial


SIM1.10. How to use NETWORK.

If a model contains group hierarchy defined via GRUPTREE (see 12.19.100), the group
filter becomes available on a separate tab of the Well filter window. This filter allows to vi-
sualize only selected groups and connections between them in 2D. Switch to 2D view. Select
Groups in the drop-down menu of Nodes located on the visualization settings tab to see the
filter’s action – figure 6.

For groups with subordinate groups the following options are available via the context
menu obtained by right mouse click:

• Add all children to filter. All child objects of the selected group will be visualized on
the map.

• Remove from filter. The object will get removed from filter and will not be visible.

• Remove from filter with children. The selected object and all its children will not be
visible on the map.

• Remove only children from filter. All children of the selected object will not be visible
on the map.

! Note that a left click on a group toggles only this group itself, and not its
subordinate groups and/or wells.

2.11.3. Group filter 33


19.1

Figure 6. Group filter.

2.11.4. Network filter

The example of this functionality is described in the training tutorial


SIM1.10. How to use NETWORK.

If a model contains surface network defined via NETWORK (see 12.1.91), the network
filter becomes available on a separate tab of the Well filter window. The detailed descrip-
tion of these objects is in the section NETWORK option. Automatic chokes. Compressors of
tNavigator User Manual.
This filter allows to visualize only selected network nodes and branches between them in 2D
view. Select Network Nodes in the drop-down menu of Nodes located on the visualization
settings tab to see the filter’s action – figure 7.

Multiple Selection is also available for the surface network visualization:


• Compressor.
• Choke.
• Node.
For objects with subordinate objects the following options are available via the context
menu obtained by right mouse click:
• Add all children to filter. All child objects of the selected group will be visualized on
the map.

2.11.4. Network filter 34


19.1

Figure 7. Network filter.

• Remove from filter. The object will get removed from filter and will not be visible.

• Remove from filter with children. The selected object and all its children will not be
visible on the map.

• Remove only children from filter. All children of the selected object will not be visible
on the map.

! Note that a left click on an object toggles only this object itself, and not its
subordinate objects.

2.11.4. Network filter 35


19.1

2.12. Report Panel – Log


This panel is situated in the bottom part of the project window and shows all the information
about current processes, e.g. loading objects, running computations and etc.
By default all messages will be displayed (button Messages, bottom panel). Clicking
on the button Warnings and Errors (on the bottom panel) will display warnings and
errors. Clicking on the button Errors (on the bottom panel) will display only errors.

Figure 8. Report Panel.

2.13. Visualization tabs


The following visualization tabs are available:

• 2D;

• 3D;

• Seismic;

• Cross-Section;

• Wells Table;

• Well Section;

• Histogram;

• VPC;

• Crossplot;

2.12. Report Panel – Log 36


19.1

• Geosteering;

• Table;
Each visualization tab can be detached by dragging it outside of the tab set and can be du-
plicated in order to set an independent view. The tabs manager is accessible by View/Windows
on the top menu.

2.13.1. Cross-Section
The Cross-Section tab is used to display the cross-sections created in 3D. All the objects can
be displayed, even if the grid is not built yet.
Build a cross-section
The option Create Cross-Section is available both in 3D and 2D on the right panel (
button). There is no validation button, all the modifications are automatically saved in the
cross-section.
There are several cross-sections types:
• Vertical Cross-Section;

• Coordinate Plane;

• Points Selection;

• Well Fence;

• Multi Well Fence.


The detailed description of each option is given below.
Creating a Vertical Cross-Section.
This computation allows to create a cross-section which passes through 2 block centers. A
grid has to be built in the project.
1. In the Cross-Section dialogue window select Vertical Cross-Section. Select the start
point and the end point of the section by left-clicking on the model.

2. The plane of the section can be moved by dragging the yellow spheres. You can rotate
the plane by pulling the corners.

3. In the dialogue, you can manually set the coordinates of the first and the last block (in
(METRIC: m, FIELD: ft)), see Fig. 9.

4. Apply. OK.
Creating a Coordinate Plane Cross-Section
1. In the Cross-Section dialogue window select Coordinate Plane and Plane parallel to
which the cross-section will be created, e.g. Z plane.

2.13.1. Cross-Section 37
19.1

Figure 9. Create Vertical Cross-Section 1.

2. Press the green plus button to Add new cross-section.

3. The appeared plane of the section can be moved by pulling the yellow balls. You can
rotate the plane by pulling the corner cubics, see Fig. 10

4. If the cross-section crosses the boundary between blocks parallel to the Z plane you can
select the blocks above or below the cross-section which faces will be located on the
cross-Section.

5. In the dialogue, you can manually set the depth (in (METRIC: m, FIELD: ft)).

6. Apply. OK.

Point Selection

1. In the Cross-Sections dialogue select Points Selection.

2. Cross-Section. Add Cross-Section (pressing on the green plus).

3. Tick Use Grid to use grid blocks centers or Use Horizons to select points on a chosen
horizon to build the cross-section. In this last case, no grid is needed, see Fig. 11 and
Fig. 12

4. Click on the grid or the horizon to select the points for the construction of cross-section.

5. Press Undo to delete the last point.

2.13.1. Cross-Section 38
19.1

Figure 10. Create a Coordinate Plane cross-section.

6. The appeared fence can be moved by pulling the yellow spheres.

7. You can change the position of fence points by pulling the cubes.

8. Apply. OK.

Figure 11. A points fence using the grid.

Creating a Well Fence

2.13.1. Cross-Section 39
19.1

Figure 12. A points fence using a horizon.

1. In the Cross-Section dialogue select Well Fence.

2. Cross-Section. Add Cross-Section (pressing on the green plus).

3. Select a well from the list. The selected well should be directional. Otherwise, if well is
vertical this type of cross-section will be degenerate and will not be shown; figure 13.

4. If the well trajectory has been loaded, you can check Trajectory and select the trajectory
branch along which the fence will be created.

5. The Tolerance slider defines the number of points of the well trajectory which will be
used to create the well fence. The tolerance determines how far from the created line
(defining the cross-section) the skipped points of the trajectory can be located.
Based on the slider position, the maximum distance (tolerance in the formula below),
which should not be exceeded, is calculated according to the following formula:

0.002 · (1.0 − slider_value) · length


tolerance = ,
n_points
where:
slider_value is the slider value from 0 to 1, length is the trajectory length, n_points is
the number of trajectory points.

6. Apply. OK.

Creating a Multi-Well Fence

2.13.1. Cross-Section 40
19.1

Figure 13. A well fence.

1. In the Cross-Sections dialogue select Multi-Well Fence.

2. Cross-Section. Add Cross-Section (pressing on the green plus).

3. Select the well filter based on which the fence will be created in the drop-down menu,
see Fig 14.

4. If the well trajectories have been loaded, you can check Prefer Trajectories.

5. Close Fence creates a closed fence (the first point and the last point will be connected).

6. Alignment: Top, Middle, or Bottom (for horizontal wells the fence line depends on the
type of the alignment)

Display the cross-section


To display a cross-section, the corresponding cross-section has to be ticked in Geometry
Objects under the Cross-section category. The objects to display have to be selected in
Geometry Objects as well. For each selected object, the visualization settings can be set in
the Settings panel.

2.13.1. Cross-Section 41
19.1

Figure 14. A multi-well fence in 2D.

2.13.1. Cross-Section 42
19.1

2.13.2. Geosteering
This panel is used to adjust the placement of the drillhead to adapt the information gathered
from the area around and below the drill. These operations will allow to obtain a better placed
rig.
This tab is composed of the following areas (see Fig. 15):
• Reference Well. Display of the trajectory and the logs of the well which was chosen as
the reference one. This well will be used to compute the synthetic curve. To set the log
curves, click first on Reference Well and then, select the curve in Geometry Objects;
• Planned and Drilled Well. Display of the trajectory of the planned and drilled wells.
The synthetic curve calculated from the reference well can be displayed;
• Cross-Sections. Display of the cross section, indicating the planned, drilled and refer-
ence well trajectories. To create a cross-section, see Cross-Section.

Figure 15. Geosteering tab A) Reference Well area, B)Planned and Drilled Well area, C)
Cross-Sections area

On the right panel, depending on the selected area (to select an area, click on the area name),
different options are available. For the Reference Well and the Planned and Drilled Well
areas, these buttons are the same as for the well section window. The following buttons are
common to all areas:

2.13.2. Geosteering 43
19.1

• Configure Geosteering ( ). This option allows to set the reference, the drilled and
the planed wells;

• Create Synthetic Log ( ). Allows to compute a synthetic log for the horizontal
planed well, using the reference well. A relationship between the log values and the
depth is computed for the reference log for the depth interval situated at the depth of
the horizontal well trajectory. A log value is assigned to each trajectory point of the
horizontal well using this relationship, cf Fig. 16.

Figure 16. Reference well and planned well location example in A). Vertical reference well
in B), the relationship between the log values and the depth is computed between MD1 and
MD2. Computed synthetic log for the planned well, which trajectory is comprised between
MD1 and MD2, in C)

The following parameters have to be set:

– Reference Well. Select the well which will be used to compute the relationship
between the log values and the depth;
– Reference Log. Select the log which will be used to compute the synthetic log;
– Planned Well. Select the planned well trajectory;

2.13.2. Geosteering 44
19.1

– Synthetic Log. Select the synthetic log or enter a name to create a new one.

• Use Well Filter. If a well filter is set, only the wells which are included in the filter will
be available for the computations and will be displayed;

• Find Well or Connection. Allows to find a displayed well.

2.13.2. Geosteering 45
19.1

2.14. Palette
A palette is used to assign colors to values of the selected property. The palette is vertical
strip to the left of the visualization window. Holding the top of the palette (where the property
name is indicated) you can move it.
By default for each property there is a local palette. Right-click on the palette and tick Use
Local Palette in the pop-up menu. To create your own palette for the selected property go to
the menu Document and select Template.

2.14.1. Local Palette


All palette colors are separated by horizontal lines (begining of the color setting). A color is
linearly interpolated between lines. Property values associated to horizontal lines are indicated
on the palette from highest to lowest value. Lines corresponding to the begining of the color
can be moved by holding left mouse button. Right-clicking on the palette and pressing the
button Use Local Palette the following menu pops up (see figure 17):

• Set Predefined Palette. A list of palettes available by default:

– 5-color Palette (set by default);


– 7-color Palette;
– Seismic Palette;
– Seismic Horizon Palette;
– Delta Palette.
The palette is zero centered, i.e. property zero value corresponds to the white
color of palette (see figure 2). It is applied for properties varying from negative to
positive values. If property values are positive or negative the palette is not zero
centered;
– Delta Hard Palette.
Zero centered palette with intensive colors (see description of Delta Palette);
– Delta Soft Palette.
Zero centered palette with pale colors (see description of Delta Palette);
– History Matching Analysis Correlation Palette;
– Stacked Plot Palette;
– Grayscale Palette;
– k-Size Random Colors Palette.
It is possible to specify the number of colors in the palette. Colors will be selected
randomly;
– k-Size Random Colors Discrete Palette;
– Dummy Palette.

2.14. Palette 46
19.1

Figure 17. Palette Settings.

• Add Color. Adds a new color at the current position;

• Change Color. Select a new color in the Select Color dialog;

• Delete Color. Deletes a color;

• Edit Palette. Allows to move (up/down) a color boundary (horizontal line denoting a
begining of color identification);

• Edit Colors Simultaneously. Allows to move color boundaries simultaneously;

• Palette regimes:

2.14.1. Local Palette 47


19.1

– Logarithmic Palette. Colors associated with positive parameter values will be


varied logarithmically (all negative parameter values will be set equal to zero). It
is recommended to use this palette for parameters having small values for better
visualization of their distributions;
– Inverted Palette. For a normal palette a region of property maximal values is
marked with red color, while region of minimal values is marked with blue color.
For the inverted palette the region of maximal values will be marked with blue
color and the region of minimal values will be marked with red color;
– Discrete Palette. The number of colors is specified by the option Discretization
Degree (see figure 18). A range of property values (from Min to Max) is subdi-
vided into a number of subranges equal to the number of palette colors. In contrast
to a continuous palette, where each property value corresponds to its shade palette
color for a discrete palette each palette color corresponds to a range of property
values. There is no linear interpolation between palette colors (the color distribu-
tion is analogous to contour lines distribution). In order to return to a continuous
palette untick the option Discrete Palette.

• Reset Zoom. A palette scale can be zoomed in/out by scrolling the mouse wheel
while the mouse cursor is over the palette. To return to a default view you can use the
option Reset Zoom;

• Reset Filter. Resets a filter. To create a filter move the mouse cursor over a palette
while pressing the left mouse button. Filtered colors will appear to the right of palette
while blocks containing corresponding property values become grey (see figure 19);

• Auto Update View. A visualization will be updated simultaneously with changing


palette;

• Display Filter Part. To create a filter move the mouse cursor over a palette while
pressing the left mouse button. Filtered colors will appear to the right of palette while
blocks containing corresponding property values become gray (see figure 19). The cre-
ated range of deleted colors can be moved with cursor while pressing the right mouse
button. In this case the corresponding blocks model will become gray.

• Show Histogram. Histogram is visualized on the palette and shows the number of
blocks having property values in the specified intervals.

– Max Histogram Value. If this option is ticked the maximal number of blocks over
all histogram bars. The number of histogram bars is specified by Bins (see below);
– Show Min and Max Values on Histogram. If this option is ticked minimal and
maximal values of visualized property will be shown on histogram;
– Bins. Specifies the number of intervals (bins) into which the range of property
values is subdivided.

2.14.1. Local Palette 48


19.1

• Auto Update Bounds (Visible Blocks Only).

• Auto Update Bounds (All Timesteps). The minimal (maximal) property value is cal-
culated over all time steps — cumulative minimum (maximum), i.e. property maximum
constantly increases, while a property minimum decreases and palette boundaries con-
stantly expand;

• Auto Update Bounds (Current Timestep). Palette boundaries are specified by minimal
and maximal property values recalculated at each time step;

• Min. Specifies a new minimal property value. It will be available for specification if
automatically update options (see above) are unticked. To automatically recompute a
property minimum right-click on the palette and tick a required automatically update
option;

• Max. Specifies a new maximal property value. It will be available for specification if
automatically update options (see above) are unticked. To automatically recompute a
property maximum right-click on the palette and tick a required automatically update
option;

• Discretization Degree. The number of colors for a discrete palette (see figure 18);

• Use Local Precision. If this option is ticked the precision of values shown on the palette
can be varied.

– Precision. Specify the number of decimal places.

• Use Palette Sign Step. If this option is ticked the step between signs on the palette can
be specified.

– Sign Step. Specify the step between signs on the palette.

2.14.1. Local Palette 49


19.1

Figure 18. Discrete Palette.

2.14.1. Local Palette 50


19.1

Figure 19. Palette Filter.

2.14.1. Local Palette 51


19.1

Figure 20. Stream lines.

2.15. Stream Lines


Streamlines are mathematical abstraction depending on the defined density of streamlines.
Streamlines are calculated based on the computed pressure potential using the particle tracking
method. To get more detailed picture it is necessary to decrease the density of streamlines.
The specifics of the present approach are the following:

• The discrete number of lines will be constructed for the defined rate.
For example, let’s consider the case when 1 streamline corresponds to 5 cubic meters
(i.e. density). For the well with a rate equals to 14 cubic meters 2 streamlines will be
created. The rest 4 cubic meters (14 − 2 × 5) will be considered as corresponding to the
reservoir. This can be seen in a drainage table.

• Tracking based on the pressure potential does not take into account a compound chang-
ing along stream lines.

Stream lines can be displayed in 3D when Show Grid is unchecked. To visualize them,
open the dynamic model, start the calculation, and select StreamLines in the tree under
Dynamic model. During a computation, you can see the stream lines changing.
Stream lines can have different color in accordance with wells (see below). Stream lines
can be visualized only for wells which selected by stream line filter.

2.15. Stream Lines 52


19.1

See examples in the training tutorial SIM2.1. How To Manage Water-


flood.

2.15.1. Creating a Stream Line


The movement of an imaginary particle (e.g. a molecule) of fluid phase (e.g., oil, water, or
gas) is observed during a period of time. The particle’s positions are recorded at time moments
and connected with straight lines. If a streamline starts from an injection well, the movement
of the particle unfolds forward in time; if a streamline starts from a production well, then the
movement of the particle is traced back in time.
A drainage matrix, a drainage graph, or a drainage table (drainage efficiency) are generated
based on stream lines.

2.15.2. Stream lines settings


To change stream line settings, select Stream Lines in the object tree of the visualization
settings panel. The settings will apply automatically as you change them.
Main Parameters.
• Line width is set in pixels.
• Density defines the number of stream lines go from the well (in m 3 per stream line). The
number of stream lines through the facet of block with a connection is calculated by
dividing the fluid flow through the facet by the density. (You can estimate the number
of stream lines by dividing the well’s rate by the density). The increase in the density
leads to the decrease in the shown number of streamlines.
• Trace from – start tracing stream lines from producers or from injectors.
• Phases sets the phases (oil, water, gas) for which the stream lines are to be drawn.
• Use Unique Well Colors overrides all other color specifications and instead draws each
stream line with one single color depending on the well which it is traced from.
• Use Special Color when Grid is Turned Off overrides the specification of the main color
and substitutes it with one of the following variants:
◦ Map Color – color defined by the selected grid property;
◦ Time of Flight Color – color defined by the time of travel of the virtual particle
along the trajectory.
Advanced settings:
• Stop Streamlines in Blocks with Low Outflow forcibly terminates the stream lines com-
ing to the blocks where the flow is lower than signified by one streamline.

2.15.1. Creating a Stream Line 53


19.1

• Flux tolerance is used as follows: if the stream volume flowing through a face of a block
is smaller than the density to the error quotient, there is no stream line running through
the face.

• Max time of flight sets the maximum time of a point’s movement.

• Max points per streamline is the maximum number of a point’s positions recorded for
plotting a trajectory.

• Max nodes per block is the maximum number of a point’s positions within one block that
are recorded for plotting a trajectory.

Recommendation. If stream lines are not long enough (e.g., if a stream line starts from
an injector but does not reach a producer), you can increase the stream line’s life time and the
maximum number of points. In some cases (especially if the well has high productivity and
many connection holes), these parameters have to be increased by several orders of magnitude
in order to have full stream lines.

2.15.2. Stream lines settings 54


19.1

3. Cases

Examples of how to use model cases are shown in training tutorials:

• MD1.2. How To Create And Compare Cases.

• MD1.3. How To Load Rescue And Create Model.

• MD3.1. How To Create Dual Porosity Model.

Cases tab contains general settings of the designed model. Depending on selected defini-
tions, different options are available in the project.

Furthermore, it is possible to define various simulation cases for the current project. See
section Creating different variants of dynamic model for more information. Different grids,
properties, geometry objects, rock and fluid models can se assigned to different cases.

3.1. Dynamic Model Initialization


There are several tabs correspong to different steps of dynamic model initialization:

3.1.1. Runspec
This tab contains the settings that can be defined in RUNSPEC (see 12.1.1) section of .data
file (initial data necessary for oil-and-gas reservoir model specification).
In this tab it is possible to:
• Specify the model type (black oil, compositional, thermal). If none of these types is
selected, black oil case will be initialized.
• Specify the fluids that will be presented in the model (OIL (see 12.1.56), GAS
(see 12.1.57), WATER (see 12.1.58), DISGAS (see 12.1.60), VAPOIL (see 12.1.59),
etc.).
• Request special options (Temperature option, Geomechanical option, Dual Porosity/Dual
Permeability Option, Coal bed methane option, ASP modeling, Asphaltene modeling,
etc.).
• Define dimensions of the tables and number of regions.
• Adjust numerical tuning parameters (for example, keywords RUNCTRL (see 12.19.140),
TNAVCTRL (see 12.1.4), etc.).
In the dynamic model’s properties are defined (i.e. the static objects, fluid and rock models
are assigned to dynamic grid and the schedule is defined) the RUNSPEC section can be
automatically completed via Autofill ruspec button

3. Cases 55
19.1

3.1.2. Grid Properties


This tab contains the grid settings:

• Active cell – in this category it is possible to set the minimal volumetric criteria for ac-
tive blocks (MINDZNET (see 12.2.33), MINPV (see 12.2.30), MINROCKV, see 12.2.35).

• Matrix-fracture coupling – in this category it is possible to set the connection cofficeint


between Matrix and Fracture media for Dual Porosity models (SIGMA (see 12.2.72),
LTOSIGMA (see 12.2.74), SIGMAGD, see 12.2.75).

• PINCH – in this category it is possible to define pinch-out settings (PINCH


(see 12.2.58), PINCHOUT (see 12.2.60), PINCHXY, see 12.2.59).

• Non-neigboring connections – in this category it is possible to define the settings for


connection for non-neighboring blocks (NNC (see 12.2.54), NNCGEN (see 12.2.57),
NONNC, see 12.1.53).

• Initial specification – in this category it is possible to define the exported grid type.
The following Grid Types are available:

– Dx Dy Dz – Orthogonal block-centered geometry. Grid blocks are rectangular with


horizontal top and bottom faces and vertical side faces.
– Coord/ZCorn – Corner-point geometry. Blocks can have various shapes. Corners
of all blocks in one column are located on the same set of guide lines, which are
not necessarily vertical and not necessarily parallel to each other. The positions of
block corners on the guide lines are specified for each block independently and do
not necessarily coincide with those of the neighboring blocks.
– Corners – Grid specified via blocks corners. Blocks can have arbitrary shapes. All
corners of each block are specified separately and independently of each other.
– Mixed – Mixed grid geometry, defined via keywords DX (see 12.2.2), DY
(see 12.2.2) and ZCORN (see 12.2.9).

The detailed description of these options is also provided in tNavigator User Manual in
section 5.5.

! In order to initialize dynamic model, grid geometry must be defined!

3.1.3. Static
This tab is used to define the initial properties of dynamic grid. The following operations
should be done:

• The grid should be selected (if more than one grid are presented in the project).

3.1.2. Grid Properties 56


19.1

• The property should be selected and the corresponding model (geometry object) should
be assigned.

• In dual porosity runs grid properties can be defined separately for Matrix and Fracture
media.

3.1.4. Fluid
In this tab the fluid, rock, and equilibrium models can be assigned to corresponding regions.
The Tables, functions and operations can be defined in Fluid Properties tab.

• KRP – Relative Permeability and Capillary Pressures Tables.


The data should be defined for each Saturation region (i.e. the models should be assigned
to corresponding SATNUM (see 12.4.3) regions).

• PVT – Fluids properties. One PVT model should be defined for each PVT region.

• Initial – Initial equilibrium and Threshold pressures. One Equilibrium model and, if
needed, one Threshold pressure table should be defined for each Equilibration region.

• Rock – Rock compressibility. One Rock Compaction table model should be defined for
each Compaction region.

3.1.5. Aquifer
In this tab it is possible to add aquifer model to the current case:

• Aquifer Geometry should be chosen from geometry objects.

• The corresponding Aquifer Settings should be assigned.

• For dual porosity models it is possible to attach aquifer either to Matrix or to Fracture
media or to both medias simultaneously.

The detailed description of Aquifer Geometry Objects is provided in section 19.

3.1.6. Faults
In this tab it is possible to add faults to the current case. Fault models should be selected from
the project and the corresponding properties should be assigned to each fault. Fault properties
available for specification:

• Transmissibility and Diffusivity Multipliers MULTFLT (see 12.2.39).

• Threshold Pressure THPRESFT (see 12.2.40).

The detailed description of operations with faults is provided in section 20.

3.1.4. Fluid 57
19.1

3.1.7. Selective Writing of Results


In this tab it is possible to set the periodicity of results writing. The following options are
available for timesteps picking:
• All – all timesteps from the selected Strategy (see Schedule).
• First and Last Steps of the Schedule.
• Periodically – the writing periodicity between timesteps can be set by user.
• Custom – The timesteps for results writing can be picked manually from the list.
Different Results Writing periodicity can be set for Graphs and for Grid Properties.

!
The default results writing settings are the following:

• Grid Properties – First and Last Timesteps.

• Graphs – All Timesteps.

Figure 21. Timesteps Selection for Results Writing.

3.1.7. Selective Writing of Results 58


19.1

3.1.8. Schedule
In this tab it is possible to add development strategy to the current case. The Start Date and the
End date can be defined as well. The detailed description well rules and avaliable operations
is provided in sections 33 - 35.6.

3.2. Creating different variants of dynamic model


In one project different variants of a model can be created. Different variants can have dif-
ferent grids, properties. Different variants of a model can be further calculated and obtained
graphs can be compared in Graphs.
It is possible to create a model tree with child and parent models. This feature is imple-
mented for better structuring of multi-variant project. In terms of operations, child models are
equivalent to stand alone case and their calculations do not affect the parent model.
Different cases may exist simultaneously in the same Model Designer project.
All these cases have to be initialized separately by selecting the corresponding
i grid/fluid/rock properties and development strategies previously defined in
the project (see Section Dynamic Model Initialization for details). Thus, the
duplication of existing scenarios does not enhance the project’s size.

Figure 22. Project Structure with multiple cases.

3.1.8. Schedule 59
19.1

3.2.1. Create cases


Right clicking on the case’s name brings up a dialogue with the following options:

• Create new model. A new model case with blank data deck will be created. In order
to initialize dynamic model, static and dynamic properties should be defined (see the
section Dynamic Model Initialization for more information).

• Create new child model. A new child model with blank data deck will be created.
Several child models can be assigned to one parent model.

• Duplicate. All data (grid, properties, wells data, etc.) will be copied to a new model
case.

• Duplicate to child. All data (grid, properties, wells data, etc.) will be copied to a child
model.

• Delete. Option is available only for model variants which are not current.

• Set Current. The selected model variant becomes current allowing to modify it.

• Rename model. The case’s name can be changed.

• Comment. For each case a comment can be added. If Dynamic model is exported from
Model Designer, this comment will appear at the beginning of .data file.

• Remove model. The selected case will be removed from the project. If the case has
child models attached, they will be removed as well.

3.2.1. Create cases 60


19.1

3.2.2. Restart and Forecast models


If the dynamic model is opened and at least one calculation step has been passed, the following
options become available by Right clicking on the case’s name:

• Create Forecast. This option allows to create a forecast model from the current case.
The following properties can be specified:

– Start date of the forecast (any calculated step from initial case can be selected).
– Timestep for forecast model.
– Forecast length or the end date of forecast.
– Wells controls and limits (set separately for Producers, Water Injectors and Gas
Injectors).

The forecast model is a duplicate of initial case, but the schedule will be changed. The
forecast strategy will be created according to settings described above. This strategy
will become available Wells Data tab and can be modified.

• Create model variant from step. This option allows to create a restart model from the
current case. The restart date should be specified (any calculated step from initial case
can be selected). The restart strategy (i.e. the Schedule after the restart date) become
available Wells Data tab and can be modified.

3.2.2. Restart and Forecast models 61


19.1

4. From static to dynamic model


Integrated modeling by tNavigator implies the creation of dynamic model on the base of static
(geological) model in a single seamless working process. Below is the list of checks which
should be paid attention to while preparing the static model, so as to ensure the correctness of
the future dynamic model based upon it.

1. WOC and faults: regions

2. Fault transmissibility, threshold pressure

3. PVT and fluids-in-place

4. Permeabilities and fluids-in-place

5. Initial water saturations

6. Connected components

4.1. WOC and faults: regions


One of the typical issues with geological models arises when there are different depths of
WOC, GOC and/or GWC in different regions of the model which are not separated by imper-
meable faults. As a rule, the problem originates from incorrectly measured contact depths. A
dynamic model based on such data is bound to be ill-posed. Once it is initialized, fluids will
start flowing immediately.
To make the model consistent, it is necessary to introduce faults that would separate the
regions with different contact depths (see figure 23). The observed difference in contact depth
is enough of a justification for the presence of faults, even if not supported by seismic data.
The presence of a fault gives the reservoir engineer a tool for controlling the flow between the
regions with different contact depths. A fault may be assigned any value of transmissibility
multiplier from 0 to 1 (specified in the model by the keyword MULTFLT, see 12.2.39). A
multiplier of 1 means the fault is effectively not there, 0 means an impermeable fault, and
intermediate values mean more or less hindered flow.
A transmissibility multiplier may be conveniently turned to a variable during the uncer-
tainty analysis.
The quality of initialization may be judged by running a calculation without wells for, say,
100 years ahead. A consistent initialization should not have:

• flows between blocks,

• flows between regions,

• changes in the calculated WOC and GOC depths.

4. From static to dynamic model 62


19.1

Figure 23. Introducing faults

!
It would make no sense to run a calculation for much longer timespans (say,
1000 years). Such a calculation will likely provide physically unrealistic re-
sults due to accumulated numeric instability. This does not say anything about
the quality of the model itself.

4.2. Fault transmissibility, threshold pressure


From the geologist’s point of view, different contact depths should be confronted by creating
faults. Once created, the faults may be employed for dynamic model in various ways. Besides
the transmissibility multiplier, the flow between regions may be limited by pressure threshold:

• THPRES (see 12.16.11) specifies threshold pressure between the blocks from different
regions,

• THPRESFT (see 12.2.40) specifies threshold pressure between the blocks from different
sides of a fault.

In both cases, if the pressure difference between the separated blocks is below the threshold,
then there will be no flow between them. If the pressure exceeds the threshold, there will be
flow. At that, the effective pressure difference will be diminished by the threshold value.
To find a reasonable estimate of the threshold pressure, the reservoir engineer should
consult the THPRES report and assume the threshold to exceed the maximum value found
there. The report is printed to the log file when initializing the dynamic model.

4.2. Fault transmissibility, threshold pressure 63


19.1

Figure 24. Setting up pressure threshold for faults

Example

THPRES report
-------------

+=====================+==========+==========+
| from \ to (Bars) | 1 | 2 |
+=====================+==========+==========+
| 1 | 0.0000| 1000.0000|
+=====================+==========+==========+
| 2 | 1000.0000| 0.0000|
+=====================+==========+==========+

4.3. PVT and fluids-in-place


When calculating the fluids-in-place from geological model (see 26.8.1. Calculate Volumetric
Properties) a model with constant oil density is used. On the other hand, hydrodynamic cal-
culations use the more precise approach where all PVT properties are presure-dependent, oil
is compressible, and its properties (density, etc.) depend on the amount of dissolved gas, gas
is also compressible and its properties depend on the amount of vaporized oil in it.
The fluids-in-place calculated from the dynamic model may differ from those obtained
from static model due to the following dependencies:
Vres.
• Oil formation volume factor (Bo = ) depends on pressure.
Vsurf.

4.3. PVT and fluids-in-place 64


19.1

Figure 25. Oil properties depending on pressure

– As the pressure decreases, oil volume goes up (constant content of gas).


– Past the saturation point and below: oil volume decreases due to the liberation of
gas.

• Dissolved gas concentration (Rs ) depends on pressure.

– As the pressure increases, Rs increases too, as more gas gets dissolved in oil.
– Above the saturation pressure, Rs remains constant.

The tNavigator grid properties related to fluids in place are listed in the section
5.10.2. Fluid-in-place tab of tNavigator User Manual.

4.4. Permeabilities and fluids-in-place


Capillary forces define the size of the transition zone between water and oil in the vicinity of
the water/oil contact (WOC).
Scholarly articles seem to be in disagreement over the precise definition of WOC.

• WOC is the point where the capillary forces equal 0.

• WOC is the imaginary surface below which the relative permeability of oil phase equals
0.

• WOC is the imaginary surface above which a well will produce oil, probably mixed
with water, and below just 100% water.

4.4. Permeabilities and fluids-in-place 65


19.1

The lack of consensus on the definition of WOC could have contributed to the confusion over
different WOC values obtained from different wells of the same reservoir.

Oil (connate oil saturation)

Hmin Transition zone

Water (residual oil saturation)

H0 Pure water layer

SW L SWU

Figure 26. Water saturation vs depth

It is recommended to:
• Average WOC over all wells having relatively close measurements, so as to have a
single horizontal surface of WOC.
• Create faults to separate areas with significantly different WOC (see figure 27).

Figure 27. Averaging WOC in one region (left) and separationg regions with faults (right)

4.5. Initial water saturations


Above GOC, the water saturation (SWAT ) should not exceed the minimal water saturation
(SW L ). If the water saturation above GOC exceeds SWCR , then the model is unrealistic. Fluid
flow will start immediately upon initialization. With grid properties calculator you may check
the difference of the calculated SWAT cube and the cubes of minimal (SW L ) or critical (SWCR )
water saturation. These values should be considered together with the GOC depth.
The initialization is detailed in the section 2.3. Initial conditions of tNavigator User Man-
ual. The following options are provided:

4.5. Initial water saturations 66


19.1

Figure 28. Relation between GOC and critical water saturation

• Non-equilibrium initialization
Water and oil saturations (SWAT (see 12.16.14), SOIL, see 12.16.16) are specified
explicitly as grid properties; so is the initial pressure.

• Equilibrium initialization
The user only specifies the contact depths, and the fluid saturations are derived from
those. At that, the cube of initial water saturation might be specified as well (SWATINIT,
see 12.6.65). In this case the capillary pressures are scaled in such a way as to ensure
the specified water stauration. Scaling factor is stored in the PCW grid property. It may
be limited by the keyword PPCWMAX (see 12.6.66). If this keyword is not specified,
incorrect distribution of water saturations might lead to exorbitant values of capillary
pressure.

4.6. Connected components


Minimum pore value (MINPV (see 12.2.30) and related keywords) is a criterion applied to
the blocks so as to speed up the calculation. The blocks having low pore volume are made
inactive and hence not considered in the calculation. If too many blocks are excluded, then the
overall connectivity may suffer. A reservoir will get split into isolated components, and those
which have no well perforations in them will be inaccessible for development (see figure 29).
To check against this situation, there is a calculation called Connected Components. With
this calculation, you may filter the blocks by any property and assign the remaining blocks a
new grid property defined as the index number of the connected component they belong to
(see figure 30).
If there are too many connectivity components, it is recommended to loosen the require-
ment on the minimal pore volume and/or other criteria that make blocks inactive. On the other
hand, if the model genuinely contains non-connected areas without perforations, this tool may
be used to locate and exclude them for faster calculation.

4.6. Connected components 67


19.1

These areas are isolated from the well


and can’t be developed

Figure 29. A model with poor connectivity

Figure 30. Connected components

4.6. Connected components 68


19.1

5. Geometry Objects. Calculations


Geometry objects tab contains all objects, such as Wells, Markers, Horizons, Logs, Grids
and etc. to create geological model from scratch starting from initial data.
In this section the tab Calculations for all objects is described. Data import and export,
creating grid and variograms, interpolations and other operations with all objects are consid-
ered as calculations. In order to calculate any object click on the button (Show list of
calculations for the selected object) on the left of panel. Define settings for calculating the
object and click on the button Apply at the bottom of the Calculations panel.

5.1. Calculations panel buttons


• Apply. Load the file selected by user (e.g. with well trajectories) or execute a command
(e.g. saving the well trajectory file).

• Clear State Undo all changes.

• Autoupdate. If the button Autoupdate is being pressed, after defining the calculation
rule, the property will be recalculated when the parameters included in the rule change.
By default the button Autoupdate is not pressed.

• Close. Close the calculation panel.

• Actual State. Show the dialogue used for calculating the current object. Parameters
used for the calculation will be activated.

5.2. Calculator
The calculator tool is available for the following objects:

• Markers;

• Wells Attributes;

• Logs;

• Horizons;

• 2D-Maps;

• Grid Properties;

• Import With Attributes;

• Blocked Wells.

The calculator window is composed of the following fields:

5. Geometry Objects. Calculations 69


19.1

◦ Result. Resulting name of the generated object;

◦ For 2D maps, the following fields have to be set:

◦ Polygon. This option allows to set a polygon of the project as a boundary for the
generated object;
◦ Grid Properties. Gathers all the parameters which will define the plane grid.
◦ Angle, degree. Angle of rotation of the plane grid.
◦ Min. X/Y, m. Minimum X or Y coordinate in meters.
◦ Length along X/Y, m. Field used to set the minimum length of the plane which will
be generated.
◦ Step along X/Y, m. Field used to set the distance between the plane grid points
along X or Y axis.
◦ Autodetect by. Chose an object in the list if you want to use its size as dimensions
for the plane which will be generated. It is recommended to set this option for
shifting horizons.
◦ Autodetect. Autodetects the size of the object selected in the field Autodetect by.
Fills automatically the Grid Properties fields.

◦ For the logs, the following fields have to be set:

◦ Well log. Sampling method for the created log. The points will be generated with
the same interval as the points defined in the selected well log;
◦ Uniform grid step. Sampling method for the created log. The points will be gen-
erated with the interval specified in the field. The values of the well log will be
affected by interpolation;

◦ For the properties, the following fields have to set:

◦ Grid. Select the static grid for which the property is computed;
◦ Filter. The interpolation is carried out only in the blocks which satisfy the condition
which is set;

◦ Formula. The white field is used to write the formula which will define the object to
generate;

◦ Assistant fields. Gathers the objects that can be used in the formula. Double-click on it to
display the exact syntax in the formula area;

◦ Operators. List of operators that can be used in the formula. All these options can be
entered manually using the keyboard as well as the Operators menu. The following
operations can be performed:

5.2. Calculator 70
19.1

◦ +, -, *, / The value of the resulting property, the depth of the resulting marker, the
value of the resulting log points, the depth of the resulting horizon, the value of the
resulting 2D map will be defined by a sum, a difference, a product or a division;
◦ ˆ Allows to use the power operator in the formula;
◦ >,< Allows to use the comparison operators in the formula;
◦ == This operator has to be used in if conditions as the equal sign (cf.figure 31);

Figure 31. Example of use of the operator == in if conditions

◦ != Allows to use the inequality operator in the formula;


◦ & Allows to use the intersection between two conditions (operator AND);
◦ k Allows to use the union between two conditions (operator OR);
◦ if-then. Condition statements. The right syntax is displayed in the formula field
by clicking on the option in the menu. The ellipsis marks have to be replaced
by the conditions. The left part of the statement (situated between If and Then
and between Elseif and then) is the conditional expression. If this expression is
satisfied, the consequence written after then is performed. If not, the condition
written after else is performed. After the execution of all the branches, control
returns to the point after the endif;
◦ if. Condition statement. 3 fields have to be filled: the first one (delimited by the first
2 comas) is the condition, the second one is the consequence and the third one
corresponds to the else consequence.

◦ Functions. List of functions that can be used in the formula. These functions can either be
entered by hands or selected from the menu. The following functions are available:

5.2. Calculator 71
19.1

◦ min, max, avg. Calculates the minimum, max or the average value of the selected
object;
◦ sum. Calculates the sum of all the values of the selected object;
◦ sin, cos, tan. Calculates the sinus, cosinus or tangente value of each point for each
object;
◦ exp, ln, log10. Calculates the exponential, the natural logarithm, the common loga-
rithm value of each point for each object;
◦ round. Round function rounds the values to the nearest integer;
◦ pow. The pow function returns the first argument raised in the power of the second
( pow(x, y) = xy );
◦ sqrt. Returns the square root of the argument;
◦ avg_by_reg. Available only for properties . This function calculates the average of
any 3D property (corresponding to the first argument of the function) for each de-
fined region (the region property is the second argument). The region 3D property
has to be a discrete property and a discrete template has to be assigned to it;
◦ arand. Available only for properties. Generates a random number from 0 to 1 in
each block.
◦ normalize. Available only for well logs. Scales the distribution from 0 to 1, using
value−minimum
the following formula for each data point: maximum+minimum where maximum et
minimum refer to the maximum et minimum values of the initial distribution;
◦ min_by_wells. Available only for well logs. Returns the minimum value of the se-
lected object for each well;
◦ max_by_wells. Available only for well logs. Returns the maximum value of the
selected object for each well;
◦ avg_by_wells. Available only for well logs. Returns the arithmetic average value of
the selected object for each well;
◦ sum_by_wells. Available only for well logs. Returns the sum of all the values of the
selected object for each well;
◦ shift. Available for well logs. Shifts the well log according to the grid step that is
indicated as a second argument;
◦ shift_md. Available only for well logs. Shifts the well log according to the md value
that is indicated as a second argument;
◦ cumulate. Available only for well logs. Cumulative sum. Returns for each point the
sum of the values of all the upper points of the well log;
◦ is_defined. This Boolean function returns 1 if the argument is defined and 0 if
not. This function is particularly useful in if conditions. Reciprocally, !is_defined
returns 1 if the argument is not defined and 0 if it is defined. The calculation can
be performed for horizons (figure 32), logs (figure 33), properties (figure 34) and
markers (figure 35);

5.2. Calculator 72
19.1

Figure 32. Horizon_isopach is defined as a difference between 2 horizons and corresponds to


the isopach map of the layer Top - Bottom

◦ X. Available only for properties, 2D maps and horizons. Use the X coordinate value
in the formula;
◦ Y. Available only for properties, 2D maps and horizons. Use the Y coordinate value
in the formula;
◦ Z. Available only for properties. Use the Z coordinate value in the formula;
◦ i. Available only for properties, 2D maps and horizons. Use the i index value in the
formula;
◦ j. Available only for properties, 2D maps and horizons. Use the j index value in the
formula;
◦ k. Available only for properties. Use the k index value in the formula;
◦ grid_id. Available only for properties. Use the grid index in the formula. An index
is automatically assigned to each created grid (both main and LGR). The function
which returns this number is grid_id and can be used in the formula;
◦ DX, DY, DZ Available only for properties. Use the block length along X, Y and Z
axis in the formula;
◦ NX, NY, NZ Available only for properties. Use the block number along X, Y and Z
axis in the formula;

5.2. Calculator 73
19.1

Figure 33. Well Section Window displaying the logs. Phit and PermX are displayed. The
calculator window displays the computation of PermX. The operation allows to compute the
permeability log using the porosity: if the porosity well log is defined, the calculator computes
the permeability log according to the formula "exp(porosity*0.006)*24.9". All the other values
are interpolated from the adjacent points

◦ MD. Available only for well logs. Use the measured depth in the formula;
◦ TVD Available only for well logs. Use the True Vertical Depth in the formula;
◦ HEAD_X, HEAD_Y. Available only for well attributes. Use the X or Y coordinate
of the well head in the formula;
◦ LAST_MD, LAST_TVD. Available only for well attributes. Use the MD or TVD
value of the deepest point of the well;

◦ Constants. List of constants that can be used in the formula. The following constants are
available:

◦ PI. Mathematical constant π .


◦ E. Mathematical constant that is the base of the natural logarithm.
◦ U. Undefined value.

5.2. Calculator 74
19.1

Figure 34. A)Display of a 2D map and an empty property. The map does not cover the entire
surface of the grid. B)Property obtained by mapping the 2D map on the property using the
following formula in the calculator tool:
if is_defined (map_2d ("map")) then map_2d ("map")
else 0
endif

5.2. Calculator 75
19.1

Figure 35. Wells Table Window displaying the markers depth value for each well. Top 5,
Top5_filled and Top4 markers are displayed. The calculator window displays the computation
of Top5_filled marker. The computation allows to fill the missing values for Top5 marker: if
the marker Top5 is not defined, the calculator fill the missing point with the expression "Top4
+ 50"

5.2. Calculator 76
19.1

6. Wells
The main instrument for working with wells is Wells Table. It is displayed among the Visual-
ization tabs.
To work with wells in Calculations panel the following possibilities are available:

• Import. Well Trajectories;

• Import. Well Heads;

• Well Symbols;

• Transformations;

• Create Log by Trajectory;

• Export.

Examples of how to import the data are shown in training tutorials:

• GD1.2. How To Import Data.

6.1. Wells Table


For each well, the wells table contains:

• Name;

• Well head coordinates (X, Y, Z);

• UWI;

• Symbol code (see Well Symbols);

• Button {...} with a link to the trajectory;

• Buttons {...} with links to the loaded well logs which are currently selected in the tree
of geometry objects (if any).

Pressing {...} with a link to the trajectory opens the right table with the trajectory of
the given well as the list of points (X, Y, Z, inclination, azimuth) depending on the measured
depth. Pressing the button with the link to a well log opens the corresponding log as a list of
values depending on depth. Repeated pressing hides the data. You may open simultaneously
the trajectories and/or logs for multiple wells, or multiple logs for one well. In that case each

6. Wells 77
19.1

Figure 36. Wells table

column of data will appear in the right table together with its corresponding depths column.
All data can be edited by double-clicking at the table cells.
A table may be filtered by the Well Filter; in that case only the wells contained in
the filter will be shown.
A well may be deleted from the table by pressing Remove Rows. In that case it is
removed from the project permanently and disappears from the visualizations.

6.2. Import. Well Trajectories


Well trajectories can be loaded using the following formats:
• Import. WELLTRACK Format;
• Import. Well Path/Deviation Text Format;
• Import. LAS Format;
• Import. GWTD Format;
• Import. OWX Format;
• Import. MoReS Format;
• Import. Vertical Wells Format;
• Load Wells from Database.
Supported formats of imported well trajectory files are listed below:

6.2.1. Import. WELLTRACK Format


There are two types of WELLTRACK format:
1. For each well the separate table is created. Several well trajectories can be contained
in a file. A well name is specified using the keyword ”welltrack” followed by a well
name. A colon and a wellbore number may be added after a well name.
Trajectory data reading starts when the first number occurred.
Columns are the following:

6.2. Import. Well Trajectories 78


19.1

1.1. X (METRIC: m, FIELD: f t ).


1.2. Y (METRIC: m, FIELD: f t ).
1.3. Z (METRIC: m, FIELD: f t ).
1.4. MD (Measured Depth) (METRIC: m, FIELD: f t ).
A columns order and Z axis orientation can be indicated when loading the files. A well
table is terminated by a comma or a slash /.
Example
welltrack Well_P82
50133.99849282 57365.78811816 3335.08379542 3331.36235500
50131.05636316 57365.30935266 3350.53042953 3346.51853724
50129.97016088 57365.15669689 3356.13983138 3352.01963798
50128.40792386 57364.95680241 3364.20096452 3359.92539399
............................................................;

2. All wells are defined by one table. Columns are:


2.1. Well name.
2.2. X (METRIC: m, FIELD: f t ).
2.3. Y (METRIC: m, FIELD: f t ).
2.4. Z (METRIC: m, FIELD: f t ).
2.5. MD (Measured Depth) (METRIC: m, FIELD: f t ).

Example
Well_P82 50133.99849282 57365.78811816 3335.08379542
3331.36235500
Well_P82 50131.05636316 57365.30935266 3350.53042953
3346.51853724
Well_P82 50129.97016088 57365.15669689 3356.13983138
3352.01963798
................................................ .....
Well_V350 50626.37190988 59306.20715875 3476.42938629
3477.48641053
Well_V350 50625.29074100 59306.09947473 3489.80035778
3490.90156557
Well_V350 50624.10952261 59306.00296529 3504.01549917
3505.16623325
.....................................................

The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

6.2.1. Import. WELLTRACK Format 79


19.1

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.
• Use for Identification. Select whether the wells should be recognized by names or by
UWI.
• File Names. Show full paths of files containing information about the objects in the
format indicated above.
• Add Rows. Add file with trajectory.
• Remove Rows. Delete selected file.
• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.
• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.
• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).
• Well Filter. Define the wells filter name in which loaded wells will be selected.
• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.
• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.
• Apply. Load trajectories of wells from chosen files using activated options.
Additional options can be used:
• Use keywords. Select the format for loading well data. If this option is activated the
first alternative with the keyword ”welltrack” is used, otherwise the second one will be
applied.

6.2.2. Import. Well Path/Deviation Text Format


A file should contain an information about a trajectory for one well. Lines starting from ”#”
symbol are comments. In dialogue there is a possibility to define a line from which the table
will be read.
The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

6.2.2. Import. Well Path/Deviation Text Format 80


19.1

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.

• Input Data Type. This option is used to indicate the type of columns which are available
in the data which will be input. The exact name of the columns can be modified later in
the preview window.

– MD X Y Z. (METRIC: m, FIELD: f t )
– MD DX DY TVD (METRIC: m, FIELD: f t ) where DX, DY are shifts with
respect to the well head, respectively).
– MD INCL AZM (where INCL (inclinometry) is the angle between the current
direction and the vertical; AZIM (azimuth) is the angle in clockwise direction
between the north direction and its projection onto a horizontal plane). MD
(METRIC: m, FIELD: f t ).

6.2.2. Import. Well Path/Deviation Text Format 81


19.1

• Method (available only for MD INCL AZM input data type). Well trajectory con-
struction method based on MD, INCL and AZM data should be chosen. The detailed
description of each method is given in the section Trajectory construction methods.

– Tangential.
– Balanced Tangential.
– Average Angle.
– Radius of Curvature.
– Minimum Curvature.

• Preview:

– Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).
– Comment. Define a comment symbol. Comments start with the determined symbol
and all text following the symbol will be ignored.
– Skip lines. Skip defined number of lines starting from the file beginning.
– Table of trajectories. Names of columns correspond to the format. Names of
columns can be rearranged. Moreover, in the table additional options are avi-
able:
∗ Skip. Ignore a data column.
∗ Skip line. Ignore all row data to the right.

6.2.2. Import. Well Path/Deviation Text Format 82


19.1

Example
# WELL TRACE
# WELL NAME: 1336
# WELL HEAD X-COORDINATE: 9005.36000000
# WELL HEAD Y-COORDINATE: 25888.28000000
# WELL KB: 187.71000000
# WELL TYPE: UNDEFINED
# MD AND TVD ARE REFERENCED (=0) AT KB AND INCREASE DOWNWARDS
# ANGLES ARE GIVEN IN DEGREES
#==================================================
MD X Y Z TVD DX DY AZIM INCL DLS
#==================================================
5.0000000000 9005.3600000 25888.280000 182.71000000
5.0000000000 0.0000000000 0.0000000000 14.000000000
0.2500000000 0.0000000000
50.000000000 9005.4075011 25888.470517 137.71042837
49.999571632 0.0475011024 0.1905165158 14.000000000
0.2500000000 0.0000000000
80.000000000 9005.4550020 25888.661032 107.71109472
79.998905285 0.0950019787 0.3810321248 14.000000000
0.5000000000 0.2500000000
......................................................

6.2.3. Import. LAS Format


This is a standard LAS Format for well trajectory (and log curve). To get the detailed descrip-
tion of the format follow the link.
The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

6.2.3. Import. LAS Format 83


19.1

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.

• MD, X, Y, Z (METRIC: m, FIELD: f t ) (where X, Y, Z are well coordinates).

• MD, DX, DY, TVD (METRIC: m, FIELD: f t ) (where DX, DY are shifts with respect
to the well head).

• MD, INCL, AZIM (where INCL (inclinometry) is an angle between the current di-
rection and vertical; AZIM (azimuth) is an angle in clockwise direction between north
direction and its projection onto a horizontal plane).

The Measured depth MD (METRIC: m, FIELD: f t ) is always present in a file.


The accordance between column names and their content can be set in this dialog box.

6.2.4. Import. GWTD Format


The file can contain several well trajectories. The well name is specified using the keywords
”Well name” or ”Wellname”, or ”Well” followed by a colon symbol and the well name. A
comment can follow after that (name columns in the example above). The trajectory data
reading starts when the first number occurred.
The following types of column names can be set:

1. MD (Measured Depth) (METRIC: m, FIELD: f t ).

2. X (METRIC: m, FIELD: f t ).

3. Y (METRIC: m, FIELD: f t ).

4. Z (METRIC: m, FIELD: f t ).

6.2.4. Import. GWTD Format 84


19.1

The order and Z axis orientation can be chosen when loading.

The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.

Preview. Trajectories table. The column names are in agreement with the format but can
can be rearranged. Moreover, in the table additional options are available:

• Skip. Ignore a data column.

• Skip line. Ignore all row data to the right.

6.2.4. Import. GWTD Format 85


19.1

Example
Well name : P82
MD in Entry point
3335.08379542 50133.99849282 57365.78811816 -3331.36235500
3350.53042953 50131.05636316 57365.30935266 -3346.51853724
3356.13983138 50129.97016088 57365.15669689 -3352.01963798
3364.20096452 50128.40792386 57364.95680241 -3359.92539399

6.2.5. Import. OWX Format


Each row starts from keywords except the header followed by data. Each keyword has several
parameters. The parameter position in the row is strictly determined (i.e. parameter typing
starts from and end up in the particular position in the row).
Possible keywords are:

• WELL, 2WELL, 3WELL, etc., define different well attributes;

• PICK, 2PICK, etc., define different marker features;

• WPERF, 2WPERF, etc., define different perforation data;

• LOG1, LOG2, etc., define different log curve features;

• PLG1, PLG2, etc., define different trajectory features.

Thus, well trajectories, logs, markers, events can be determined in one file.
Wells are identified by the first parameter UWI of the keyword WELL (it exists in PLG1
and LOG1 as well).

6.2.5. Import. OWX Format 86


19.1

Example
Project : my project
Depth Mode : MD
Depth Unit : feet
Distance Unit : feet
Date : 01 Aug 2016

WELL 11111111111111 well-a


2WELL Company LTD well-a 01-11 20 01-Aug-2000 0 0
3WELL 2453895.209 480864.110 40.64190000 -
103.86439000 2453895.209 480864.110
4WELL KB 4714.000 6423.000
5WELL
ELEV KB 4714.000
PICK Mrk-11
2PICK 6344.625 6344.625 -1630.625 42
PICK Mrk-12
2PICK 6151.875 6151.875 -1437.875 1
COMP 1 01-Jun-2000
2COMP N 0.00
WPERF 1 1 6259.000 6288.000
2WPERF0.00 0.00 0.000 0.000 0.000
LOG1 UWI: 11111111111111 Depth:
LOG2 Common: well-a
LOG3 Curve: XXD Run #: Units: API: 10 220 10 01
LOG4 Measr. Depth TVD Depth Log Value Null Value: -999.990
LOG5 6140.000 6140.000 3.534
LOG5 6141.000 6141.000 3.530
LOG5 6142.000 6142.000 3.486
PLG1 UWI: wel1
PLG2 Common: well1 Method: 5
PLG3 Measr. Depth TVD Depth TVDSS Depth X-Offset Y-Offset
PLG4 0.000 0.000 0.000 0.000
PLG4 5380.300 5365.752 -100.797 -26.337
PLG4 5386.090 5371.524 -100.965 -26.764
The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

6.2.5. Import. OWX Format 87


19.1

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.

6.2.6. Import. MoReS Format


The standard load file syntax of MoReS simulator for defining well trajectories is supported.
The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:

• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

6.2.6. Import. MoReS Format 88


19.1

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.

6.2.6. Import. MoReS Format 89


19.1

6.2.7. Import. Vertical Wells Format


The file can contain several well trajectories. The file must contain 4 columns: the well name,
X and Y coordinates and the depth of the last trajectory point (as MD, KB, or TVDSS).
The following types of column names can be set:
1. MD (Measured Depth) (METRIC: m, FIELD: f t ).

2. TVDSS (True Vertical Depth Subsea) (METRIC: m, FIELD: f t ).

3. KB (Kelly Bushing) (METRIC: m, FIELD: f t ).

4. X (METRIC: m, FIELD: f t ).

5. Y (METRIC: m, FIELD: f t ).
The order and Z axis orientation can be chosen when loading.

The following fields and options of Wells Import dialog, common for all the formats, can
be set for this format as well:
• Reload All. Delete earlier loaded trajectories and load new ones. If this option is not
activated loaded trajectories will be added to available ones.

• Use for Identification. Select whether the wells should be recognized by names or by
UWI.

• File Names. Show full paths of files containing information about the objects in the
format indicated above.

• Add Rows. Add file with trajectory.

• Remove Rows. Delete selected file.

• Add Point with Zero MD. Continue well trajectories to the nearest point at XY plane
if the top trajectory point is visually below this plane.

• Invert Z-coordinate (For all formats except Well Path/Deviation and MoReS ones).
It is recommended to activate this option if the loaded trajectories were generated by
the third-party software which has the opposite direction of Z axis. Here Z is directed
downward.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the wells filter name in which loaded wells will be selected.

• Length Units XY (except LAS and MoReS formats). Choose Units System for X and Y
axes. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

6.2.7. Import. Vertical Wells Format 90


19.1

• Length Units Z (except LAS and MoReS formats). Choose Units System for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

• Apply. Load trajectories of wells from chosen files using activated options.
Preview. Trajectories table. The column names are in agreement with the format but can
can be rearranged. Moreover, in the table additional options are available:
• Skip. Ignore a data column.

• Skip line. Ignore all row data to the right.

6.2.8. Load Wells from Database


This calculation is available only via workflows (see 40).
Loading wells from database is done by means of a Python script. An example script is
available upon request. To import from a database with different structure (or any other
source of data, for that matter) the script has to be modified accordingly. The script
must implement methods get_wells() (no arguments, returns the list of well names) and
get_trajectory_arrays(name) (takes well name as an argument, returns a complex data struc-
ture with trajectory).
If a well with the same name already exists in the project, it is not rewritten.

6.3. Trajectory construction methods


The trajectory construction is based on the calculation of coordinate increments of the well
trajectory line segment using the inclinometry and azimuth angles. I1 , A1 denote inclinom-
etry and azimuth for top segment point, respectively and I2 , A2 for bottom segment point,
respectively. The following trajectory construction methods can be implemented:

1. Tangential:

• ∆Z = ∆MD · cos(I1 )
• ∆X = ∆MD · sin(I1 ) cos(A1 )
• ∆Y = ∆MD · sin(I1 ) sin(A1 )

2. Balanced Tangential:

• ∆Z = 21 ∆MD · (cos(I1 ) + cos(I2 ))


• ∆X = 12 ∆MD · (sin(I1 ) · cos(A1 ) + sin(I2 ) · cos(A2 ))
• ∆Y = 21 ∆MD · (sin(I1 ) · sin(A1 ) + sin(I2 ) · sin(A2 ))

3. Averaged Angle:

• ∆Z = ∆MD · cos( 21 (I1 + I2 ))

6.2.8. Load Wells from Database 91


19.1

• ∆X = ∆MD · sin( 21 (I1 + I2 )) · cos( 12 (A1 + A2 ))


• ∆Y = ∆MD · sin( 12 (I1 + I2 )) · sin( 12 (A1 + A2 ))

4. Radius of Curvature:

• ∆Z = ∆MD · sin(I2I2)−sin(I
−I1
1)

• ∆X = ∆MD · (cos(I1 )−cos(I2 ))(sin(A2 )−sin(A1 ))


(A −A )(I −I )
2 1 2 1

• ∆Y = ∆MD · (cos(I1 )−cos(I2 ))(cos(A1 )−cos(A2 ))


(A −A )(I −I )
2 1 2 1

Here, the angles are assumed to be measured in radians. If the angles are measured in
degrees, then the right side of the first expression should be multiplied by 180
π , while
180 180
second and third ones by π · π .

5. Minimum Curvature:

• ∆Z = 12 ∆MD · (cos(I1 ) + cos(I2 )) · RF


• ∆X = 12 ∆MD · (sin(I1 ) cos(A1 ) + sin(I2 ) cos(A2 )) · RF
• ∆Y = 12 ∆MD · (sin(I1 ) sin(A1 ) + sin(I2 ) sin(A2 )) · RF,

where:

• RF = 2 tan(DL/2)
DL ,
• DL = arccos(cos(I2 − I1 ) − sin(I1 ) · sin(I2 ) · (1 − cos(A2 − A1 )))

6.3. Trajectory construction methods 92


19.1

6.4. Import. Well Heads


• Reload all. Delete already loaded well heads and reload new ones. If this option is not
activated the loaded well heads will be added to available ones.

• File Names. Show full paths of files containing information about well heads in the
format indicated below.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).

• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.

• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.

The well head format is defined below:

• Well is the well name;

• X, Y (METRIC: m, FIELD: f t ) X and Y are well head coordinates, respectively;

• KB is the actual elevation above mean sea level (altitude).

Other parameters are further defined:

• Well Filter. Allow to select wells to which the calculation will be applied. If a filter is
not activated a calculation will be applied to all wells.

• Length Units XY. Choose units of length for X axis and Y axis. Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• Length Units Z. Choose units of length for Z axis. Available units are METRIC,
FIELD, LAB. If option Not specified is activated, units are defined by default in
Document. Settings menu.

Example
T-6032 13540732.400 7549405.300 -41.3500
T-6055 13538781.600 7546669.100 -30.7200
T-6066 13534483.400 7543596.400 -30.6700
T-6074 13536838.600 7544463.200 -29.8600
T-5058 13529758.200 7539880.500 -37.1400

6.4. Import. Well Heads 93


19.1

Figure 37. Loading well symbols

6.5. Well Symbols


Well symbols are SVG images associated with certain codes. They may be displayed at well
heads on 2D view, so as to designate the states of the wells.

1. To load images and assign codes to them, select Calculations → Import Symbols for
Wells (or alternatively Document → Import Symbols from the top menu), then press
Add rows, select SVG files (multiple selection is possible), and in the Code column
enter the numbers that the images will be referred by (see figure 37).

2. To assign codes to wells, open the Wells Table and enter the numbers in the Well Codes
column.

3. To make the images appear on 2D view, go to Settings → Wells and check Well
Symbols.

6.6. Transformations
1. Translate Wells Trajectories.

◦ Well Filter. Allows to select wells trajectories which will be shifted. If a filter is not
activated, all wells trajectories will be shifted.
◦ Shift Vector. (METRIC: m, FIELD: f t ) All trajectory’s points of selected well will
be shifted by the specified number of units in each direction.

2. Elongate well trajectories. (The well’s last segment will be extended linearly, with con-
stant inclination and azimuth.)

◦ Well Filter. Allows to select wells trajectories which will be elongated. If a filter is
not activated, all wells trajectories will be elongated.
◦ By Markers. Trajectories will be extended at least till the last existing marker.

6.5. Well Symbols 94


19.1

◦ By Logs. Trajectories will be extended at least till the last measurement point of a
well log.
◦ Add extra length. Trajectories will be extended at least by the specified length.

6.7. Create Log by Trajectory


• Create DLS. Trajectory curvature log DLS (Dogleg severity) will be created.

• Create Azimuth. Azimuth log AZIM will be created. Here, the azimuth is an angle
between tangential to the trajectory vector and X axis.

• Create Inclinometry. Inclinometry log INCL will be created. Here, the inclinometry is
an angle between tangential to the trajectory vector and Z axis.

• Method of Calculation DLS:

– first. The following formula is used:


d
DLS = arccos(sin I1 sin I2 cos(A2 − A1) + cos I1 cos I2 )
∆MD
– second. The following formula is used:
s
A2 − A1 2 I2 − I1 2
   
2∗d
DLS = arcsin sin I1 sin I2 sin + sin
∆MD 2 2

– third. The following formula is used:


s  2
d I1 + I2
(I2 − I1 )2 + sin (A2 − A1 )
∆MD 2

DLS is calculated for each line segment of polygonal chain defining well trajectory. In
these formulae:

– d is the standard interval length (when the system is in METRIC: 30 m, in FIELD:


100 m)
– ∆MD (METRIC: m, FIELD: f t ) is the difference between MD values taken at
top and bottom points of line segment.
– I1 , I2 are the inclinometry angle values taken at top and bottom points of line
segment, respectively.
– A1 , A2 are the azimuth angle values taken at top and bottom points of line segment,
respectively.

• Well Filter. Allow to select wells to which the calculation will be applied. If a filter is
not activated a calculation will be applied to all wells.

6.7. Create Log by Trajectory 95


19.1

6.8. Export
To export a well trajectory in all formats the following options should be defined:

• File name. Define a file name to save well trajectories.

• Well Filter. Allow to export only selected wells trajectories. If a filter is not activated
all wells trajectories will be exported.

• Length Units XY (except LAS and MoReS formats). Choose units of length for X
axis and Y axis. Available units are METRIC, FIELD, LAB. If option Not specified is
activated, units are defined by default in Document. Settings menu.

• Length Units Z (except LAS and MoReS formats). Choose units of length for Z axis.
Available units are METRIC, FIELD, LAB. If option Not specified is activated, units
are defined by default in Document. Settings menu.

Trajectories can be saved in the following formats:

1. GWTD Format.

2. WELLTRACK Format.

3. Well Path/Deviation Format.

4. Well Inclinometry Format.

5. LAS.

The description of different formats and examples of how to use them are given in the
section Import. Well Trajectory.

6.8. Export 96
19.1

7. Markers
In Calculations menu to work with Markers the following options are available:

• Import. Markers

– Text Format
– OWX Format

• Export

– Text format
– Tabular format – Well/Marker Table

• Calculator

• Build Marker by Horizon

• Build Marker by Logs Correlation

7.1. Import. Markers


Two types of formats can be imported in this section:

• Text Format;

• OWX Format;

The import is possible only if well trajectories are loaded.

7.1.1. Text Format


The following options, which are common to all the formats can be set:

• File Names. Show full paths of files containing information about markers.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Displays the file which will be imported.

• Elongate Well Trajectory if necessary. If the markers extend by MD farther than the
end of the well trajectory, the well’s last segment will be extended linearly, with constant
inclination and azimuth.

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

7. Markers 97
19.1

• Input/Depth Units. Define units (METRIC, FIELD, LAB), in which input data will be
loaded. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

For this format, delimiter type, and skip lines options can be set:

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).

• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.

• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.

The marker table is shown below. Column names correspond to the format. Column names
can be rearranged. Moreover, in the table additional options are available:

• Skip. Ignore a data column.

• Skip line. Ignore all row data to the right.

• Elongate Well Trajectory if necessary. If the markers are situated deeper than the end
of the well trajectory, the well last segment will be extended linearly, with a constant
inclination and azimuth.

Table contains:

• Well name;

• Marker name;

• Marker Measured Depth (METRIC: m, FIELD: f t ).

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

Example
1314 CII_top 1349.79
1314 CII_bottom 1363.23
273 CV_bottom 1555.86
273 CIV_bottom 1553.41
272G_PS CII_bottom 1629.06
272G_PS CII_top 1606.81

7.1.1. Text Format 98


19.1

7.1.2. OWX Format


OWX format is the universal format. In this type of file an information about trajectories,
markers, attributes, logs can be defined. The format description is given here. The following
options, which are common to all the formats can be set:

• File Names. Show full paths of files containing information about markers.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Displays the file which will be imported.

• Elongate Well Trajectory if necessary. If the markers extend by MD farther than the
end of the well trajectory, the well’s last segment will be extended linearly, with constant
inclination and azimuth.

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

• Input/Depth Units. Define units (METRIC, FIELD, LAB), in which input data will be
loaded. Available units are METRIC, FIELD, LAB. If option Not specified is activated,
units are defined by default in Document. Settings menu.

7.2. Export
Markers can be exported in two formats:

• Text format;

• Tabular format – Well/Marker Table;

7.2.1. Text format


Markers are exported into a text file, each on a separate line. The line contains well name,
marker type, and marker depth. Under File name specify the full path to the file where all
markers of the model will be exported to. Besides, the output unit system mey be specified.

7.2.2. Tabular format – Well/Marker Table


Markers are exported into a file in the tabular format. Each line contains a well name and the
depths of all markers for that well. The title line explains the order in which the markers of
different types follow. The file can be opened in a spreadsheet application (like Excel).
You may specify:

• File Name

• Well Filter, so that to export only the wells included in the filter.

7.1.2. OWX Format 99


19.1

• Markers, so that to export only the specified types of markers.

• Scale Type — MD or SSTVD.

• Output Units

• Delimiter between the cells in the table.

7.3. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

7.4. Build Marker by Horizon


The markers which are generated using this command are defined as intersection points be-
tween well trajectories and a chosen horizon.

• Result Marker. Name of created marker.

• Well Filter. Select wells trajectories used in the calculation. If a well filter is not selected
all trajectories will be used.

• Horizon. Define the horizon, which will be used for building the markers.

7.5. Build Marker by Logs Correlation


The algorithm automatically calculates a well marker depth using an estimation of well log
curves correlation with source well curves in the vicinity of the source well marker position.
The algorithm allows to find the best correlation of well log curves. Moreover, wells are
included in the algorithm process in parallel way. For each well, except source wells, an
attempt to calculate a marker depth is done. This means that the well marker position is
searched in the vicinity of which a well log curve has the form ”similar” to a form of source
well log curve. The size of neighborhood region (i.e. a depth region) in the vicinity of marker
position is defined in Window. A level of ”similarity” of the log curve form in the defined
depth region is estimated by calculating a correlation coefficient using the following formula:
R
Fk,i (zi + x)Fk, j (z j + x)dx
ck (zi , z j ) = qR qR ,
2 (z + x)dx
Fk,i F 2 (z + x)dx
i k, j j

where:

• Fk,i (z) is the log curve k value of i well at the depth z.

• ck (zi , z j ) is the correlation coefficient for log curve k in the vicinity of the depth zi of
well i and in the vicinity of the depth z j of well j , respectively.

7.3. Calculator 100


19.1

For each well, except source wells, the depth corresponding to the maximum correlation
coefficient is searched in the depth region (defined in Searching Window) in the vicinity
of source marker position. If the correlation coefficient is higher than the threshold value
(Correlation Threshold) then the similarity level is considered to be sufficient enough and
the marker is set at the depth which is the middle of the depth range defined in (Window).
If the marker depth is set for the well then the well is considered to be a source one and the
algorithm process starts again.
In case of several log curves are defined in the Comparison Rule table (see below) the
correlation coefficients are averaged with weights indicated in the table.

(c1 · w1 + ... + cn · wn )
,
(w1 + ... + wn )
where ci are correlation coefficients, wi are weights.
In graphical interface the following parameters can be set:

• Result Marker. Created marker name.

• Result Wells. Wells selected for the building markers algorithm.

• Source Marker. The source marker used for the algorithm. The algorithm searches
target wells log curve regions similar to the log curve region near the source marker.

• Source Wells. Source wells used for the algorithm. Source markers are defined on
source wells. Generally speaking marker can be defined on any well, but only few of
them can be selected as the source one.

• Comparison Rule. Columns:

– Use. Use the defined log curve for building markers.


– Log. Markers will be built on the selected log curve.
– Window. The comparison window is defined by the length of the depth (SSTVD)
range in which the part of selected log curve is set. Other wells log curves will
be compared with the part of selected log curve. The marker depth is the middle
value of the depth range.
– Weight. Weight wi means importance of the i log curve.
– Add Rows. Add a log curve.
– Remove Rows. Delete a log curve.

Options:

• Searching Window. (METRIC: m, FIELD: f t ) The depth range in the vicinity of


maker position of the source well. The marker depth will be searched for any well,
except source wells, in this depth range.

7.5. Build Marker by Logs Correlation 101


19.1

• Correlation Threshold. If the correlation coefficient value is higher than the threshold
value then the similarity is considered to be sufficient to set a marker at the depth found
by the algorithm.

• Nearest Wells Count. Extend the algorithm (i.e. setting markers) to wells, which are
the nearest to source wells.

• Neighborhood Radius. (METRIC: m, FIELD: f t ) The algorithm selects wells located


from source wells not further than defined distance.

• Hard Mode. Define additional limitation on the maximum correlation coefficients se-
lection in order to increase the calculation accuracy. Consider correlation coefficients,
higher than threshold value, for wells located within the defined radius are set on unit
interval. The hard mode equals 0,5 means that the coefficients placed at low part of the
interval (from 0 to 0,5) will be discarded. The hard mode equals 1 means that the well
with the highest correlation coefficient will be chosen.

7.5. Build Marker by Logs Correlation 102


19.1

8. Wells Attributes
Well Attribute is the well numerical characteristic. For each calculated characteristic a 2D
Map is available.
For example, the interpolation method residual for constructing a horizon based on markers
can be calculated as an attribute (cf. 13.4).

8.1. Calculator
New well attributes can be calculated by user formulas. A more detailed information is pro-
vided in the section Calculator.

8.2. Average Log Between Markers


The result of this calculation is the average value of selected well logging data.
• Output:

• Well Attribute. Attribute name obtained by calculation.

• Source Data:

– Well Log. Well log data used to calculate the average log value.
– Top Well Marker. Top well marker is a top boundary of log curve used for the
average value calculation.
– Bottom Well Marker. Bottom well marker is the bottom boundary of log curve
used for the average value calculation. Well log curve is averaged from top to
bottom markers.
– Well Filter. Allow to select wells to which the calculation will be applied. If a
filter is not activated a calculation will be applied to all wells.

• Parameters:

– Well Log Type. Discrete or continuous. Values of Log curve can be discretely
distributed along well’s depth. This means a well can be subdivided by segments
of arbitrary length, along which a Log’s value is constant.
– Scale Type. (METRIC: m, FIELD: f t ) MD or SSTVD.

• Averaging Parameters:

• Averaging Type. A method of calculation of well attribute is defined here. For Discrete
well log type the following methods are available:

– Most of. Frequently occurred value.

8. Wells Attributes 103


19.1

– Median. Median is the value separating the higher half of a data sample from the
lower half.
– Minimum. Minimum value.
– Maximum. Maximum value.
– Arithmetic. Arithmetic average of values.
– Fraction. The ratio of Thickness (see below) to the length of the log curve, which
is distance from top marker to bottom marker.
– Percentage. The ratio of Thickness (see below) to the length of the log curve,
which is distance from top marker to bottom marker in terms of percentage.
– Thickness. The sum of lengths of Log’s segments, in which the Log’s value coin-
cide with value defined in the Facies Code.
• The averaging methods available for continuous log curve are:
– Arithmetic. Arithmetic mean is calculated as:
Ra
f (x)dx
b
|b − a|
– Harmonic. Harmonic mean is calculated as:
|b − a|
Rb dx
f (x)
a

– Geometric. Geometric mean is calculated as:


Rb
ln f (x)dx
a
e |b−a|

– RMS. RMS is computed as:


v  2
u
u Rb b
u f 2 (x)dx  R f (x)dx 
u
ua −a
 
|b − |b −

a| a|
u
t  

– Minimum. Minimum value.


– Maximum. Maximum value.
– Integrate. Integral can be calculated using the formula:
Zb
f (x)dx
a

8.2. Average Log Between Markers 104


19.1

• Cut by Log. Initial log curve values will be ignored on the intervals where the log curve
values are imposed to be zero.

• Cut by Values. Well log data are limited by the following values:

– Min Value. Minimum value.


– Max Value. Maximum value.

• Cut Behaviour. Filter:

– Ignore values. If well log curve values are not in the range (i.e. from Min Value
to Max Value) defined above then we suppose that log data are not defined at all.
– Cut values. Cut well log data higher than the defined maximum and lower than
the defined minimum. Log data value higher than the defined maximum will be
decreased to the maximum, while log data values lower than defined minimum
will be increased to the minimum.

8.2. Average Log Between Markers 105


19.1

9. Logs
In Calculations menu to work with well logs the following possibilities are available:

• Import

– LAS Format
– RFT Format
– OWX Format
– Production Log
– Load Well Logs from Database

• Export

• Calculator

• Logs Calculation

– Generate synthetic
– Upscale Log to Grid
– Create Log by Property
– Create Log by Blocked Wells
– Log Normalization
– Regression
– Mute
– Fill Gaps
– Remove Equals

• Merge Logs

• Linear Regression

• Logs Settings

– Remove Equals
– Resample
– Remove Spikes
– Block/Unblock

Other options are also available by right mouse button click on a log curve in Geometry
Objects/Settings:
• Remove Equals;

9. Logs 106
19.1

• Resample;

• Remove Spikes;

• Block/Unblock.

Examples of how to use Well Logs, Calculator for Well Logs, Comment
Logs and Well Section are shown in training tutorials:

• GD1.3. How To Use Correlation;

• GD1.5. How To Work With Logs.

9.1. Import
Well logs can be loaded in the following formats:

• LAS Format

• RFT Format

• OWX Format

• Production Log

• Load Well Logs from Database

9.1.1. LAS Format


LAS Format is standard format for well log data. For the detailed description of LAS format
follow the link.
Brief description: file consists of several sections. Each section starts from symbol ’∼’.
The main file sections are:

• ∼Well. Well attributes list.

• ∼Curve. Well log curves list. Each line describes one log curve. Well log curves are
presented in the table of the section ∼Ascii. Well log data are defined in the corre-
sponding table column. Depth or time should be written in the first line of the section.
This is the curve argument. The line format is the following: from the beginning to the
first dot the log name should be written; from the first dot to the last colon the measured
unit is defined.

• ∼Ascii. The table shown below contains the well log data. The columns order corre-
sponds to the row order in the section ∼Curve.

9.1. Import 107


19.1

Example
# LAS format log file
# Project units are specified as depth units
#============================================================
∼Version information
VERS. 2.0:
WRAP. NO:
#============================================================
∼Well
STRT .m 1117.8000000 :
STOP .m 1613.6000000 :
STEP .m 0.20000000 :
NULL . -999.250000 :
WELL. 273 : WELL
FLD. : FIELD
DATE. Thursday, November 29 2012 13:40:49 : DATE
UWI. : UNIQUE WELL ID
#============================================================
∼Curve
DEPT .m : DEPTH
IKP .mS/m : IKP
GK .gAPI : GK
NGK .m3/m3 : NGK
DTP . : DTP
BK .ohm.m : BK
Zones . : Zones
GKcut . : GKcut
Agk . : Agk
∼Parameter
#============================================================
∼Ascii
1117.8000000 1117.8000488 -999.250000 -999.250000 0.2099999934
-999.250000 -999.250000 -999.250000 -999.250000
1118.0000000 1118.0000000 -999.250000 -999.250000 0.2099999934
-999.250000 -999.250000 -999.250000 -999.250000
1118.2000000 1118.1999512 -999.250000 -999.250000 0.2099999934
-999.250000 -999.250000 -999.250000 -999.250000
.................................................
To load files it is necessary to define the following parameters:
• Las File Names. Show full paths of files containing information about well logs data
in LAS Format.
• Add Rows. Add a file.

9.1.1. LAS Format 108


19.1

• Remove Rows. Delete a file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Take Well Name From: Allows to set the well name for each curve. The name can be
taken from the Well mnemonic, the UWI mnemonic (Well section in the LAS file), or
directly from the file name;

• Logs with Equal Names: Select the operation to perform when 2 logs present the same
name. Rename option adds a number to the existing name, Overwrite option clears the
previous log and replaces it by the loaded log,Merge option concatenates the values.

• Elongate Well Trajectory if necessary. If the log points extended by MD further than
the end of the well trajectory, the well last segment will be extended linearly, with a
constant inclination and azimuth.

• Depths Omissions. Select the operation to perform when points are missing for some
depth values. Fill With Empty Value adds points with empty values, Fill with 0 option
adds points with 0 values, while Keep option does not add points.

• Do So Even If STEP is 0. When the step indicated in the Well section of the LAS file
is 0, this option can be used to fill the missing points using the minimum step of the
data;

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

9.1.2. RFT Format


RFT (MDT) format file contains the table with the following columns:

• Well name;

• Measured depth (MD);

• Measured pressure data in RFT (MDT) format;

• Date.

Load dialogue allows to choose columns for which data from above mentioned file will
be loaded.

9.1.2. RFT Format 109


19.1

Example
SN-71H1 2511.0 271.33 29.03.2009
SN-71H1 2515.0 271.72 29.03.2009
SN-71H1 2524.0 271.88 29.03.2009
SN-71H1 2537.2 272.78 29.03.2009
SN-81 2517.4 266.55 08.02.2013
SN-81 2517.7 266.57 08.02.2013
SN-81 2523.3 266.89 08.02.2013
SN-82HI 2517.2 264.57 21.03.2013
SN-82HI 2518.9 265.08 21.03.2013
SN-82HI 2523.6 264.97 21.03.2013
SN-82HI 2525.3 265.01 21.03.2013
SN-82HI 2526.8 265.02 21.03.2013
To load a file it is necessary to define the following parameters:

• File Names. Show the full paths of files containing information about measured pressure
data in RFT (MDT) format.

• Add Rows. Add a file.

• Remove Rows. Delete a chosen file from the list.

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).

• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.

• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.

• Date Format. Choose available date format or define arbitrary one.

• Input Units. Choose units system for input data (e.g. METRIC, FIELD, LAB). Avail-
able units are METRIC, FIELD, LAB. If option Not specified is activated, units are
defined by default in Document. Settings menu.

The import file format is defined in the table:

• Well – Well Name;

• Date – Date;

• Depth – Measured depth (MD);

• Pressure – Measured pressure data in RFT (MDT) format.

9.1.2. RFT Format 110


19.1

9.1.3. OWX Format


OWX Format is a universal format. In the OWX format file an information about well trajec-
tories, markers, events, logs can be defined. To get the description of this format follow the
link.

9.1.4. Production Log


Production logs are logs of any property, which are defined by intervals. Each defined interval
admits only one log value. A production log file must contain a well name column, two
columns defining the interval for which the data is available and a column with data values.
Example

Well Top Bot NTG Phit_Core Sg


3 1717.9 1729.9 0.7 0.23 0.87
3 1730 1749.9 0.6 0.25 0.81
3 1760 1765.9 0.4 0.19 0.7
4 1739.6 1787.3 0.8 0.21 0.81

The following parameters have to be set:

• File Names. Complete path to the loaded file;

• Add Rows.

• Remove Rows.

• Log Name. Name of the logs which are contained in the file.

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).

• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.

• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.

• The names of the columns can be set: "Well", "Top" and "Bottom" are present by
default in the list. The log names appear after their definition in the Log Name field
(cf. figure 38).

• Elongate Well Trajectory if necessary. If the log points extend by MD farther than
the end of the well trajectory, the well’s last segment will be extended linearly, with
constant inclination and azimuth.

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

9.1.3. OWX Format 111


19.1

Figure 38. Import a production log calculation. The log names become available in the list
of column names after their definition in the Log Names field.

9.1.5. Load Well Logs from Database


This calculation is available only via workflows (see 40).
Loading well logs from database is done by means of a Python script. An example script
is available upon request. To import from a database with different structure (or any other
source of data, for that matter) the script has to be modified accordingly. The script must im-
plement methods get_well_logs() (no arguments, returns the list of well logs), get_wells
(well_log_name) (takes well log name, returns the list of wells having this log) and
get_args_vals_arrays (well_log_name, well_name) (takes well name and well log name,
returns a complex data structure with log data).

9.2. Export
• LAS Format.

– Output Folder. Define a folder name for saving files of log curves.
– Input Units.

9.1.5. Load Well Logs from Database 112


19.1

9.3. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

9.4. Logs Calculation


The following calculations are available:

• Upscale Log to Grid;

• Create Log by Property;

• Create Log by Blocked Wells

• Log Normalization;

• Regression;

• Remove Equals;

• Generate synthetic;

• Merge Logs;

• Linear Regression;

• Mute;

• Fill Gaps.

9.4.1. Generate synthetic


This computation allows to generate a synthetic velocity curve, synthetic acoustic impedance,
reflection coefficient and interval velocity curves to compare it with the seismic data. The
match can be improved by changing the wavelet parameters.

• Density Log. Choose the density log from the list;

• Sonic Log. Choose the sonic log from the list;

• Time Depth Relation Log. Choose the time-depth log from the list;

• Time Depth Relation Log type. Choose the log type from the list (one way or two way
time);

• Synthetic log. Set the name of the resulting log.

• Well Filter. Set the well filter from the list. The calculation will be performed for the
wells selected in the filter;

9.3. Calculator 113


19.1

• Algorithm. Set the model for the seismic wavelet:

– Ricker. A zero-phase wavelet model which corresponds to the second derivative


of the Gaussian function;

• Length. Length of the displayed window in ms;

• Central frequency. Set the central frequency of the wavelet in Hz;

• Apply. Generates a synthetic seismic, an acoustic impedance, a reflectivity coefficient


and an interval velocity curve.

9.4.2. Upscale Log to Grid


Upscaling well log on a grid is the averaging log well data process. A depth scale is increased
and becomes equal to a block size along Z. Further, in each block a well log curve is smoothed
using the following formula:
n
v(mdk )(mdk − mdk−1 )
∑ ,
k=1 mdn − md0
where:

• k is a well log depth index. In a block k varies from 1 to n.

• md 0 , md n are depth of top and bottom block faces, respectively.

• md k is the kth depth.

• v(md k ) is the log curve value at the depth md k .

User settings:

• Source Log. Choose an available log curve.

• Result Log. Define the calculated log curve name.

9.4.3. Create Log by Property


Log curve values are calculated based on properties defined in blocks and intersected by a
well trajectory. Log depth is considered to be equal to the top point of intersection between
block and curve. The curve value is equal to the property value in this block.

User settings:

• Property. Choose available 3D property;

• Result Log Step. Set the type of object which will be used to define the step of the
computed log:

9.4.2. Upscale Log to Grid 114


19.1

– Use Grid Step. The step of the grid will be affected as sampling step for the
computed log (one point per grid block).
– Set Log Step. The data sampling of the computed log is defined manually in the
field Log Step.
– Use Sample Log Step. The computed log will present data points at the same
locations as a sample log defined in the field Sample Log.

• Log Step. Set the step (in distance units of the project) which will be used to sample
the data in the computed log.

• Sample Log. Define the log which will be used to define the sampling of the data in
the computed log. The computed log will present data points at the same locations as a
sample log. This field is active only if the option Use Sample Log Step is chosen from
the list in Result Log Step field.

• Result Log. Define the name of the computed log.

9.4.4. Create Log by Blocked Wells


This computation allows to create a well log curve using Blocked Wells. The step of the
output well log curve can be set manually, by the grid step or by any existing well log of the
project.

• Grid. Select the grid for which the blocked wells are computed;

• Blocked Wells. Select the blocked wells log for the computation;

• Result Log Step. Setting of the resulting log step:

– Use blocked wells step allows to set the same step as the blocked wells log one,
– Set Log Step allows to set the step manually using the Log Step field,
– Use Sample Log Step allows to set the step of an existing well log, which has to
be specified in the Sample Log field

• Result Log. Name of the resulting log;

• Well Filter. Set the well filter from the list. The calculation will be performed for the
wells selected in the filter;

• Clear Result Log Before Calculation. Clear the resulting object before the computa-
tion.

9.4.4. Create Log by Blocked Wells 115


19.1

9.4.5. Log Normalization


Log curve values are normalized so to scale certain criteria to standard values.
User settings:

• Source Log. Choose an available log curve.

• Result Log. Define the calculated log curve name.

• Method. Choose the normalization method from:

◦ Rescaling (min-max). Log is scaled so as to bring the minimum and maximum


values to (0,1).
◦ Mean. Log is scaled so as to bring the mean value to 0 and the distance between
minimum and maximum to 1.
◦ Standardization. Log is scaled so as to bring the mean value to 0 and the RMS
deviation to 1.

• Use Logs as Min Max Values. The minimum and maximum values are taken from logs.
This computation is very useful if the shale volume has to be computed by the spon-
taneous potential, according to the formula: Vshl = SPSP−SP min
max −SPmin
. Shale and Sands trend
lines can be defined by logs: First, an empty log has to be created and displayed on
the Well Section, then using the Edit Logs menu (Right Panel Buttons), the minimum
trend for the spontaneous potential, and then the maximum trend for the spontaneous
potential log can be drawn on the section. Then, these logs can be used as Min Max
logs in this computation, in order to obtain the Shale Volume (cf. figure 39).

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

• Well Selector. Define a well selector name. The calculation will be performed for the wells
selected by the selector.

9.4.6. Regression
Log curve values are passed though the selected smoothing filter.
User settings:

• Source Log. Choose an available log curve.

• Result Log. Define the calculated log curve name.

• Method. Choose the filter type from:

– Moving Median. A log value is substituted with the median value over an interval
of specified length.
– Moving Average. A log value is substituted with the average value over an interval
of specified length.

9.4.5. Log Normalization 116


19.1

Figure 39. PS log is used as input data. PS clay and PS sand are set as minimum and
maximum logs. The result is the a PS curve.

– Gaussian Smoothing. A log value is substituted by the weighted average of this


and neighboring values; the weights decay with distance as Gaussian function with
specified width.

• Fill Gaps. Interpolate over the points where the original log has no data, if any.

• Well Filter. Define well filter name. Data will be loaded for wells selected using a filter.

• Well Selector. Define a well selector name. The calculation will be performed for the
wells selected by the selector.

9.4.6. Regression 117


19.1

9.4.7. Mute
This computation allows to exclude certain log point from the curve. The log can be muted
above or below certain markers: in this case the log values will be erased outside the indicated
interval. Furthermore, anomalous log values can be excluded or corrected. The anomalous val-
ues have the deviation from the arithmetic mean more than three Sigmas:
log_value < mean − 3σ or log_value > mean + 3σ

Where:

• mean – Arithmetic mean of Log values;

• σ – Standard Deviation of Log Values.

The following options are available:

• Well Filter. Set the well filter from the list. The calculation will be performed for the wells
selected in the filter;

• Well Selector. Define a well selector name. The calculation will be performed for the wells
selected by the selector;

• Source Log. Name of the log used for the computation;

• Result Log. Name of the resulting log;

• Mute Log above marker. Name of the marker above which the selected log curve will be
erased;

• Mute Log below marker. Name of the marker below which the selected log curve will be
erased;

• Find Values Greater than 3*Sigma. Find and replace anomalous log values;

◦ Replace by Undefined Values. Log values with deviation from the arithmetic mean
greater than 3σ will be replaced by Undefined Value;
◦ Replace by 3 Sigma Values. Log values with deviation from the arithmetic mean
greater than 3σ will be replaced by mean ± 3σ .

9.4.8. Fill Gaps


This computation allows to fill the gaps in the log curve with interpolated values.

The following options are available:

• Source Log. Name of the log used for the computation;

• Result Log. Name of the resulting log;

9.4.7. Mute 118


19.1

• Interpolation methods:

◦ Linear. The log values in the gaps will be obtained from Linear interpolation of the
nearest points;
◦ Spline. The log values in the gaps will be obtained from Cubic Spline interpolation
of the nearest points;

• Filters:

◦ Well Filter. Set the well filter from the list. The calculation will be performed for
the wells selected in the filter;
◦ Well Selector. Define a well selector name. The calculation will be performed for
the wells selected by the selector;

9.4.9. Remove Equals


This setting allows to remove equal values from a log curve. If the input log presents a series
of depth points with the same values, only the first point of each series will be preserved in
the output log (cf. figure 40).
The following parameters have to be set:

• Well Filter. Define a well filter name. The calculation will be performed for the wells
selected in the filter;

• Well Selector. Define a well selector name. The calculation will be performed for the
wells selected by the selector;

• Source Log. Choose an available log curve;

• Result Log. Define the calculated log curve name.

9.5. Merge Logs


This computation allows to merge the logs of the project into one log. It can typically be used
during the first steps of the correlation workflow, when there is a need to display all the data
in order to clean it (by deleting or merging the logs).

◦ Result Log. Name of the resulting log;

◦ Clear Result Log Before Merge. Clear the values of the resulting logs before rewriting it
with the calculation;

◦ Source Log. List of the logs used for the computation;

◦ Add Rows. Add a new log to the list;

◦ Remove Rows. Remove the selecting log from the computation;

9.4.9. Remove Equals 119


19.1

Figure 40. Example of an input (Litho) and an output (Remove Equals Results) log for Remove
Equals calculations. The example is done with a discrete type of log, the values which are not
removed are highlighted.

◦ Well Filter. Set the well filter from the list. The calculation will be performed for the wells
selected in the filter;

◦ Merge Type. Merging method.

◦ Ignore. If the selected logs present points located at the same depth, in the resulting
log, these points will be replaced by the values of the first selected log (or of the
resulting log if it is not empty or if the option Clear Result Log Before Merge is
checked);
◦ Merge. If the selected logs present points located at the same depth, in the resulting
log, these points will be replaced by the values of the last selected log;
◦ Overwrite. The last selected log rewrites the resulting one.

9.6. Linear Regression


This computation allows to express a log as a linear combination of defined logs, using a
Cochrane-Orcutt estimation. The result is displayed on the log panel. The resulting formula

9.6. Linear Regression 120


19.1

can then be used to create Grid Properties using the calculator (cf. Figure 41).

Figure 41. Example of Log Regression computation. The log is approximated by 2 log curves
and the resulting formula is displayed on the log panel.

• Well Log to Approximate. Select the well log to approximate;

• Well Filter. Set the well filter from the list. The calculation will be performed for the
wells selected in the filter;

• Input Well Logs. List of the well logs which will be used for the approximation;

• Add Rows. Add a new log to the list;

• Remove Rows. Remove the selecting log from the computation.

9.7. Logs Settings


The followingoptions are available:

• Remove Equals;

• Resample;

• Remove Spikes;

• Block/Unblock.

9.7. Logs Settings 121


19.1

9.7.1. Remove Equals

i This setting is available by right mouse button click on a log curve in Geom-
etry Objects → Settings.
This setting allows to remove equal values from a log curve. If the input log presents a
series of depth points with the same values, only the first point of each series will be preserved
in the output log (see figure 40).

9.7.2. Resample

i This setting is available by right mouse button click on a log curve in Geom-
etry Objects → Settings.
This setting allows to resample the log data according to the interval which is set in the
field Interval. The resampling method depends on the type of the curve:

• Discrete curves. If in Object Settings, the palette of the curve is a discrete one, the data
is assumed to be piecewise constant. Resampled points will present the same values as
the nearest data point to the top (cf. figure 42);

• Continuous curves. If in Object Settings, the palette of the curve is a continuous


one, the values assigned to resampled data points will correspond to linear interpolation
between the two nearest data points (cf. figure 43).

9.7.1. Remove Equals 122


19.1

Well Track
Data Point

Same values of resampled


Resampled values
points for all the interval
between two data points

Data Point

Data Point

Figure 42. Discrete data resampling. The data series is assumed to be piecewise constant.
Resampled points will present the same values as the nearest data point to the top.

9.7.2. Resample 123


19.1

Log values

Linear interpolation between


the nearest data points

Resampled points
Data points

Depth

Figure 43. Continuous data resampling. The resampled data series is assumed to be piecewise
linear, interpolating between the two original data points.

9.7.2. Resample 124


19.1

9.7.3. Remove Spikes

i This setting is available by right mouse button click on a log curve in Geom-
etry Objects → Settings.
This setting allows to remove isolated data points which are likely to be outliers (located
in large intervals without data, etc.; cf. figure 44).

Figure 44. A) Log curve before spike removal. Some isolated points located in intervals
without data are present. B) Log curve after spike removal. Isolated points ("spikes") were
removed.

9.7.3. Remove Spikes 125


19.1

9.7.4. Block/Unblock

i This setting is available by right mouse button click on a log curve in Geom-
etry Objects → Settings.
This setting allows to assume that a log curve is piecewise constant if Block option is
selected. A discrete type of interpolation between the data points is used in this case. If
Unblock Log option is selected, the log is assumed to be continuous between the data points
and a linear interpolation is used.
The interpolation type set in Settings is used for the curve display and also for the property
modeling. (cf. figure 45).

Figure 45. A) Continuous log curve, block log option ticked. The curve is assumed to be con-
tinuous by intervals B) Continuous log curve, unblock log option ticked. A linear interpolation
is used between the points

9.7.4. Block/Unblock 126


19.1

10. Comment Logs


In Calculations menu to work with comment logs the following possibilities are available:

• Import

• Export

Note that this type of logs cannot be used as input data in Calculator, but can be modified
in Well Table Tab and in Well Section Tab.

Examples of how to use Well Logs, Comment Logs and Well Section are
shown in training tutorials:

• GD1.3. How To Use Correlation.

10.1. Import
The files can only be loaded in text format.
Example
Well Top MD Bot MD Comment
29 1720 1731 gas: 5000 m3 water: 2m3
11 1732 1779 gas: 1000 m3 water: 0,5 m3
2 1731 1745 gas: 15000 m3 water: 10m3
2 1762 1773 gas: 5000 m3 water: 3m3
7 1672 1698 gas: 7000 m3 water: 1m3
7 1717 1742 gas: 5000 m3 water: 2m3
20 1695 1710 gas: 1000 m3 water: 1m3
.................................................
To load the files it is necessary to define the following parameters:

• File Names. Show full paths of files containing information about comment logs data
in text Format.

• Add Rows. Add a file.

• Remove Rows. Delete a chosen file from the list.

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).

• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.

10. Comment Logs 127


19.1

• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.

• Merge logs with equal names. If this option is activated new comment logs and already
loaded comment logs will be merged by equal names.
If the new loaded comment log data coincide with existed ones in terms of measured
depth log data from new loaded files with the same depth replace earlier loaded log
data.

• Use OEM encoding. This field is recommended to activate if the loaded file is the old
encoding file (e.g. DOS encoding).

• Well Filter. Define the well filter name. Data will be loaded for wells selected using
the filter.

• Input Units. Choose units system for input data (e.g. METRIC, FIELD, LAB). Avail-
able units are METRIC, FIELD, LAB. If option Not specified is activated, units are
defined by default in Document. Settings menu.

10.2. Export
Comment logs can only be exported in text format. To export the file,the following parameters
must be specified:

• Output folder. Choose the folder in which the file will be exported.

• Well Filter. Define the well filter name. Data will be exported for wells selected in the
filter.

• Input Units. Choose units system for input data (e.g. METRIC, FIELD, LAB). Avail-
able units are METRIC, FIELD, LAB. If option Not specified is activated, units are
defined by default in Document. Settings menu.

10.2. Export 128


19.1

11. Core Sample Images


Core sample images can be uploaded and visualized in Well Section. The following file
format can be loaded:

• BMP (Windows Bitmap)

• GIF (Graphic Interchange Format)

• JPG (Joint Photographic Experts Group)

• JPEG (Joint Photographic Experts Group)

• PNG (Portable Network Graphics)

• PBM (Portable Bitmap)

• PGM (Portable Graymap)

• PPM (Portable Pixmap)

• XBM (X11 Bitmap)

• XPM (X11 Pixmap)

In Calculations, the following options are available:

• Load Core Sample Images by List

• Load Core Sample Images by file name

For more details, see the training tutorial GD1.4. How to Use Core
Sample Images.

11.1. Load Core Sample Images by List


This calculation allows to import a core sample image. To import an image, it is necessary to
build a text file containing the following information:
the well name, the top depth of the image (measured depth), the bottom depth, the com-
plete path to the image.

Each created file generates one item (object) under Core Sample Images in Geometry
Objects.
The following parameters have to be defined:

11. Core Sample Images 129


19.1

• File Name. Complete path to the text file containing the information about the loaded
files;
• Core Sample Images List. Name of the loaded object in Designer project. Each object
can contain several images;
• Add Rows. Add a file.
• Remove Rows. Delete a chosen file from the list.
• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).
• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.
• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.
• Column names can be changed according to the data indicated in the text file.
• Well Filter. Define the well filter name. Data will be loaded for wells included in the
filter.
• Length Units. Choose units system for input data (e.g. METRIC, FIELD, LAB). Avail-
able units are METRIC, FIELD, LAB. If option Not specified is activated, units are
defined by default in Document. Settings menu.

11.2. Load Core Sample Images by file name


This calculation allows to import a core sample image by directly loading the image files.
The name of the picture has to contain the well name and the top and the bottom depth of the
loaded part of the core. A delimiter (underscore, tab, space or semicolon) has to be used.
• File Name. Complete path to the text file containing the information about the loaded
files;
• Add Rows. Add a file;
• Remove Rows. Delete a chosen file from the list.
• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).
• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.
• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.
• Column names can be changed according to the data indicated in the text file.
• Result Core Sample Images List Name. Name of the object in the project which will
contain the loaded files;

11.2. Load Core Sample Images by file name 130


19.1

• Well Filter. Define the well filter name. Data will be loaded for wells selected using
the filter.
• Length Units. Choose units system for input data (e.g. METRIC, FIELD, LAB). Avail-
able units are METRIC, FIELD, LAB. If option Not specified is activated, units are
defined by default in Document. Settings menu.

12. Well Test Info


In this section it is possible to load the data of Formation Production Testing - the phase rates
recorded for certain wellbore intervals. Two calculations are available for this object:
• Load Well Test Info.
• Export Well Test Info.

12.1. Data Import


In the Import preview the following common interface features are available:

• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols).
• Comment. Define a comment symbol. Comments start with the determined symbol. All
comment text following the symbol will be ignored.
• Skip line. Ignore, i.e. do not load, defined number of lines from the begining of the file.
The table contains the records of formation testing. Each column corresponds to one parameter.
Column names can be rearranged.
• Skip. Ignore a data column.
• Skip line. Ignore all row data to the right.

The following parameters should be specified:


• Top – measured depth of the upper interval limit (MDU);
• Bottom – measured depth of the lower interval limit (MDL);
• Gas – gas inflow from the defined interval m3 /day;
• Oil – oil inflow from the defined interval m3 /day;
• Water – water inflow from the defined interval m3 /day;
• Wellbore type. Defined by flag (0 or 1):
◦ 0 – cased wellbore;
◦ 1 – borehole.

12. Well Test Info 131


19.1

12.2. Visualization
The loaded data can be displayed in Well Table.

Well Test Info can be visualized Well Section:

Figure 46. Well Test Info on Well Section.

13. Horizons
In Calculations menu to work with horizons the following possibilities are available:

• Import

– Import. CPS Format


– Import. Horizon ASCII Format
– Import. Surfer 6 GRD (Bin) Format
– Import. Surfer 7 GRD (Bin) Format
– Import. Z-Map Plus Format
– Import. GXF-3 Format

• Export

– Export All Horizons to Horizon Format (ASCII).


– Export Horizon to Horizon Format (ASCII).

12.2. Visualization 132


19.1

– Export Horizon to Surfer 7 Grid Format.

• Calculator

• Interpolation

– Horizons: IDW Method


– Horizons: Kriging
– Horizons: SGS
– Horizons: Least Squares method
– Horizons: Least Squares interpolation (by Point Set)

• Universal Interpolation

• Horizons Adjustment to Markers

– IDW method
– Least Squares method

• Transformations

– Rotate
– Translate
– Smooth
– Pull Up Horizon to Marker

• Auxiliary Calculations

– Create Horizon by Pointset


– Create Horizon by Seismic Horizon
– Crop Horizon by Polygon
– Horizons Merging
– Create Top/Bottom Horizon by Grid
– Create Horizon by Faulted (Multivalued) Horizon
– Create Horizon by Structural Model

• Local Horizon Update

• Local Horizon Update (simple)

13. Horizons 133


19.1

13.1. Import
Horizons can be loaded in the following formats:
• Import. CPS Format
• Import. Horizon ASCII Format
• Import. Surfer 6 GRD (Bin) Format
• Import. Surfer 7 GRD (Bin) Format
• Import. Z-Map Plus Format
• Import. GXF-3 Format

13.1.1. Import. CPS Format


The file is composed of a header describing a grid, NOVALUE marker and a list of horizon
values defined in grid points. The header line with the name FSASCI defines:
1. NOVALUE marker which is the fifth element of the FSASCI line.
Comment. All elements of the FSASCI line are ignored except the fifth element. The line
with the name FSATTR is totally ignored.
The line with the name FSLIMI sets bounds for each axis:
1. Minimum of X (METRIC: m, FIELD: f t ).
2. Maximum of X (METRIC: m, FIELD: f t ).
3. Minimum of Y (METRIC: m, FIELD: f t ).
4. Maximum of Y (METRIC: m, FIELD: f t ).
Comment. Fifth and sixth elements of line with the name FSLIMI are ignored.
The number of grid nodes in X and Y directions, respectively, are indicated in the line
with the name FSNROW. The step length in X and Y directions, respectively, is pointed out
in the line with the name FSXINC. The data array starts from symbol ”–>” followed by the
horizon name.
Example
FSASCI 0 1 ''Computed'' 0 999999.0 0
FSATTR 0 0
FSLIMI 37150.000 42400.000 14950.000 19250.000 448.543 3685.083
FSNROW 106 87
FSXINC 50.00000 50.00000
->Default
1210.440 1210.597 1210.755 1210.914 1211.074 1211.235
1211.397 1211.560 1211.723 1211.888 1212.053 1212.218
1212.384 1212.551 1212.719 1212.888 1213.057 1213.228
.....................................

13.1. Import 134


19.1

The following options, which are common to all the formats can be set:

• File Name. Show full paths of files containing an information about a horizon.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a horizon
value does not exist in the data table.

13.1.2. Import. Horizon ASCII Format


The file is composed of a header and of an array of values. The header describes a grid. The
first line of the header defines the following parameters:

1. Unused parameter.

2. The number of grid nodes in Y direction.

3. Grid step in X (METRIC: m, FIELD: f t ).

4. Grid step in Y (METRIC: m, FIELD: f t ).

In the second line of the header the following parameters are defined:

1. Minimum of X (METRIC: m, FIELD: f t ).

2. Maximum of X (METRIC: m, FIELD: f t ).

3. Minimum of Y (METRIC: m, FIELD: f t ).

4. Maximum of Y (METRIC: m, FIELD: f t ).

The third line of the header defines:

1. Number of grid nodes in the X direction.

2. Rotation angle from the X axis in the counterclockwise direction.

13.1.2. Import. Horizon ASCII Format 135


19.1

Comment. Third and forth parameters in the third line are ignored.
NOVALUE marker is denotes by 99999.0000. An absence of a horizon value in the data
table is marked by the special number 99999.0000. Number values in the array are listed one
by one. The array starts after the line of 7 zeros. Values are listed by rows from bottom to top.
Example
-996 87 50.000000 50.000000
37150.000000 42400.000000 14950.000000 19250.000000
106 0.000000 37150.000000 14950.000000
0 0 0 0 0 0 0
1210.440552 1210.597656 1210.755615 1210.914551 1211.074463
1211.235474
1211.397339 1211.560181 1211.723877 1211.888184 1212.053101
1212.218750
1212.384888 1212.551880 1212.719482 1212.888184 1213.057861
1213.228638
The following options, which are common to all the formats can be set:

• File Name. Show full paths of files containing an information about a horizon.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a horizon
value does not exist in the data table.

13.1.3. Import. Surfer 6 GRD (Bin) Format


It is a binary file format.
The following options, which are common to all the formats can be set:

• File Name. Show full paths of files containing an information about a horizon.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

13.1.3. Import. Surfer 6 GRD (Bin) Format 136


19.1

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a horizon
value does not exist in the data table.

13.1.4. Import. Surfer 7 GRD (Bin) Format


It is a binary file format. The following options, which are common to all the formats can be
set:

• File Name. Show full paths of files containing an information about a horizon.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a horizon
value does not exist in the data table.

13.1.5. Import. Z-Map Plus Format


The symbol ”!” is a comment symbol. The header starts from the first symbol ”@”. The second
symbol ”@” marks the header end and the beginning of the data array/table. In the table all
columns have the same width. The column width is defined in the header. The symbol position
from which the first column starts in each table row is defined in the header as well. Thus, it
is not necessary to use the data delimiter in the table. Moreover, there is a possibility to load
a file without using table parameters by defining a special parameter in the load dialogue.
The columns number is independent from grid counts in X or Y directions. The table is
defined as one dimensional data array. Therefore, the two dimensional array of grid nodes is

13.1.4. Import. Surfer 7 GRD (Bin) Format 137


19.1

converted to one dimensional array using a column order, i.e. the first column of grid array
followed by the second one etc. In particular, the first column corresponds to the column with
minimum I. All columns start from the top, i.e. from the node with maximum J.
The grid size (counts number), boundaries, NOVALUE marker are defined in the header.
There are four lines in the header. Each row consists of several fields. Each field is separated
by comma. The first line contains:

1. File Name.

2. Word GRID.

3. The number of columns in the table.

The second line contains:

1. Column width in the table.

2. NOVALUE marker.

3. String is similar to NOVALUE marker (can be replaced by space).

4. The number of digits after the decimal point (use when all values are integers in
order to keep the space).

5. Symbol number in each line of the table which begins the first column.

The third row contains:

1. Counts number along Y.

2. Counts number along X.

3. Minimum X coordinate. (METRIC: m, FIELD: f t )

4. Maximum X coordinate. (METRIC: m, FIELD: f t )

5. Minimum Y coordinate. (METRIC: m, FIELD: f t )

6. Maximum Y coordinate. (METRIC: m, FIELD: f t )

The forth line contains:

13.1.5. Import. Z-Map Plus Format 138


19.1

Example
! Landmark Zmap grid file name: my_file.dat
! Created/converted by Xxx Xxx, XXX Inc.
@ my_file.dat, GRID, 4
20, 1.0E+30, , 7, 1
208, 435, -630000.0000, 672000.0000, 2000000.0000,
2621000.0000,
0.0000, 0.0000, 0.0000,
@
45.5158691 70.0117188 78.3193359 78.5185547
92.6440430 96.5151367 97.1289063 103.1782227
110.9963379 120.7421875 137.1284180 162.2819824
191.4841309 218.0258789 228.3671875 204.8771973
150.1228027 82.9328613 30.0051270 7.5603027
This format has Advanced settings.
• Ignore table structure. First and fifth parameters of the header second line are ignored.
Then the table data are separated by space and start from the first line symbol.

• Grid nodes enumeration:

– Listed by. The method of ”scattering” the table values across the grid nodes. Two
methods are available: ”scattering” by Columns and Rows.
– Start node. The grid node starting from which the table values will be scattered
across the grid nodes. There are four approaches: Top left, Bottom left, Top right,
Bottom right.

13.1.6. Import. GXF-3 Format


The grid is described by the set of keywords. Each keyword starts with # symbol. The data
corresponding to the keyword are given in one or several lines (depends on the keyword)
following the line with this keyword. Other lines will be ignored up to the next keyword.
Thus, even if there is no a symbol comment comments can exist in the file.
The minimal list of keywords must include the following keywords:
• #POINTS – counts number in X direction.

• #ROWS – counts number in Y direction.

• #GRID – array of grid values.


The following options, which are common to all the formats can be set:

• File Name. Show full paths of files containing an information about a horizon.

• Add Rows. Add file.

13.1.6. Import. GXF-3 Format 139


19.1

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a horizon
value does not exist in the data table.

Other parameters are optional:


To define the grid it is necessary to describe the grid rectangle. Parameters have default
values. The rectangle is set using the following keywords:

• #PTSEPARATION – step size along X coordinate (is 1 by default).

• #RWSEPARATION – step size along Y coordinate (is 1 by default).

• #XORIGIN – X coordinate of the left bottom corner of the grid (is 0 by default).

• #YORIGIN – Y coordinate of the left bottom corner of the grid (is 0 by default).

• #ROTATION – rotation angle of the rectangle side along the X axis in the counterclock-
wise direction in degrees (is 0 by default).

• #DUMMY – NOVALUE marker (not defined by default).

• #SENSE – defines the method of converting a two dimensional array into one dimen-
sional.

The array can be compressed using base-90 method. Compression parameters are defined
by the keyword #GTYPE.

13.1.6. Import. GXF-3 Format 140


19.1

Example
===========================================
This is a comment area which is ignored by GXF readers.
===========================================
#POINTS
6
#ROWS
4
#PTSEPARATION
12.5
#RWSEPARATION
12.5
#XORIGIN
1750000.0
#YORIGIN
4250.0
#ROTATION
0.0
#UNIT_LENGTH
''ftUS'', 0.3048006096012
#MAP_PROJECTION
''NAD27 / Ohio North''
''NAD27'',6378206.4, 0.082271854, 0
''Lambert Conic Conformal (2SP) '', 40.4333333333, 41.7,
39.6666666667,
82.5, 609601.22
#MAP_DATUM_TRANSFORM
''NAD27 to WGS 84 (6)'', -8, 159, 175, 0, 0, 0, 1
#GRID
0 1 2 3 4 5
10 11 12 13 14 15
20 21 22 23 24 25
30 31 32 33 34 35

13.2. Export
Export a horizon to a file. There are several possibilities defining in Export to save horizons:

• Export All Horizons to Horizon Format (ASCII).

• Export Horizon to Horizon Format (ASCII).

• Export Horizon to Surfer 7 Grid Format.

13.2. Export 141


19.1

Choosing the first option allows to save all available horizons and the second one allows
to save the selected horizon.

13.2.1. Export All Horizons to Horizon Format (ASCII).


• Output Folder. Define the folder name where all horizons will be saved.

• Default Value. Special value indicating that the horizon in not defined in this place.

• Output Units. Define units (METRIC, FIELD, LAB) in which output data will be
saved.

13.2.2. Export Horizon to Horizon Format (ASCII).


• File Name. Define the folder/file name in which a horizon will be saved.

• Horizon. Define a horizon name for saving.

• Default Value. Special value indicating that the horizon in not defined in this place.

• Output Units. Define units (METRIC, FIELD, LAB) in which output data will be
saved.

13.2.3. Export Horizon to Surfer 7 Grid Format.


• File Name. Specify the folder/file name in which a horizon will be saved;

• Horizon. Select a horizon name for saving;

• Default Value. Special value indicating that the horizon in not defined in this place;

• Input Units. Specify units (METRIC, FIELD, LAB) in which output data will be saved;

• Invert Z-coordinate. It is recommended to activate this option if the exported horizon


is used in the third-party software which has the opposite direction of Z axis. Here Z
axis is directed downward.

13.3. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

13.2.1. Export All Horizons to Horizon Format (ASCII). 142


19.1

13.4. Interpolation
In the Designer for horizons the following interpolation methods are implemented:

• Horizons: IDW Method

• Horizons: Kriging

• Horizons: SGS

• Horizons: Least Squares method

• Horizons: Least Squares interpolation (by Point Set)

13.4.1. Horizons: IDW Method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer Inverse Dis-
tance Weighting (IDW) method.

To interpolate a horizon the following parameters should be defined:

• Output. Horizon. Name of the resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with the
well and the marker corresponding to the well. The map is shown in the Well attributes
list.

• Source data:

– Well Marker (except Least Squares interpolation (by Point Set)). Choose an avail-
able marker for interpolation of its values.
– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend Horizon. Based on the horizon trend a new horizon will be built. Let’s
the function T (x, y) denotes a trend horizon, (xi , yi , zi ) are the coordinates of each
marker. Denoting D(x, y) as a function obtained by interpolation of ”residual”
between the marker and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi )
are interpolated. Thus, the new horizon is the result of adding the function D(x, y)
to the trend function T (x, y): D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.

13.4. Interpolation 143


19.1

– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,


FIELD: f t ).
– Length along X. Horizon’s length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option. Notice that this
option is not available for Least Squares interpolation (by Point Set).

• Autodetect by. Chose an object in the list if you want to use its size as dimensions for
the plane which will be generated.

• Autodetect. Automatic detection of horizon boundaries. Using maximum and minimum


X and Y coordinates of wells and horizon’s boundaries (if the option Trend Horizon
is activated) a minimum square rectangle is built and rotated by defined angle with
respect to the X axis. The obtained rectangle contains all markers and trend. Further, the
rectangle extends to the value defined by XY Margin in each direction, i.e. the value is
added to maximum coordinates and subtracted from minimum coordinates.
If the option Use Perforations is available and activated then for building a rectangle
the perforation intervals of wells will be only taken into account.

• Other Parameters. Power Parameter. This parameter is used in the formula of the
Multilayer IDW method.

13.4.2. Horizons: Kriging


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Kriging.

To interpolate a horizon the following parameters should be defined:

• Output. Horizon. Name of the resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with the
well and the marker corresponding to the well. The map is shown in the Well attributes
list.

13.4.2. Horizons: Kriging 144


19.1

• Source data:

– Well Marker (except Least Squares interpolation (by Point Set)). Choose an avail-
able marker for interpolation of its values.
– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend Horizon. Based on the horizon trend a new horizon will be built. Let’s
the function T (x, y) denotes a trend horizon, (xi , yi , zi ) are the coordinates of each
marker. Denoting D(x, y) as a function obtained by interpolation of ”residual”
between the marker and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi )
are interpolated. Thus, the new horizon is the result of adding the function D(x, y)
to the trend function T (x, y): D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon’s length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option. Notice that this
option is not available for Least Squares interpolation (by Point Set).

• Autodetect by. Chose an object in the list if you want to use its size as dimensions for
the plane which will be generated.

• Autodetect. Automatic detection of horizon boundaries. Using maximum and minimum


X and Y coordinates of wells and horizon’s boundaries (if the option Trend Horizon
is activated) a minimum square rectangle is built and rotated by defined angle with
respect to the X axis. The obtained rectangle contains all markers and trend. Further, the
rectangle extends to the value defined by XY Margin in each direction, i.e. the value is
added to maximum coordinates and subtracted from minimum coordinates.
If the option Use Perforations is available and activated then for building a rectangle
the perforation intervals of wells will be only taken into account.

13.4.2. Horizons: Kriging 145


19.1

Other Parameters define a specific of interpolation method:

• Kriging Type. Define a type of Kriging, which will be used to interpolate a horizon.

– Simple.
– Ordinary.
– Universal.

• Variogramm. It is possible to choose an available variogram for the interpolation. If


there is no variogram it is necessary to create one. A variogram can be built using the
shortcut Go To Variogram Properties. Use the tab Data Analysis to define variogram’s
parameters.

13.4.3. Horizons: SGS


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation (SGS) method.

To interpolate a horizon the following parameters should be defined:

• Output. Horizon. Name of the resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with the
well and the marker corresponding to the well. The map is shown in the Well attributes
list.

• Source data:

– Well Marker (except Least Squares interpolation (by Point Set)). Choose an avail-
able marker for interpolation of its values.
– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend Horizon. Based on the horizon trend a new horizon will be built. Let’s
the function T (x, y) denotes a trend horizon, (xi , yi , zi ) are the coordinates of each
marker. Denoting D(x, y) as a function obtained by interpolation of ”residual”
between the marker and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi )
are interpolated. Thus, the new horizon is the result of adding the function D(x, y)
to the trend function T (x, y): D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.

13.4.3. Horizons: SGS 146


19.1

– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,


FIELD: f t ).
– Length along X. Horizon’s length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).
• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
• Use Perforations. See below the description of Autodetect option. Notice that this
option is not available for Least Squares interpolation (by Point Set).
• Autodetect by. Chose an object in the list if you want to use its size as dimensions for
the plane which will be generated.
• Autodetect. Automatic detection of horizon boundaries. Using maximum and minimum
X and Y coordinates of wells and horizon’s boundaries (if the option Trend Horizon
is activated) a minimum square rectangle is built and rotated by defined angle with
respect to the X axis. The obtained rectangle contains all markers and trend. Further, the
rectangle extends to the value defined by XY Margin in each direction, i.e. the value is
added to maximum coordinates and subtracted from minimum coordinates.
If the option Use Perforations is available and activated then for building a rectangle
the perforation intervals of wells will be only taken into account.
Other Parameters define a specific of interpolation method:
• Variogramm. It is possible to choose available variogram for interpolation. If there is
no variogram it is necessary to create it. To do this Go To Variogram Properties. Use
tab Data Analysis to define variogram’s parameters.
• Kriging Radius. (METRIC: m, FIELD: f t )
• Kriging Points.
• Random number.

13.4.4. Horizons: Least Squares method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Least Squares method.

To interpolate a horizon the following parameters should be defined:

13.4.4. Horizons: Least Squares method 147


19.1

• Output. Horizon. Name of the resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with the
well and the marker corresponding to the well. The map is shown in the Well attributes
list.

• Source data:

– Well Marker (except Least Squares interpolation (by Point Set)). Choose an avail-
able marker for interpolation of its values.
– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend Horizon. Based on the horizon trend a new horizon will be built. Let’s
the function T (x, y) denotes a trend horizon, (xi , yi , zi ) are the coordinates of each
marker. Denoting D(x, y) as a function obtained by interpolation of ”residual”
between the marker and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi )
are interpolated. Thus, the new horizon is the result of adding the function D(x, y)
to the trend function T (x, y): D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon’s length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option. Notice that this
option is not available for Least Squares interpolation (by Point Set).

• Autodetect by. Chose an object in the list if you want to use its size as dimensions for
the plane which will be generated.

• Autodetect. Automatic detection of horizon boundaries. Using maximum and minimum


X and Y coordinates of wells and horizon’s boundaries (if the option Trend Horizon
is activated) a minimum square rectangle is built and rotated by defined angle with

13.4.4. Horizons: Least Squares method 148


19.1

respect to the X axis. The obtained rectangle contains all markers and trend. Further, the
rectangle extends to the value defined by XY Margin in each direction, i.e. the value is
added to maximum coordinates and subtracted from minimum coordinates.
If the option Use Perforations is available and activated then for building a rectangle
the perforation intervals of wells will be only taken into account.

The smoothness of the interpolated horizon can be improved by varying coefficients in the
range [0.01, 100] (see formula of LSM).

• Coefficients:

– First Derivative.
– Second Derivative.

• Advanced settings. If this check box is checked additional option Grid refinement will
be available. The choice of this option allows to improve an accuracy of the horizon
interpolation, however, increases a computational time. An interpolation is carried out
Refinement Steps number of times. At initial interpolation step the number of points in
X and Y directions is defined:

– Start Count of Points by X.


– Start Count of Points by Y.

At the first interpolation step it is recommended to use a rough grid, i.e. the number of
points in X and Y directions should be minimal. At each iteration the number of points
in X and Y directions increases in such way that after defined number of iterations
(steps) the final number of points becomes equal to the number of the horizon points.

13.4.5. Horizons: Least Squares interpolation (by Point Set)


To interpolate a horizon the following parameters should be defined:

• Output. Horizon. Name of the resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with the
well and the marker corresponding to the well. The map is shown in the Well attributes
list.

• Source data:

– Well Marker (except Least Squares interpolation (by Point Set)). Choose an avail-
able marker for interpolation of its values.
– Well Filter. Use only markers corresponding to wells defined in the filter.

13.4.5. Horizons: Least Squares interpolation (by Point Set) 149


19.1

– Trend Horizon. Based on the horizon trend a new horizon will be built. Let’s
the function T (x, y) denotes a trend horizon, (xi , yi , zi ) are the coordinates of each
marker. Denoting D(x, y) as a function obtained by interpolation of ”residual”
between the marker and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi )
are interpolated. Thus, the new horizon is the result of adding the function D(x, y)
to the trend function T (x, y): D(x, y) + T (x, y).
• Grid Properties:
– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon’s length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).
• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
• Use Perforations. See below the description of Autodetect option. Notice that this
option is not available for Least Squares interpolation (by Point Set).
• Autodetect by. Chose an object in the list if you want to use its size as dimensions for
the plane which will be generated.
• Autodetect. Automatic detection of horizon boundaries. Using maximum and minimum
X and Y coordinates of wells and horizon’s boundaries (if the option Trend Horizon
is activated) a minimum square rectangle is built and rotated by defined angle with
respect to the X axis. The obtained rectangle contains all markers and trend. Further, the
rectangle extends to the value defined by XY Margin in each direction, i.e. the value is
added to maximum coordinates and subtracted from minimum coordinates.
If the option Use Perforations is available and activated then for building a rectangle
the perforation intervals of wells will be only taken into account.
• Source data:
– Point Set. Each point has its (x, y, z) coordinates. The points are similar to the
markers, but they are not connected with any well. Therefore, there is no possibil-
ities to choose a well filter. As for the rest this option is the same as described in
the Least Squares method.

13.4.5. Horizons: Least Squares interpolation (by Point Set) 150


19.1

• Advanced settings. If this check box is checked additional option Grid refinement
will be available. The choice of this option allows to improve an accuracy of horizon’s
interpolation, however, increases a computational time. An interpolation is carried out
Refinement Steps number of times. At initial interpolation step the number of points in
X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the number of
points in X and Y directions should be minimal. At each iteration the number of points
in X and Y directions increases in such way that after defined number of iterations
(steps) the final number of points becomes equal to the number of horizon’s points.

Comment. If the point set (Point Set) defines grid nodes then it is recommended to use
the option Create Horizon by Pointset.

13.5. Universal Interpolation


This computation allows to create a new horizon by interpolation of well markers, point sets,
horizons, polygons, vertical faults. The following parameters have to be set:

◦ Output. Name of the resulting object;


◦ Residual. Source Points Set - Residual Attribute. Name of the point set which will
contain the residual attributes. For each computation, a point set is generated with a
point set attribute containing the residual value. If the interpolation is performed using
several objects, a point with a residual value will be created for each object point;
◦ Source Data. Definition of the objects which will be used for the interpolation. Add
Rows option allows to add a new file. Well Filters allows to select an existing well
filter to exclude wells from the computation (see Well filter for more information).
Seam with least squares option allows to extend the faults to the boundary of the
object or to another fault, using the least square interpolation in the vicinity of the
faults. First, the points near this extension are considered (by the chosen method or
the least-squares method if the option is checked), then the stitch points are used to
independently interpolate the parts. It leads a gap where there was a fault and cross-
linking where it was extended. In some cases, the stitching looks better if you use the
least-squares method to interpolate the stitch points.
◦ Trend. The new object will be created according to the trend values. Let’s the function
T (x, y) denotes the trend, (xi , yi , zi ) are the coordinates of each object used for the
interpolation. Denoting D(x, y) as a function obtained by interpolation of the ”residuals”
between the objects and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi ) are
interpolated. Thus, the new object is the result of adding the function D(x, y) to the
trend function T (x, y): D(x, y) + T (x, y);

13.5. Universal Interpolation 151


19.1

◦ Grid Properties :
• Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.
• Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
• Length along X. Object length along X axis (METRIC: m, FIELD: f t ).
• Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
• Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
• Length along Y. Object length along Y axis (METRIC: m, FIELD: f t ).
• Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect option.


◦ Autodetect by. Chose an object in the list to use its size as dimensions for the plane which
will be generated.
◦ Autodetect. Automatic detection of boundaries. Using maximum and minimum X and
Y coordinates of the selected object in Autodetect by field and a minimum square
rectangle is built and rotated by the defined angle with respect to the X axis. The
obtained rectangle contains all markers and trend. Further, the rectangle extends to the
value defined by XY Margin in each direction, i.e. the value is added to maximum
coordinates and subtracted from minimum coordinates.
◦ Boundary Polygon. Allows to use a polygon as boundary for the resulting object;
◦ Interpolation type. For more information about interpolation algorithms, see Interpolation
Algorithms
For SGS, the following fields have to be filled:
• Variogramm. It is possible to choose available variogram for the interpolation. If
there is no variogram it is necessary to create one. To do this, the shortcut Go To
Variogram Properties can be used, or open the Data Analysis tab.
• Kriging Radius. (METRIC: m, FIELD: f t )
• Kriging Points.
• Random number.
For the Least Square method: the smoothness of the interpolated horizon can be im-
proved by varying coefficients in the range [0.01, 100] (see the formula of LSM). The
following fields have to be filled:

• Coefficients:

13.5. Universal Interpolation 152


19.1

– First Derivative.
– Second Derivative.
• Advanced settings. If this check box is checked additional option Grid refine-
ment will be available. The choice of this option allows to improve the interpola-
tion accuracy, however, increases a computational time. An interpolation is carried
out Refinement Steps number of times. At the initial interpolation step the number
of points in X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the number
of points in X and Y directions should be minimal. At each iteration the number
of points in X and Y directions increases in such way that after defined number of
iterations (steps) the final number of points is the same as the number of points of
the resulting object.

For the Kriging, the following parameters have to be set:


• Kriging Type. Define the type of Kriging, which will be used to interpolate the
object.
– Simple.
– Ordinary.
– Universal.
• Variogramm. It is possible to choose an available variogram for the interpolation.
If the project does not contain variograms, it is necessary to create one. A vari-
ogram can be built using the shortcut Go To Variogram Properties, or use the
Data Analysis tab.
For the IDW method,the following field has to be set:

• Power Parameter. This parameter is used in the formula of the Multilayer IDW
method.

◦ Limit by Z. Allows to set a limit to the maximum and minimum depth of the resulting
horizon.

13.6. Horizons Adjustment to Markers


In some cases the built horizon does not pass through markers. In such case you can try
to eliminate residuals. The procedure of building the new horizon is similar to the building
horizon based on the trend horizon: values zi − T (xi , yi ) defined in (xi , yi ) are interpolated,
where T (x, y) is a trend function and (xi , yi , zi ) are marker coordinates. Finally, the trend
horizon will be shifted by obtained values.
Two correction methods are available:

13.6. Horizons Adjustment to Markers 153


19.1

• IDW method;

• Least Squares Method.

13.6.1. IDW method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer IDW method.

To adjust a horizon the following parameters should be defined:

• Output Horizon. Name of resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with
the well and the marker corresponding to the well. The map is shown in the list Well
attributes.

• Source data:

– Input Horizon.
– Well Marker. Choose available marker for interpolation of its values.
– Well Filter.

• Other Parameters. Power Parameter. This parameter is used in the formula of the
Multilayer IDW method.

13.6.2. Least Squares method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Least Squares method.

To adjust a horizon the following parameters should be defined:

• Output Horizon. Name of resulting horizon.

• Residual. The residual map between an intersection point of the created horizon with
the well and the marker corresponding to the well. The map is shown in the list Well
attributes.

• Source data:

– Input Horizon.
– Well Marker. Choose available marker for interpolation of its values.
– Well Filter.

13.6.1. IDW method 154


19.1

Coefficients providing a smoothness of adjusted horizon are defined (see formula of LSM)
and varied in the range [0.01, 100].
• Coefficients:
– First Derivative.
– Second Derivative.
• Discrepancies elimination:
– Iterations.
– Coefficient. At each iteration of algorithm the derivative coefficients are modified
by multiplying by this coefficient.

13.7. Transformations
The following options are available:
• Rotate
• Translate
• Smooth
• Pull Up Horizon to Marker

13.7.1. Rotate
It is possible to rotate a horizon by defined angle around the point.
• Output. Horizon. Choose a modifying horizon.
• Point (the horizon will be rotated around this point):
– X. (METRIC: m, FIELD: f t )
– Y. (METRIC: m, FIELD: f t )
• Angle, degrees. Horizon rotation angle.

13.7.2. Translate
All horizon points are shifted in the same direction by the same distance.
• Output. Horizon. Choose a modifying horizon.
• Shift vector:
– X. Shift all horizon points in the X direction by the defined number of units of
length (METRIC: m, FIELD: f t ).
– Y. Shift all horizon points in the Y direction by the defined number of units of
length (METRIC: m, FIELD: f t ).

13.7. Transformations 155


19.1

13.7.3. Smooth
The algorithm allows to smooth a selected horizon surface. If a rectangle is defined as:

X0 6 x 6 X1 ,Y0 6 y 6 Y1

and the regular grid is defined on the rectangle as:

pi j , i = 1, . . . , N, j = 1, . . . , M.

Let H is a horizon function defined on the two dimensional grid pi j and hi j is the horizon
value in the grid node pi j .

• Input Horizon. Smoothing horizon name.

• Output Horizon. Name of resulting horizon.

• Method:

– Moving average. Smoothed horizon H̃ is defined on the same grid with the fol-
lowing values:
h
h̃i j = ∑ Nklkl .
|p −p |<R ij kl

Here Nkl is a grid nodes number located within the circle of the radius R (dialogue
parameter) with the center at the point pi j , i.e. Nkl = ∑ 1
|pi j −pkl |<R

– Splines. First, the coarse grid with step in x , y directions equal to the radius
(dialogue parameter) is constructed. Then, the horizon H1 is defined on the coarse
grid based on H values defined on the coarse grid nodes. The smoothed horizon
H̃ is calculated using the bicubic spline interpolation based on H1 values defined
on coarse grid nodes.

• Radius. (METRIC: m, FIELD: f t )

13.7.4. Pull Up Horizon to Marker


The algorithm allows to modify a horizon locally by pulling it to the selected marker.

• Result Horizon. Name of resulting horizon.

• Source Horizon. Name of source horizon.

• Well Marker. Selected marker name which the horizon is pulled to.

• Well Filter. Use markers corresponding to the wells selected in the filter.

• Radius of Changing. (METRIC: m, FIELD: f t ) Modify a horizon within the defined


radius of the circle with the center at the marker projection point on the source horizon.

13.7.3. Smooth 156


19.1

• Pulling Type:

1. Simple Pulling. Horizon points in the vicinity of the pulling point (i.e. the point
of the marker projection on the source horizon) is pulled to the marker by distance
calculated as:

(2d 3 − 3d 2 + 1)h p,
where:
– d is the distance from the horizon’s point to the nearest marker point divided
by the radius (Radius of Changing). If the distance d is larger than the radius
then the horizon’s point will be excluded from the algorithm.
– h is the nearest to the horizon point marker depth.
– p is Power parameter defined in graphical interface. It determines the ob-
tained horizon curvature in the area bounded by radius.
2. IDW Interpolation.
– Power parameter. This parameter is used in the formula of the Multilayer
IDW method.
3. Least Squares Interpolation. The list of parameters is common for described
above.

13.8. Auxiliary Calculations


The following options are available:

• Create Horizon by Pointset

• Create Horizon by Seismic Horizon

• Crop Horizon by Polygon

• Horizons Merging

• Create Top/Bottom Horizon by Grid

• Create Horizon by Faulted (Multivalued) Horizon

• Create Horizon by Structural Model

13.8.1. Create Horizon by Pointset


If the point set (Point Set) defines grid nodes then it is recommended to use this option.

• Output. Horizon. Name of resulting horizon.

• Source Data. Point Set. Set of points which will be used to build the horizon.

13.8. Auxiliary Calculations 157


19.1

13.8.2. Create Horizon by Seismic Horizon


This option allows to convert a surface in time (seismic horizon) into a surface in depth, using
check-shot data. The following parameters must be specified:

• Output. Horizon. Name of resulting horizon.

• Log. Check-shot log which will be used to build the horizon.

• Log Type. Define the log type (one way ot two-way time).

• Well Filter. Selection of the well filter containing all the wells with check-shot data
which will be used in the computation.

• Seismic. Selection of the seismic data used for the picking.

• Seismic Horizon. Selection of the seismic horizon which will be converted in depth.
The object has to be a 3D correlated horizon (not picked lines).

13.8.3. Crop Horizon by Polygon


An initial horizon will be cut with the Polygon boundaries.

• Output. Result Horizon. Define the name of resulting horizon.

• Source Data:

– Input Horizon. Select a horizon for modification.


– Polygon. Choose the existed polygon as a boundary of a new horizon.

13.8.4. Horizons Merging


This computation allows to generate new horizons using existing horizons and polygons. This
calculation allows for example to build fluid contacts for models with faults (the contact is
located at different depths in different regions of the model).
The following parameters must be defined:

• Horizon. Name of the resulting horizon;

• Geometry Source. Select the type of object which will be used for the map generation.
You can create a horizon by using already existing horizons or by entering any Z-value;

• Horizon. This field is only active when horizon is selected as Geometry Source. Se-
lection of the corresponding map;

• Z-value. This field is active if the selected Source Geometry is Z-Value;

13.8.2. Create Horizon by Seismic Horizon 158


19.1

• Polygon. In order to assign the horizon depth values or the constant Z-value to an area
located inside or outside a closed polygon, a polygon can be used;

• Inside/Outside. Indicate if the map or Z value has to be assigned inside or outside the
polygon area;

• Grid Properties.

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. Corresponds to the angle between the X axis and the border of the con-
structed grid. In order to set an automatic value computed from an object, the
icon on the right has to represent a closed padlock. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
– Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
– XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
– Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

13.8.5. Create Top/Bottom Horizon by Grid


This calculation allows to create top or bottom horizons based on grid.
The following parameters must be defined:

• Result Horizon. Name of the resulting horizon;

• Grid. Select a grid, for which the horizon will be created;

• Horizon Type. Select a horizon type from the following dropdown list:

– Top.
– Bottom.

13.8.5. Create Top/Bottom Horizon by Grid 159


19.1

• Grid Properties.

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. Corresponds to the angle between the X axis and the border of the con-
structed grid. In order to set an automatic value computed from an object, the
icon on the right has to represent a closed padlock. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
– Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
– XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
– Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

13.8.6. Create Horizon by Faulted (Multivalued) Horizon


This calculation is designed for creation of regular 2D grids based on (Faulted Horizons).
The following parameters should be defined:

• Output horizon. The name of output horizon;

• Faulted Horizon. Select the name of a faulted horizon to be used for grid creation.
Generally, a faulted horizon is defined on an arbitrary 2D grid. A faulted horizon can be
interpolated using Least-Squares method on a regular 2D grid in the XOY surface. For
an interpolation it might be required to define a trend horizon (e.g. from seismic data);

• Grid Step Divider. Define this parameter to control the approximation of initial horizon
by the regular 2D grid. The higher values of this parameter the higher accuracy.

13.8.6. Create Horizon by Faulted (Multivalued) Horizon 160


19.1

13.8.7. Create Horizon by Structural Model


This computation allows to create a horizon by horizons created in the Structural Model (cf.
Structural Model)

• Structural model. Select the structural model;

• Use. Tick to use the horizon in the computation;

• Model Horizon. Select the structural model for the computation;

• Target Horizon. Name of the resulting horizon in the project;

• Autodetect. Select all the horizons of the structural model.

13.9. Local Horizon Update


This calculation allows to update a horizon locally in the selected region. The calculated hori-
zon and two polygons (inner and outer) are specified. The region bounded by inner polygon is
removed and interpolation based on new data is carried out. The buffer zone (region between
inner and outer polygons) provides smooth coupling of the updated part of horizon in the
inner polygon with the rest part of it.

• Result Horizon. Name of locally updated horizon;

• Residual. Source Points Set - Residual Attribute. Name of the point set which will
contain the residual attributes. For each computation, a point set is generated with a
point set attribute containing the residual value. If the interpolation is performed using
several objects, a point with a residual value will be created for each object point. These
values can be visualized in 2D;

◦ Source Points Set.


◦ Residual Attribute.

• Source Horizon. Select a horizon that will be locally updated;

• Well Marker. Select a marker that will be used for interpolation;

• Well Filter. Allows to select an existing well filter to exclude wells from the computation
(see Well filter for more information);

• Inner Bounding Polygon. Select a polygon that bounds a horizon region to be updated;

• Outer Bounding Polygon. is used to create a buffer zone in oder to provide a smooth
coupling of updated part of horizon with the rest part of it;

13.8.7. Create Horizon by Structural Model 161


19.1

• Trend. The new object will be created according to the trend values. Let’s the function
T (x, y) denotes the trend, (xi , yi , zi ) are the coordinates of each object used for the
interpolation. Denoting D(x, y) as a function obtained by interpolation of the ”residuals”
between the objects and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi ) are
interpolated. Thus, the new object is the result of adding the function D(x, y) to the
trend function T (x, y): D(x, y) + T (x, y);

• Interpolation Type. More detailed information about interpolation methods is given in


Interpolation Algorithms

◦ IDW. For IDW interpolation method the following parameter should be set:
• Power Parameter. This parameter is used in the formula of the Multilayer
IDW method.
◦ Kriging. For the Kriging, the following parameters have to be set:
• Kriging Type. Define the type of Kriging, which will be used to interpolate
the object.
– Simple.
– Ordinary.
– Universal.
• Variogram Parameters.
– Variogram type. It is possible to choose an available variogram for the
interpolation.
– Sill. Height of the near-straight-line section of the curve. The value can
be entered in the corresponding field or the cursor can be moved to fit the
experimental variogram curve to the points;
– Nugget Effect. Value of the variogram at the origin. The nugget effect
can be due to measurement errors or to variations at microscales (inferior
to the sampling distances). The value can be entered in the corresponding
field or the cursor can be moved to fit the experimental variogram curve
to the points.
– Range Main. Starting point of the near-straight-line section of the curve
displaying the variogram build along the main direction (given by the
azimuth). Corresponds to the point where the curve has reached 95% of
the sill. The value can be entered in the corresponding field or the cursor
can be moved to fit the experimental variogram curve to the points;
– Range Normal. Starting point of the near-straight-line section of the curve
displaying the variogram build along the normal direction (orthogonal to
the main one). Corresponds to the point where the curve has reached
95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points;

13.9. Local Horizon Update 162


19.1

– Range Vertical. Starting point of the near-straight-line section of the


curve displaying the variogram build along the vertical direction. Cor-
responds to the point where the curve has reached 95% of the sill. The
value can be entered in the corresponding field or the cursor can be moved
to fit the experimental variogram curve to the points.
– Azimuth. Sets the azimuth of the main anisotropy direction (angle be-
tween the direction and X axis). This estimation can be based on the
result obtained by 2D variogram computation. The azimuth has to be
chosen in order to accurately characterize the variability;
– Dip. Sets the dip for the vertical variogram computation;
• Take from variogram. Variogram parameters will be taken from existed var-
iogram for the selected property.
◦ Least Squares: the smoothness of the interpolated horizon can be improved by vary-
ing coefficients in the range [0.01, 100] (see the formula of LSM). The following
fields have to be filled:
• Coefficients:
– First Derivative.
– Second Derivative.
• Advanced settings. If this check box is checked additional option Grid re-
finement will be available. The choice of this option allows to improve the
interpolation accuracy, however, increases a computational time. An inter-
polation is carried out Refinement Steps number of times. At the initial
interpolation step the number of points in X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the
number of points in X and Y directions should be minimal. At each iteration
the number of points in X and Y directions increases in such way that after
defined number of iterations (steps) the final number of points is the same as
the number of points of the resulting object.
◦ SGS. For SGS, the following fields have to be filled:
• Variogram Parameters.
– Variogram type. It is possible to choose an available variogram for the
interpolation.
– Sill. Height of the near-straight-line section of the curve. The value can
be entered in the corresponding field or the cursor can be moved to fit the
experimental variogram curve to the points;
– Nugget Effect. Value of the variogram at the origin. The nugget effect
can be due to measurement errors or to variations at microscales (inferior
to the sampling distances). The value can be entered in the corresponding

13.9. Local Horizon Update 163


19.1

field or the cursor can be moved to fit the experimental variogram curve
to the points.
– Range Main. Starting point of the near-straight-line section of the curve
displaying the variogram build along the main direction (given by the
azimuth). Corresponds to the point where the curve has reached 95% of
the sill. The value can be entered in the corresponding field or the cursor
can be moved to fit the experimental variogram curve to the points;
– Range Normal. Starting point of the near-straight-line section of the curve
displaying the variogram build along the normal direction (orthogonal to
the main one). Corresponds to the point where the curve has reached
95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points;
– Range Vertical. Starting point of the near-straight-line section of the
curve displaying the variogram build along the vertical direction. Cor-
responds to the point where the curve has reached 95% of the sill. The
value can be entered in the corresponding field or the cursor can be moved
to fit the experimental variogram curve to the points.
– Azimuth. Sets the azimuth of the main anisotropy direction (angle be-
tween the direction and X axis). This estimation can be based on the
result obtained by 2D variogram computation. The azimuth has to be
chosen in order to accurately characterize the variability;
– Dip. Sets the dip for the vertical variogram computation;
• Take from variogram. Variogram parameters will be taken from existed var-
iogram for the selected property.
• Kriging Radius. (METRIC: m, FIELD: f t )
• Kriging Points.
• Random number.

13.10. Local Horizon Update (simple)


This calculation allows to update a horizon locally in the selected region. The calculated
horizon and a polygon bounded the region are specified. The region inside the polygon is
removed and interpolation based on new data is carried out.

• Result Horizon. Name of locally updated horizon;

• Residual. Source Points Set - Residual Attribute. Name of the point set which will
contain the residual attributes. For each computation, a point set is generated with a
point set attribute containing the residual value. If the interpolation is performed using
several objects, a point with a residual value will be created for each object point. These
values can be visualized in 2D;

◦ Source Points Set.

13.10. Local Horizon Update (simple) 164


19.1

◦ Residual Attribute.

• Source Horizon. Select a horizon that will be locally updated;

• Well Marker. Select a marker that will be used for interpolation;

• Well Filter. Allows to select an existing well filter to exclude wells from the computation
(see Well filter for more information);

• Boundary Polygon. Select a polygon that bounds a horizon region to be updated;

• Fade To Border. provides smooth coupling of locally updated region of horizon with the
rest part of it;

• Interpolation Type. More detailed information about interpolation methods is given in


Interpolation Algorithms;

◦ IDW. For IDW interpolation method the following parameter should be set:
• Power Parameter. This parameter is used in the formula of the Multilayer
IDW method.
◦ Kriging. For the Kriging, the following parameters have to be set:
• Kriging Type. Define the type of Kriging, which will be used to interpolate
the object.
– Simple.
– Ordinary.
– Universal.
• Variogram Parameters.
– Variogram type. It is possible to choose an available variogram for the
interpolation.
– Sill. Height of the near-straight-line section of the curve. The value can
be entered in the corresponding field or the cursor can be moved to fit the
experimental variogram curve to the points;
– Nugget Effect. Value of the variogram at the origin. The nugget effect
can be due to measurement errors or to variations at microscales (inferior
to the sampling distances). The value can be entered in the corresponding
field or the cursor can be moved to fit the experimental variogram curve
to the points.
– Range Main. Starting point of the near-straight-line section of the curve
displaying the variogram build along the main direction (given by the
azimuth). Corresponds to the point where the curve has reached 95% of
the sill. The value can be entered in the corresponding field or the cursor
can be moved to fit the experimental variogram curve to the points;

13.10. Local Horizon Update (simple) 165


19.1

– Range Normal. Starting point of the near-straight-line section of the curve


displaying the variogram build along the normal direction (orthogonal to
the main one). Corresponds to the point where the curve has reached
95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points;
– Range Vertical. Starting point of the near-straight-line section of the
curve displaying the variogram build along the vertical direction. Cor-
responds to the point where the curve has reached 95% of the sill. The
value can be entered in the corresponding field or the cursor can be moved
to fit the experimental variogram curve to the points.
– Azimuth. Sets the azimuth of the main anisotropy direction (angle be-
tween the direction and X axis). This estimation can be based on the
result obtained by 2D variogram computation. The azimuth has to be
chosen in order to accurately characterize the variability;
– Dip. Sets the dip for the vertical variogram computation;
• Take from variogram. Variogram parameters will be taken from existed var-
iogram for the selected property.
◦ Least Squares: the smoothness of the interpolated horizon can be improved by vary-
ing coefficients in the range [0.01, 100] (see the formula of LSM). The following
fields have to be filled:
• Coefficients:
– First Derivative.
– Second Derivative.
• Advanced settings. If this check box is checked additional option Grid re-
finement will be available. The choice of this option allows to improve the
interpolation accuracy, however, increases a computational time. An inter-
polation is carried out Refinement Steps number of times. At the initial
interpolation step the number of points in X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the
number of points in X and Y directions should be minimal. At each iteration
the number of points in X and Y directions increases in such way that after
defined number of iterations (steps) the final number of points is the same as
the number of points of the resulting object.
◦ SGS. For SGS, the following fields have to be filled:
• Variogram Parameters.
– Variogram type. It is possible to choose an available variogram for the
interpolation.

13.10. Local Horizon Update (simple) 166


19.1

– Sill. Height of the near-straight-line section of the curve. The value can
be entered in the corresponding field or the cursor can be moved to fit the
experimental variogram curve to the points;
– Nugget Effect. Value of the variogram at the origin. The nugget effect
can be due to measurement errors or to variations at microscales (inferior
to the sampling distances). The value can be entered in the corresponding
field or the cursor can be moved to fit the experimental variogram curve
to the points.
– Range Main. Starting point of the near-straight-line section of the curve
displaying the variogram build along the main direction (given by the
azimuth). Corresponds to the point where the curve has reached 95% of
the sill. The value can be entered in the corresponding field or the cursor
can be moved to fit the experimental variogram curve to the points;
– Range Normal. Starting point of the near-straight-line section of the curve
displaying the variogram build along the normal direction (orthogonal to
the main one). Corresponds to the point where the curve has reached
95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points;
– Range Vertical. Starting point of the near-straight-line section of the
curve displaying the variogram build along the vertical direction. Cor-
responds to the point where the curve has reached 95% of the sill. The
value can be entered in the corresponding field or the cursor can be moved
to fit the experimental variogram curve to the points.
– Azimuth. Sets the azimuth of the main anisotropy direction (angle be-
tween the direction and X axis). This estimation can be based on the
result obtained by 2D variogram computation. The azimuth has to be
chosen in order to accurately characterize the variability;
– Dip. Sets the dip for the vertical variogram computation;
• Take from variogram. Variogram parameters will be taken from existed var-
iogram for the selected property.
• Kriging Radius. (METRIC: m, FIELD: f t )
• Kriging Points.
• Random number.

13.10. Local Horizon Update (simple) 167


19.1

14. 2D-Maps
In 2D Maps menu to work with maps the following possibilities are available:

• Import
• Calculator
• Crop 2D Map by Polygon
• Voronoi Regions 2D Map by Markers
• Volumetric Maps
• Export
– 2D-Map ASCII Format
– Surfer 7 Grid Format
• Interpolation
– 2D Maps: IDW Method
– 2D Maps: Kriging
– 2D Maps: SGS Method
– 2D Maps: Least Squares method
• 2D Map Adjustment to Wells Attributes
– IDW method
– Least Squares method
• Universal Interpolation
• Transformations
– Rotate
– Translate
• Auxiliary Calculations
– 2D Map by Property
– Azimuth Map by Polygons
– Thickness Map by Horizons
– 2D-Maps Merging
– Create Isochores by Structural Model
• 2D Distance Calculation

14. 2D-Maps 168


19.1

14.1. Import
2D Maps can be loaded in the following formats:

• Format:

– CPS Format;
– 2D map ASCII Format;
– GRD Format.

Formats with the same names for horizons and 2D Maps are identical. Descriptions of
corresponding formats and file examples are presented in the section Horizons.Import.

• File Name. Show full paths of files containing an information about a 2D Map.

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of file lines shown in the Preview window.

• NOVALUE. Special marker (equals 99999 by default) is used to indicate that a 2D Map
value does not exist in the data table.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

14.2. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

14.3. Crop 2D Map by Polygon


In this calculation a map is cropped by the specified polygon, leaving just the undefined values
outside.
The following parameters are specified:

• Output. 2D Map. Name of resulting 2D Map.

• Source Data:

◦ 2D Map.
◦ Polygon by which it will be cropped.

14.1. Import 169


19.1

14.4. Voronoi Regions 2D Map by Markers


Voronoi Regions is the domain decomposition approach. The map is decomposed to regions
(according to the selected initial points number) in such way that the boundary between two
neighboring regions is perpendicular to the line connecting initial points (domain centers) and
crosses this line in the middle.

As initial points wells (their projections on the 2D map) can be used (e.g. to estimate
resources in the well area (well resources in the Voronoi region), or well drainage regions).

The description of this option for the dynamic model see in the training
tutorial SIM4.6. How To Use Voronoi Diagrams.

In this calculation as initial points markers are used (regions are built based on marker
depths). Based on marker projections on the plane the Voronoi Regions 2D Map is built. This
map can be used to create a horizon without an interpolation

• Output. 2D Map. Name of resulting Voronoi Regions 2D Map.


• Source Data:
◦ Marker. Marker based on which the Voronoi Regions 2D Map will be built.
◦ Well Filter. Use markers corresponding to the wells selected in the filter.
• Dimensions:
◦ Count of Points by X. Grid nodes number in the X direction.
◦ Count of Points by Y. Grid nodes number in the Y direction.
• Bounds:
◦ Minimal X Coordinate. Minimum X coordinate of the map (METRIC: m, FIELD:
f t ).
◦ Maximal X Coordinate. Maximum X coordinate of the map (METRIC: m, FIELD:
f t ).
◦ Minimal Y Coordinate. Minimum Y coordinate of the map (METRIC: m, FIELD:
f t ).
◦ Maximal Y Coordinate. Maximum Y coordinate of the map (METRIC: m, FIELD:
f t ).
• Autodetect. Automatic detection of map boundaries. Based on maximum and minimum X
and Y coordinates of marker projections, respectively, the minimum square rectangle is
built with its sides parallel to the OX and OY axes and containing marker projections.
• Use Radius. Maximum radius of one region (METRIC: m, FIELD: f t ).

14.4. Voronoi Regions 2D Map by Markers 170


19.1

14.5. Volumetric Maps


This calculation prepares the 2D volumetric maps of fluids-in-place. For calculation details
see 26.8.1. Calculate Volumetric Properties.
The parameters are grouped into several tabs.
Source Data
• General
parameters are:
◦ Roof (optional)
◦ Gas-Oil Contact (optional)
◦ Water-Oil Contact (optional)
◦ Gas-Water Contact (optional)
◦ Base (optional)
◦ Porosity (you may either enter a constant or select an existing grid property)
◦ NTG (you may either enter a constant or select an existing grid property)
• Saturations
Water, oil, and gas saturations (you may either enter a constant or select an existing grid
property)
• Oil
Oil properties (for each one you may either enter a constant or select an existing grid
property):
◦ FVF
◦ RS
◦ Oil Recovery Factor
◦ Oil Density
• Gas
Gas properties (for each one you may either enter a constant or select an existing grid
property):
◦ FVF
◦ RV
◦ Gas Recovery Factor
◦ Gas Density

Note that the 2D volumetric maps can be calculated even on a model not
i having a grid. In this case, naturally, the properties above can be specified
only as constants and not as grid properties.

14.5. Volumetric Maps 171


19.1

Output
On this tab you may specify the output maps for any of the following properties. The
properties are calculated separately for zones:

• Entire model zone;

• Oil+gas zone;

• Oil zone;

• Gas zone.

For all zones the following maps are available:

• Geometric volume;

• Net volume;

• Pore volume;

• HCPV (hydrocarbon pore volume).

For oil zone there are following additional maps:

• STOIIP (Stock Tank Oil Initially In Place);

• STOIIP (Mass);

• Associated gas;

• Recoverable oil;

• Recoverable gas (Mass);

For gas zone there are following additional maps:

• GIIP (Stock Tank Gas Initially In Place);

• GIIP (Mass);

• Associated Liquid;

• Recoverable gas;

• Recoverable gas (Mass);

For the definitions of volumes, see figure 74.


Volumetric maps, as well as any other maps, can be summarized in statistic tables by
region or for the whole field, see Create Table from Map.

14.5. Volumetric Maps 172


19.1

14.6. Export
2D-Map can be exported into the file using one of the following formats:

• 2D-Map ASCII Format

• Surfer 7 Grid Format

14.6.1. 2D-Map ASCII Format


• File Name. File name for the 2D map export.

• 2D-Map. 2D-Map which will be exported.

• Default Value. Special number marker is used to indicate that a map value does not exist
in the data table.

• Output Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

14.6.2. Surfer 7 Grid Format


• File Name. File name for the 2D map export.

• 2D-Map. 2D-Map which will be exported.

• Default Value. Special number marker is used to indicate that a map value does not exist
in the data table.

• Output Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

• Invert Z-coordinate. It is recommended to activate this option if the exported 2D-Map is


used in the third-party software which has the opposite direction of Z axis. Here Z axis
is directed downward.

14.7. Interpolation
In the Designer for 2D Maps the following interpolation methods are implemented:

• 2D Maps: IDW Method;

• 2D Maps: Kriging;

• 2D Maps: SGS Method;

• 2D Maps: Least Squares method.

14.6. Export 173


19.1

14.7.1. 2D Maps: IDW Method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer IDW method.

To interpolate a 2D Map the following parameters should be defined:

• Output:

– 2D Map. Name of resulting map.


– Residual. The residual map between an intersection point of the created 2D Map
with the well and the marker corresponding to the well. The map is shown in the
list Wells Attributes.

• Source Data:

– Well Attribute. Choose available attribute for an interpolation of its values.


– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend 2D Map. Based on the trend map a new 2D Map will be built. Denoting
T (x, y) as a trend map function and (xi , yi , zi ) as the coordinates of attribute the
”residual” between attribute and trend, i.e. values zi − T (xi , yi ) defined in (xi , yi ),
are interpolated and D(x, y) function is obtained. Thus, the new map is the result
of adding D(x, y) function to the trend function T (x, y), i.e D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect ot the
old one. In the new system a 2D map will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option.

14.7.1. 2D Maps: IDW Method 174


19.1

• Autodetect. Automatic detection of 2D Map boundaries. Using maximum and minimum


X and Y coordinates of the well and the 2D Map boundaries (if the option Trend 2D
Map is activated) a minimum square rectangle is built and rotated by defined angle
with respect to the X axis. The obtained rectangle contains all markers and the trend.
Further, the rectangle extends to the value defined by XY Margin in each direction, i.e.
the value is added to maximum coordinates and subtracted from minimum coordinates.
If option Use Perforations is activated then building a rectangle wells perforation in-
tervals will be only taken into account.

• Other Parameters. Power Parameter. This parameter is used in the formula of the
Multilayer IDW method.

14.7.2. 2D Maps: Kriging


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Kriging.

To interpolate a Map the following parameters should be defined:

• Output:

– 2D Map. Name of resulting map.


– Residual. The residual map between an intersection point of the created 2D Map
with the well and the marker corresponding to the well. The map is shown in the
list Wells Attributes.

• Source Data:

– Well Attribute. Choose available attribute for an interpolation of its values.


– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend 2D Map. Based on the trend map a new 2D Map will be built. Denoting
T (x, y) as a trend map function and (xi , yi , zi ) as the coordinates of attribute the
”residual” between attribute and trend, i.e. values zi − T (xi , yi ) defined in (xi , yi ),
are interpolated and D(x, y) function is obtained. Thus, the new map is the result
of adding D(x, y) function to the trend function T (x, y), i.e D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect ot the
old one. In the new system a 2D map will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).

14.7.2. 2D Maps: Kriging 175


19.1

– Length along X. Horizon length along X axis (METRIC: m, FIELD: f t ).


– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option.

• Autodetect. Automatic detection of 2D Map boundaries. Using maximum and minimum


X and Y coordinates of the well and the 2D Map boundaries (if the option Trend 2D
Map is activated) a minimum square rectangle is built and rotated by defined angle
with respect to the X axis. The obtained rectangle contains all markers and the trend.
Further, the rectangle extends to the value defined by XY Margin in each direction, i.e.
the value is added to maximum coordinates and subtracted from minimum coordinates.
If option Use Perforations is activated then building a rectangle wells perforation in-
tervals will be only taken into account.

Other Parameters define a specific of interpolation method:

• Kriging Type. Define a type of Kriging, which will be used to interpolate a 2D Map.

– Simple.
– Ordinary.
– Universal.

• Variogramm. It is possible to choose available variogram for interpolation. If there is


no variogram it is necessary to create it. To do this Go To Variogram Properties. Use
tab Data Analysis to define variogram’s parameters.

14.7.3. 2D Maps: SGS Method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation (SGS) method.

To interpolate a 2D Map the following parameters should be defined:

• Output:

14.7.3. 2D Maps: SGS Method 176


19.1

– 2D Map. Name of resulting map.


– Residual. The residual map between an intersection point of the created 2D Map
with the well and the marker corresponding to the well. The map is shown in the
list Wells Attributes.

• Source Data:

– Well Attribute. Choose available attribute for an interpolation of its values.


– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend 2D Map. Based on the trend map a new 2D Map will be built. Denoting
T (x, y) as a trend map function and (xi , yi , zi ) as the coordinates of attribute the
”residual” between attribute and trend, i.e. values zi − T (xi , yi ) defined in (xi , yi ),
are interpolated and D(x, y) function is obtained. Thus, the new map is the result
of adding D(x, y) function to the trend function T (x, y), i.e D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect ot the
old one. In the new system a 2D map will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option.

• Autodetect. Automatic detection of 2D Map boundaries. Using maximum and minimum


X and Y coordinates of the well and the 2D Map boundaries (if the option Trend 2D
Map is activated) a minimum square rectangle is built and rotated by defined angle
with respect to the X axis. The obtained rectangle contains all markers and the trend.
Further, the rectangle extends to the value defined by XY Margin in each direction, i.e.
the value is added to maximum coordinates and subtracted from minimum coordinates.
If option Use Perforations is activated then building a rectangle wells perforation in-
tervals will be only taken into account.

14.7.3. 2D Maps: SGS Method 177


19.1

Other Parameters define a specific of interpolation method:

• Variogramm. It is possible to choose available variogram for interpolation. If there is


no variogram it is necessary to create it. To do this Go To Variogram Properties. Use
tab Data Analysis to define variogram’s parameters.

• Kriging Radius. (METRIC: m, FIELD: f t )

• Kriging Points.

• Random number.

14.7.4. 2D Maps: Least Squares method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Least Squares method.

To interpolate a Map the following parameters should be defined:

• Output:

– 2D Map. Name of resulting map.


– Residual. The residual map between an intersection point of the created 2D Map
with the well and the marker corresponding to the well. The map is shown in the
list Wells Attributes.

• Source Data:

– Well Attribute. Choose available attribute for an interpolation of its values.


– Well Filter. Use only markers corresponding to wells defined in the filter.
– Trend 2D Map. Based on the trend map a new 2D Map will be built. Denoting
T (x, y) as a trend map function and (xi , yi , zi ) as the coordinates of attribute the
”residual” between attribute and trend, i.e. values zi − T (xi , yi ) defined in (xi , yi ),
are interpolated and D(x, y) function is obtained. Thus, the new map is the result
of adding D(x, y) function to the trend function T (x, y), i.e D(x, y) + T (x, y).

• Grid Properties:

– Angle, degrees. Rotation angle of the new coordinate system with respect ot the
old one. In the new system a 2D map will be built. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along X. Horizon length along X axis (METRIC: m, FIELD: f t ).

14.7.4. 2D Maps: Least Squares method 178


19.1

– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).


– Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
– Length along Y. Horizon length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect


option.

• Use Perforations. See below the description of Autodetect option.

• Autodetect. Automatic detection of 2D Map boundaries. Using maximum and minimum


X and Y coordinates of the well and the 2D Map boundaries (if the option Trend 2D
Map is activated) a minimum square rectangle is built and rotated by defined angle
with respect to the X axis. The obtained rectangle contains all markers and the trend.
Further, the rectangle extends to the value defined by XY Margin in each direction, i.e.
the value is added to maximum coordinates and subtracted from minimum coordinates.
If option Use Perforations is activated then building a rectangle wells perforation in-
tervals will be only taken into account.

A smoothness of interpolated 2D Map’s values can be improved by varying Coefficients


in the range [0.01, 100] (see formula of LSM):

• Coefficients:

– First Derivative.
– Second Derivative.

• Advanced settings. If this check box is checked additional option Grid refinement
will be available. The choice of this option allows to improve an accuracy of 2D Map’s
interpolation, however, increases a computational time. An interpolation is carried out
Refinement Steps number of times. At initial interpolation step the number of points in
X and Y directions is defined:

– Start Count of Points by X.


– Start Count of Points by Y.

At the first interpolation step it is recommended to use a rough grid, i.e. the number of
points in X and Y directions should be minimal. At each iteration the number of points
in X and Y directions increases in such way that after defined number of iterations
(steps) the final number of points becomes equal to the number of 2D Map’s points.

14.7.4. 2D Maps: Least Squares method 179


19.1

14.8. 2D Map Adjustment to Wells Attributes


Two methods are available:

• IDW;

• Least Squares.

14.8.1. IDW method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer IDW method.

To adjust a Map the following parameters should be defined:

• Output:

– Output. 2D Map. Resulting Map.


– Residual. The residual map. The map will be available in the section Wells At-
tributes.

• Source data:

– Input. 2D Map. Initial Map.


– Well Attribute. Well attribute map.
– Well Filter. Allow to select wells to which the calculation will be applied. If a
filter is not activated a calculation will be applied to all wells.

• Other Parameters. Power Parameter. This parameter is used in the formula of the
Multilayer IDW method.

14.8.2. Least Squares method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Least Squares method.

To adjust a 2D Map the following parameters should be defined:

• Output:

– Output. 2D Map. Resulting 2D Map.


– Residual. The residual 2D Map. The map will be available in the section Wells
Attributes.

14.8. 2D Map Adjustment to Wells Attributes 180


19.1

• Initial data:

– Input. 2D Map. Initial Map.


– Well Attribute. Map of well attribute.
– Well Filter. Allow to select wells to which the calculation will be applied. If a
filter is not activated a calculation will be applied to all wells.

Coefficients providing a smoothness of adjusted Map are defined (see formula of LSM)
and varied in the range [0.01, 100].

• Coefficients:

– First Derivative.
– Second Derivative.

• Discrepancies elimination:

– Iterations.
– Coefficient. At each algorithm iteration derivative coefficients are modified by
multiplying by this coefficient.

14.9. Universal Interpolation


This computation allows to create a new 2D Map by interpolation of well markers, point sets,
horizons, polygons, vertical faults. The following parameters have to be set:

◦ Output. Name of the resulting object;

◦ Residual. Source Points Set - Residual Attribute. Name of the point set which will
contain the residual attributes. For each computation, a point set is generated with a
point set attribute containing the residual value. If the interpolation is performed using
several objects, a point with a residual value will be created for each object point;

◦ Source Data. Definition of the objects which will be used for the interpolation. Add
Rows option allows to add a new file. Well Filters allows to select an existing well
filter to exclude wells from the computation (see Well filter for more information).
Seam with least squares option allows to extend the faults to the boundary of the
object or to another fault, using the least square interpolation in the vicinity of the
faults. First, the points near this extension are considered (by the chosen method or
the least-squares method if the option is checked), then the stitch points are used to
independently interpolate the parts. It leads a gap where there was a fault and cross-
linking where it was extended. In some cases, the stitching looks better if you use the
least-squares method to interpolate the stitch points.

14.9. Universal Interpolation 181


19.1

◦ Trend. The new object will be created according to the trend values. Let’s the function
T (x, y) denotes the trend, (xi , yi , zi ) are the coordinates of each object used for the
interpolation. Denoting D(x, y) as a function obtained by interpolation of the ”residuals”
between the objects and the trend, i.e. the values zi − T (xi , yi ) defined in (xi , yi ) are
interpolated. Thus, the new object is the result of adding the function D(x, y) to the
trend function T (x, y): D(x, y) + T (x, y);

◦ Grid Properties :

• Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. In the new system a horizon will be built. See below the description of
Autodetect option.
• Min. X. Minimum X coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
• Length along X. Object length along X axis (METRIC: m, FIELD: f t ).
• Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
• Min. Y. Minimum Y coordinate in the new coordinate system (METRIC: m,
FIELD: f t ).
• Length along Y. Object length along Y axis (METRIC: m, FIELD: f t ).
• Step along Y. Grid step size in the Y direction (METRIC: m, FIELD: f t ).

◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect option.

◦ Autodetect by. Chose an object in the list to use its size as dimensions for the plane which
will be generated.

◦ Autodetect. Automatic detection of boundaries. Using maximum and minimum X and


Y coordinates of the selected object in Autodetect by field and a minimum square
rectangle is built and rotated by the defined angle with respect to the X axis. The
obtained rectangle contains all markers and trend. Further, the rectangle extends to the
value defined by XY Margin in each direction, i.e. the value is added to maximum
coordinates and subtracted from minimum coordinates.

◦ Boundary Polygon. Allows to use a polygon as boundary for the resulting object;

◦ Interpolation type. For more information about interpolation algorithms, see Interpolation
Algorithms
For SGS, the following fields have to be filled:

• Variogramm. It is possible to choose available variogram for the interpolation. If


there is no variogram it is necessary to create one. To do this, the shortcut Go To
Variogram Properties can be used, or open the Data Analysis tab.
• Kriging Radius. (METRIC: m, FIELD: f t )
• Kriging Points.

14.9. Universal Interpolation 182


19.1

• Random number.

For the Least Square method: the smoothness of the interpolated horizon can be im-
proved by varying coefficients in the range [0.01, 100] (see the formula of LSM). The
following fields have to be filled:

• Coefficients:
– First Derivative.
– Second Derivative.
• Advanced settings. If this check box is checked additional option Grid refine-
ment will be available. The choice of this option allows to improve the interpola-
tion accuracy, however, increases a computational time. An interpolation is carried
out Refinement Steps number of times. At the initial interpolation step the number
of points in X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the number
of points in X and Y directions should be minimal. At each iteration the number
of points in X and Y directions increases in such way that after defined number of
iterations (steps) the final number of points is the same as the number of points of
the resulting object.

For the Kriging, the following parameters have to be set:

• Kriging Type. Define the type of Kriging, which will be used to interpolate the
object.
– Simple.
– Ordinary.
– Universal.
• Variogramm. It is possible to choose an available variogram for the interpolation.
If the project does not contain variograms, it is necessary to create one. A vari-
ogram can be built using the shortcut Go To Variogram Properties, or use the
Data Analysis tab.

For the IDW method,the following field has to be set:

• Power Parameter. This parameter is used in the formula of the Multilayer IDW
method.

◦ Limit Values. Allows to set a limit to the maximum and minimum values of the resulting
2D Map.

14.9. Universal Interpolation 183


19.1

14.10. Transformations
The following calculations are available:

• Rotate;

• Translate.

14.10.1. Rotate
A rotation of the 2D map by the specified angle around the defined point.

• Output. 2D Map. Choose modified map.

• Point around which the map will be rotated:

– X. (METRIC: m, FIELD: f t )
– Y. (METRIC: m, FIELD: f t )

• Angle, degrees. Rotation angle of 2D map.

14.10.2. Translate
All map points are shifted in the same direction by the same distance.

• Output. 2D Map. Choose modified map.

• Shift vector:

– X. Shift all map points in the X direction by the defined number of units of length
(METRIC: m, FIELD: f t ).
– Y. Shift all map points in the Y direction by the defined number of units of length
(METRIC: m, FIELD: f t ).

14.11. Auxiliary Calculations


The following calculations are available:

• 2D Map by Property;

• Azimuth Map by Polygons

• Thickness Map by Horizons;

• 2D-Maps Merging;

• Create Isochores by Structural Model.

14.10. Transformations 184


19.1

14.11.1. 2D Map by Property


The calculation is created the 2D Map based on the selected property.

• 2D Map. Name of 2D Map for the calculation.

• Method.Method, which is used to build 2D Map. The list of available calculation meth-
ods depends on the Property Type (defined below).
For Continuous properties:

– Average. Consider a vertical line coming from the two-dimensional grid node.
Blocks i crossing by the line and satisfying the filter condition (which will be
defined below) are considered. Based on the property values c(i) and blocks height
height(i) the map value at the grid node is calculated as:

∑ c(i) · height(i)
M= .
∑ height(i)

This calculation is intended for the data arrays that explicitely de-
i fine grid properties. An example of possible utilization: 2D map of
average porosity calculation from 3D porosity cube.
– Volume-height. Consider a vertical line coming from the two-dimensional grid
node. Blocks i = 1, ... crossing by the line and satisfying the filter condition (de-
fined below) are considered. Based on the property’s values c(i), blocks’ height
height(i) and volumes volume(i) the 2D Map value M at the grid node is calcu-
lated as:

c(i) · height(i)
M=∑ .
volume(i)

This calculation option can be applied to the grid properties that


i already comprise the volumetric parameters of the block. An exam-
ple of possible utilization: 2D map of net thickness calculation from
blocks effective volumes.
– Net. Based on the same data as for the Average method the value of 2D Map M
at the grid node is calculated as:

M = ∑ c(i) · height(i).

This calculation is intended for the grid properties that do not de-
i pend on the block’s dimensions. An example of possible utilization:
2D map of net thickness calculation from lithology cube.

14.11.1. 2D Map by Property 185


19.1

– Sum. Based on the same data as for the Average method the value of 2D Map M
at the grid node is calculated as:

M = ∑ c(i)

For Discrete properties:

– Average. Consider a vertical line coming from the two dimensional grid node.
Blocks i crossing by the line and satisfying the filter condition (which will be
defined below) are considered. Based on the property values c(i) and blocks height
height(i) the 2D Map value M at the grid node is calculated as:

∑ c(i) · height(i)
M= .
∑ height(i)

– Top. Consider a vertical line coming from the two dimensional grid node. The
set of, intervals which are the line intersection with the 3D grid, is calculated. All
intervals, which are not the result of line intersection with blocks, do not satisfy the
filter condition and a facies value in them equals to the defined value, are skipped.
The minimum boundary of the top interval is supposed to be a 2D map value at
the specified grid node.
– Bottom. Consider a vertical line coming from the two dimensional grid node. The
set of intervals, which are the line intersection with the 3D grid, is calculated. All
intervals, which are not the result of line intersection with blocks, do not satisfy the
filter condition and a facies value in them equals to the defined value, are skipped.
The maximum boundary of the top interval is supposed to be a 2D map value at
the specified grid node.
– Thickness. Consider a vertical line coming from the two dimensional grid node.
The set of intervals, which are the line intersection with the 3D grid, is calculated.
All intervals which are not the result of line intersection with blocks, do not satisfy
the filter condition and a facies value in them equals to defined value are skipped.
The sum of intervals length is supposed to be a 2D map value at the specified grid
node.
– Proportion. Consider a vertical line coming from the two dimensional grid node.
The set of intervals, which are the line intersection with the 3D grid, is calculated.
All intervals, which are not the result of line intersection with blocks, do not satisfy
the filter condition, are skipped. The sum of intervals length is calculated. Further,
all intervals, which are not the result of line intersection with blocks, a facies
value in them equals to defined value, are skipped. The sum of intervals length is
calculated. The ratio between second and first sum is considered to be a value of
2D Map at the specified grid node.

• Smooth result. If the check box is checked the 2D Map will be smoothed. The map
value in each node is averaged using values at neighboring nodes.

14.11.1. 2D Map by Property 186


19.1

• User Cut. 2D map will be built based on the block that match the defined filter.
• Property. Choose property which will be used to build 2D Map.
• Property Type. Property types are:
– Continuous. Any numerical values can be used for Property.
– Discrete. Integers can be used for Property.

14.11.2. Azimuth Map by Polygons


This calculation allows to create a map representing azimuts, using polygons and a value of
dominant azimut (used as a trend). First, the tangent to the curves is computed for each point
and then, the azimuts of these tangents are interpolated. The azimut is defined as the angle
between the direction and the Y axis. This map can be used for facies modeling, using the
methods Facies Modeling and Discrete properties modeling: Kriging 3D and Facies Modeling
and Discrete properties modeling: SIS 3D.

• Output. 2D-Map. Name of the resulting map;


• Normalize result. The result is normalized in order to obtain angles inferior to 360;
• Source Data. This field is used to indicate the polygons which will be used for the
computation. A polygon can be selected from the list of available polygons by double
clicking on the white field under Polygon. The use of the polygon for the computation
has to be confirmed by cheking the box Use;
• Dominant Azimuth, degrees. Value of the dominant azimuth in degrees. The azimuth
is the angle between Y axis and the direction;
• Set Grid 2D Properties.
• 2D Grid: parameters for the 2D grid. The settings can be detected automatically using
the option Autodetect by (see below).
◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.
◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).

14.11.2. Azimuth Map by Polygons 187


19.1

◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).


◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

14.11.3. Thickness Map by Horizons


This computation allows to create a thickness map using two surfaces (Top and Bottom). In
the areas where the top intersects the bottom and is located deeper than the bottom, a 0 value
is assigned to the map. If the surfaces cross each other only locally, an undefined value is
assigned to those areas. Instead of a horizon, a fixed depth can be used. A polygon can also
be selected in order to define the boundary.
The following parameters have to be set:

◦ Output. 2D map. Name of the resulting map;

◦ Top. In the Use area select the type of object for computation. A horizon or a constant
depth can be set. If Horizon is set, select the corresponding horizon from the list. If
Depth is selected, enter the corresponding depth for the computation of the top;

◦ Bottom. In the Use area select the type of object for computation. A horizon or a constant
depth can be set. If Horizon is set, select the corresponding horizon from the list. If
Depth is selected, enter the corresponding depth for the computation of the bottom;

◦ Boundary Polygon. Define a boundary for the resulting map. Select the corresponding
polygon;

◦ Grid Properties.

◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.
◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).

14.11.3. Thickness Map by Horizons 188


19.1

◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).


◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

14.11.4. 2D-Maps Merging


This computation allows to generate new 2D maps using existing 2D maps and polygons. An
example is given on the Fig. 47:

Figure 47. A) and B) Input data: porosity gradient map and polygon representing the river
system used for the computation. C) Result of a 2D map merging: the porosity gradient map
is used as a geometry source inside the river system polygon, while outside the polygon, a 0
Z-value is assigned. This map can for example be used as trend for a property interpolation.

The following parameters must be defined:

• 2D-Map. Name of the resulting 2D-Map;

• Geometry Source. Select the type of object which will be used for the map generation.
You can create a 2D-Map by using already existing 2D-Maps or by entering any Z-value;

14.11.4. 2D-Maps Merging 189


19.1

• 2D-Map. This field is only active when 2D-Map is selected as Geometry Source.
Selection of the corresponding map;

• Z-value. This field is active if the selected Source Geometry is Z-Value;

• Polygon. In order to assign the map or the Z-value to an area located inside or outside
a closed polygon, a polygon can be used;

• Inside/Outside. Indicate if the map or Z value has to be assigned inside or outside the
polygon area;

• Grid Properties.

– Angle, degrees. Rotation angle of the new coordinate system with respect to the
old one. Corresponds to the angle between the X axis and the border of the con-
structed grid. In order to set an automatic value computed from an object, the
icon on the right has to represent a closed padlock. See below the description of
Autodetect option.
– Min. X. Minimum X coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
– Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
– Min. Y. Minimum Y coordinate of the grid in the new coordinate system (MET-
RIC: m, FIELD: f t ).
– Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
– Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
– Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
– XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
– Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

14.11.5. Create Isochores by Structural Model


This computation generates isochores using an existing structural model (see Structural Model
for more information). 2 horizons (Top and Base) have to be set for each computed isochore
map (the result is stored as the Target Isochore map). Each defined row corresponds to one
output isochore. The Autodetect button allows to automatically set all the horizons present in
the selected structural model.

14.11.5. Create Isochores by Structural Model 190


19.1

14.12. 2D Distance Calculation


This computation generates 2D-Maps of the distances (measured in horizontal plane) to the
specified objects:

• Distance to Polygon;

• Distance to Pointset;

• Distance to Well Markers;

– In this calculation the Well Filter can be applied to Markers selection.

• Distance to Wells.

– In this calculation the Well Filter can be applied to Wells selection.

! In all these calculations only horizontal component of the measured distance


is taken into account.
In all calculations the 2D-Map boundary can be defined via Autodetect:

• Autodetect. Automatic detection of boundaries for the 2D grid, using the object de-
fined in Autodetect by field. Maximum and minimum coordinates (X, Y) are detected.
The minimum rectangle rotated by the defined Angle with respect to the OX axis and
enclosing the object with given XY Margin is built.

14.12. 2D Distance Calculation 191


19.1

15. User Map Images


Raster images can be loaded and visualized in 2D in Geology Designer. They are stored as
Geometry Objects under User Maps Images, cf Fig. 48

Figure 48. An example of loaded User Map Images representing a geological map. The object
can be displayed in 2D.

The following possibilities are available:

• Load User Images


• Edit User Images

15.1. Load User Images


The calculation Load User Images allows to import raster images. The following parameters
have to entered:
• File Name. Select the file to import;
• User Image Name. Name of the image in the project;
• Bind Image by. Location of the loaded image.
– Project Boundaries. The boundary of the loaded image is superimposed on the
project boundary;
– One Point. The lower left point, height and width of the image are set for the
import;
– Three Points. Left, lower left and lower right points of the image are set for the
import.

15. User Map Images 192


19.1

15.2. Edit User Images


The Edit User Images button is available in 2D ( ). It allows to translate the image using
3 vectors.

• 1. Click first on the button marked 1 and draw a vector using the left mouse button,
dragging the mouse from the point of the image which has to be moved and the final
point where is will be moved and then release it. The vector is displayed. Note that the
displacement will be performed from the point of the vector you defined first towards
the second one.

• 2. Click on the second button, marked 2 and perform the same steps.

• 3. Perform these steps using the third button to set the third vector.

• 4. Apply.

An example is presented on Fig. 49

16. Seismic
In Geometry Objects, 3 types of objects are available: seismic surveys 3D (import, export and
computation of 3D seismic data), seismic surveys 2D (import, export and computation of 2D
seismic data), seismic arbitrary slices (work with seismic sections created by polygons).
In Calculations menu to work with seismic the following possibilities are available:

• Import

• Export

• Velocity by Seismic

• Calculate Attributes

– Instantaneous Amplitude
– Instantaneous Phase
– Instantaneous Frequency
– Coherence
– Velocity to Depth
– Depth to Velocity

15.2. Edit User Images 193


19.1

Figure 49. An example of editing User Map Images. A shapefile respresenting the wells is
loaded as a point set and displayed in dark blue, and a geological map, partly covering the
point set on which the wells are represented in brown and black is loaded as a User Map
Image. The goal is to correctly superimpose these objects. So, the map is dragged to the point
set A)The vectors are set B)The result is displayed.

More detailed use of seismic data in Geology Designer are demonstrated


in the following training tutorials:

• GD4.1. How To Start With Seismic;

• GD4.2. How To Interpret Horizons On Seismic;

• GD4.3. How To Do The Time To Depth Conversion.

16.1. Import
The seismic can only be loaded in SEG-Y format. 2 options are available:

16.1. Import 194


19.1

• SGY, with header review;

• SGY Format.

• Name. Define the name of the loaded seismic.

• File Name. Full path to the seismic file.

• Preview:

– Binary header. Preview of the binary header of the loaded Seg-y containing the
descriptor and the value columns.
– Text header. Preview of the text header containing the text information about the
data.
– Trace header. Preview of the trace header containing information about the seis-
mic record.

• Type:

– Type. Selection of the type of data (2D or 3D).


– Start CMP. Number of the first CMP.
– End CMP. Number of the last CMP.

• Geometry:

– Angle. Setting of the angle of the seismic.


– Min X. Minimum X coordinate of the seismic line or cube.
– Min Y. Minimum Y coordinate of the seismic line or cube.
– Length X. Length of the seismic line or cube along X axis.
– Length Y. Length of the seismic line or cube along Y axis.
– Reverse Y. Reverse the direction of increasing Y

• Domain. The seismic can be loaded in Time or in Depth;

• Delay in Z axis. Indicate the delay. The top of the loaded seismic will correspond to
this value.

• Min Z. This option is used to cut the loaded seismic by depth or time. The indicated
value will correspond to the top value of the seismic.

• Max Z. This option is used to cut the loaded seismic by depth or time. The indicated
value will correspond to the bottom value of the seismic.

• Load in Cache. Load the seismic in the cache memory.

16.1. Import 195


19.1

• Autodetect. Autodetection of Geometry, Processing and Type parameters from the data.

• Processing:

– Inline position in the header. Setting of the inline position.


– Crossline position in the header. Setting of the crossline position.
– Inline Position Length. Setting of the inline position length in the header.
– Crossline Position Length. Setting of the crossline position length in the header.
– X Position in Header. Setting of X position in the header.
– Y Position in Header. Setting of Y position in the header.
– X Position Length. Setting of X position length in the header.
– Y Position Length. Setting of Y position length in the header.

16.2. Export
The seismic is exported in SEG-Y format.

• Input Name. Select the seismic to export.

• Output Name. Define the name of the exported seismic.

• File Name. Full path to the seismic file.

16.3. Velocity by Seismic


This computation allows to create a velocity cube based on checkshot data. The instantaneous
velocity is computed: for each point te the time is fixed and the depth De has to be estimated.
The distance di between the point to estimate and the N wells is computed. For each well, the
depth Di is taken from the checkshot logs. This distance is used as weight for computation.
If a well has no checkshot data for the corresponding time, it is not taken into account for the
computation and the estimation of De :
N
∑ di Di
i=1
De = N
(16.1)
∑ di
i=1

Points are estimated each 2 ms, which leads to the following estimation of the velocity:
Dei − Dei−1
vi = (16.2)
2
where De ei is the point to estimate and Dei−1 is the point estimated at the previous step.
The following parameters have to be defined:

16.2. Export 196


19.1

• Result Seismic. Name of the resulting cube;

• Result file Name. Path and name of the resulting file;

• Source Data.

– Seismic Survey 3D. Name of the seismic cube;


– Time Depth Relation Log. Selection of the checkshot log;
– Time Depth Relation Log Type. Selection of the checkshot log type.
– Well Filter. Only the wells selected in the well filter will be used for the compu-
tation.

16.4. Calculate Attributes


The following computations are available:

• Instantaneous Amplitude;

• Instantaneous Phase;

• Instantaneous Frequency;

• Coherence;

• Velocity to Depth;

• Depth to Velocity.

16.4.1. Instantaneous Amplitude


This calculation allows to compute the instantaneous amplitude for any chosen seismic file
loaded in
pthe project. The instantaneous amplitude corresponds to the module of the analytical
signal ( complexepart 2 + real part 2 ). Instantaneous amplitude can be used to help recognize
phase differences between seismic versions. The instantaneous amplitude attribute is important
as it detects bright spots (DHI) caused by gas accumulations, major lithological changes that
are caused by strong energy reflections and sequence boundaries. The attribute can display
lithological changes that may not be apparent on the seismic data.

• Input Name. Name of the seismic cube;

• Output Name. Name of the resulting seismic object in the project;

• Output File Name. Path and name of the resulting file.

16.4. Calculate Attributes 197


19.1

16.4.2. Instantaneous Phase


This calculation allows to compute the instantaneous phase for a chosen 3D SEGY file. The
instantaneous phase corresponds to the argument of the analytical signal (arctan( complexepart
real part ).
This attribute can be used to identify seismic reflector continuity (commonly used to find
continuity of weak events), it equally highlights strong and weak reflections.

• Input Name. Name of the seismic cube;

• Output Name. Name of the resulting seismic object in the project;

• Output File Name. Path and name of the resulting file.

16.4.3. Instantaneous Frequency


Instantaneous Frequency is an Instantaneous Phase derivative with time. So this attribute
shows the assessment of a speed of an Instantaneous Phase variation. Instantaneous Frequency
is a pretty complex parameter for an interpretation. Typically, the values of this parameter are
unstable especially in the case of a noise presence.
Sometimes it is possible to use this seismic attribute to identify the local lithology proper-
ties variations (net thickness, the reservoir lithology variety etc.).
In some cases, high frequency components are damping because of oil and gas pesence in
reservoirs. So there is possibility of instantaneous frequency usage for saturation calculating
and OWC/GOC mapping.

• Input Name. Name of the seismic cube;

• Output Name. Name of the resulting seismic object in the project;

• Output File Name. Path and name of the resulting file with seismic attribute.

It is worth mentioning that in some cases Instantaneous Frequency has negative values.
This happens when the phase momentarily decreases in magnitude. Generally, such values are
in conflict with physical sense.
Thereby some algorithms do reversing of the algebraic sign of negative frequency to
positive values. Actually in this case users deal with the modulus of instantaneous frequency.
On the other hand, such kind of deviations are the inherent part of calculated seismic
attribute. Sometimes they can have an individual information value and help to interpreta-
tor to detect structural and stratigraphic heterogeneous. So the possible negative values of
Instantaneous Frequency are not being edited.

16.4.4. Coherence
This calculation allows to compute the coherence for a chosen 3D SEGY file. The method
used for this computation is the semblance. It measures the degree of similarity to each other

16.4.2. Instantaneous Phase 198


19.1

of the traces within a defined 3D window. The semblance is computed using the next formula:
L M
∑ ( ∑ xik )2
i=1 k=1
C= L M
(16.3)
M ∑ ∑ (xik )2
i=1 k=1

Where M is the number of traces, L the number of samples for each trace and the X matrix can
be written as : X = S + N where S = {sik } is the signal and N = {nik } the noise component.
This attribute can be used for the identification of fracture zones.

• Input Name. Name of the seismic cube;

• Output Name. Name of the resulting seismic object in the project;

• Output File Name. Path and name of the resulting file;

• Calculation Parameters.

– Inline Window Size. Definition of the 3D window used for the computation. Enter
the inline window size;
– Crossline Window Size. Definition of the 3D window used for the computation.
Enter the crossline window size;
– Vertical Window Size. Definition of the 3D window used for the computation.
Enter the vertical window size in milliseconds or in meters.

16.4.5. Velocity to Depth


This calculation allows to compute a velocity model cube using an interval velocity model.
The later has to be imported beforehand as a seismic cube (SGY file) (cf. Fig.50 )
The depth (in meters) at i is computed according to the formula:
i−1
D(i) = ∑ D j + SI ∗V (i) (16.4)
j=0

Where SI is the sampling interval (in seconds) and Vi is the velocity at i (in m/s).

• Input Name: selection of the input velocity cube;

• Output Name: name of the resulting object;

• Output File Name: path and name of the resulting file. Each resulting file is stored as
an external SEGY file;

• Time Depth Relation Type: selection of the Time-Depth relation type: two-way time
or one-way time.

16.4.5. Velocity to Depth 199


19.1

Figure 50. A) Input interval velocities, B) Resulting velocity model.

16.4.6. Depth to Velocity


This calculation allows to compute an interval velocity model using a velocity model as input.
The later has to be imported beforehand as a seismic cube (SGY file). The velocity (in m/s)
at i is computed according to the formula:
Di+1 − Di
V (i) = (16.5)
SI
Where D is the depth in meters and SI the sampling interval in seconds.

• Input Name: selection of the input velocity model;

• Output Name: name of the resulting object (interval velocity model);

• Output File Name: path and name of the resulting file. Each resulting file is stored as
an external SEGY file;

• Time Depth Relation Type: selection of the Time-Depth relation type: two-way time
or one-way time.

16.4.6. Depth to Velocity 200


19.1

17. Seismic Horizons


In Seismic tab, to work with seismic horizons, the following possibilities are available:

• Create a new seismic horizon;

• Interprete Seismic Horizons.

In Settings tab, to work with seismic horizons, the following possibilities are available:

• Autotracking Parameters;

• Line and projection display.

In Calculations menu, to work with the following possibilities are available:

• 3D Correlation.

17.1. Create a new seismic horizon


In seismic tab, the button Create New Seismic Horizon allows to add a new empty
seismic horizon to the geometry objects hierarchy below Seismic.

17.2. Seismic Interpretation


In Interprete Seismic Horizons dialog, the following options are available:

• Seismic Horizon. Selection of the seismic horizon which will be edited;

• Manual Interpretation. Allows to interpret manually a seismic horizon. Left mouse


button click allows to select the points on the seismic in seismic tab, double left click
can be used to finish the selection and the right mouse button click allows to delete the
selection;

• Guided Autotracking. Allows to interpret a seismic horizon by seeds picking. The


left button allows to select the seeds, the double click propagates the picking to the
reflector between the seeds, according to the Autotracking Parameters which are set;

• Seeded 2D Autotracking. For this method, the selection of one point on the
reflector (by double left clicking) fits automatically the picking to the part of the re-
flector which has similar phase parameters as the seed, according to the Autotracking
Parameters which are set;

• 3D Autotracking. This method allows to create a horizon in time from the pick-
ing. Picked seeds in 2D are interpolated to 3D by double clicking, according to the
Autotracking Parameters which are set;

17. Seismic Horizons 201


19.1

• Eraser Tool. Erases the parts of the picking which are selected by left mouse click.
This tool deletes only the points in 2D, whatever the method;

• Undo Button. Undo the last steps performed;

• Redo Button. Redo the last steps performed.

17.3. Autotracking parameters


To compute Seismic Horizons by semi-automatic methods, the following parameters are avail-
able:

• Signal Feature. Selection of the type of reflector which is interpreted: peak (positive
reflection coefficient), trough (negative reflection coefficient) or peaks and troughs.

• Seed Confidence. If this option is activated, values calculated by autotracking will be


constrained by amplitudes. Seed Confidence specifies the minimum value for the seismic
amplitude, as a percentage of the seed points values. Minimum and maximum values
for the amplitude are determined for the entire field. For instance, if the seed confidence
value is 30% and maximum and minimum values area 120 and -120, autotracked values
will not be outside [-120;-36] ∪ [36;120], where 120 and -120 correspond to minimum
and maximum possible amplitudes and 36 corresponds to 30% of 120, see Figure 51.

Figure 51. Seed confidence definition, example for seed confidence value of 30%, autotracked
values will not be outside the blue rectangles

• Window Confidence. Represents the vertical degree of freedom for the autotracking.
The less is this value, the less calculated values are varying from the seed value, see
Figure 52.

17.3. Autotracking parameters 202


19.1

Figure 52. Window Confidence definition, example for a window confidence value of 20 ms.
Seeds are represented in blues. Autotracked values cannot be outside the limits represented in
dashed lines and located at 10 ms upwards and 10 ms downwards

• Use Wavelet tracking. If this option is activated, the calculated values by autotracking
will be constrained by the wavelet.The wavelet tracking method compares traces around
the selected point (within the correlation window). The picking will be propagated to
a neighboring trace if the original trace and the neighboring one have a correlation
coefficient value which equals to at least the value set as Correlation Quality.

If no options (Seed Confidence or Wavelet tracking) is used, the picking is propagated without
constraints to all the neighboring peaks or troughs in 2D or 3D.

17.4. Line and Projection display


For each Seismic Horizon, the following parameters can be set in Settings panel:

• Line Width. Setting of the line width in mm.

• Line Color. Setting of the color for each object.

• Line Style. Setting of the style.

• Show Projection. If this option is selected, the projection of already interpreted lines
will be visible.

• Projection Line Width. Setting of the projection line width in mm.

• Projection Color. Setting of the color for the projection.

• Projection Line Style. Setting of the projection line style.

17.4. Line and Projection display 203


19.1

17.5. 3D Correlation
This option is accessible from Calculations menu and allow to convert line picking into a
surface in time. The following parameters must be specified:

• Seismic. Selection of the seismic which was interpreted.

• Seismic Horizon. Selection of the picking which will be converted.

• Seismic Horizon 3D. Name of the 3D seismic horizon which will be created.

• Autotracking Parameters. Selection of the methods which will be used to compute the
seismic horizon. See Autotracking Parameters for more details.

• Load SEG-Y in Memory. If this option is activated, the entire SEG-Y file is loaded in
the memory.

17.5. 3D Correlation 204


19.1

18. Polygons
In Geology Designer, polygons are multifaced geometry objects (finite chain of straight line
segment).
Polygon can be defined as:
• Curve (polyline);

• Closed curve;

• Curve composed of several lines (components), for example created by horizon or 2D


map contour lines.

Polygons can be: loaded, created from the interface (2D tab, button) or created by
point sets or horizon contour lines.

Examples of how to work with polygons are shown in training tutorials:

• GD5.1. How To Work With Polygons.

In Calculations menu to work with polygons the following possibilities are available:

• Import

– Single Polygon File (Text file)


– .bln files
– TKS Polygons
– Polygon lines (ASCII)
– CPS-3 lines
– Shapefile
– Z-Map Plus

• Export

– Export all curves


– Export the selected curve

• Polygons Union

• Add Polygons to Polygon Set

• Perform boolean operations on polygons

• Create Polygons

18. Polygons 205


19.1

• Polygon by Horizon intersection

• Set Polygon Z-Coordinates by Depth

• Set Polygon Z-Coordinates by Horizon

• Transform Polygon

• Calculate Polygon Area

• Smooth polygon

18.1. Import
Polygons can be loaded in the following formats:

• Single Polygon File (Text file)

• .bln files

• TKS Polygons

• Polygon lines (ASCII)

• CPS-3 lines

• Shapefile

• Z-Map Plus

Interface elements common to all available formats are the following:

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

• Preview. Number of Lines. Number of loaded file lines shown in the Preview window.

• Select Coordinate Reference System:

– Project CRS. Project coordinate system. It is defined in the menu Settings.


– File CRS. Data coordinate system in the loaded file.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

Other settings are specific to each particular format.

18.1. Import 206


19.1

18.1.1. Single Polygon File (Text file)


The text file should contain 3 columns: X coordinate, Y coordinate and Z coordinate.
Example
9534534.880176 4999851.081244 0.000000
9534518.919362 5000070.985790 0.000000
9534905.525740 4999987.634873 0.000000
9534905.525740 4999773.050599 0.000000
9534768.972111 4999679.059141 0.000000

There is an additional option:

• Polygon Is Closed. If the check box of this option is checked then the loaded polygon
will be shown in closed form.

18.1.2. .bln files


The file format coincides with that described for faults.

18.1.3. TKS Polygons


Format description.
The file consists of a header and description of polygons. The header consists of two parts.
Among other thing the number of polygons is defined in the header’s first part. The number
of polygons is followed by keyword Count. The header first part is terminated by keyword
Next ID.
In the header’s second part two lines are used to define main parameters for each polygon.
The polygon name is defined in the first line. The polygon number is defined in the second
line (in this line the second number is not used).
The header is followed by polygons data (in the order listed in the header). The first line
contains parameters for visualization and is not used. The polygon point number is defined
in the second line. Further, points coordinates are given; each point is defined by X and Y
coordinates. The space is a delimiter.

18.1.1. Single Polygon File (Text file) 207


19.1

Example
40 File Definition Type
1 Version 7.0
3 Count
43 Next ID
Polygon A
40,107
Polygon B
41,1
Polygon C
42,1
25 0 3 6 5 7257866.000000 21041.038499 1.000000
5
8774.000000 15604.000000 7753.000000 14963.000000 6793.000000
14260.000000 6129.000000 14149.000000 5539.000000 13486.000000
0 0 3 58 1 11468610.000000 14615.461954 1.000000
6
19308.000000 7482.000000 18348.000000 4752.000000 21666.000000
4824.000000 22332.000000 8070.000000 22260.000000 9552.000000
19308.000000 7482.000000
12 0 3 50 0 16117524.000000 16296.022271 1.000000
6
1074.000000 3792.000000 3732.000000 -198.000000 5430.000000
2760.000000 5946.000000 4380.000000 2994.000000 6078.000000
1074.000000 3792.000000
0
0

18.1.4. Polygon lines (ASCII)


The description of the format is given in the section from Curves (a format type to import
faults).

18.1.5. CPS-3 lines


The description of the format is given in the section from Curves (a format type to import
faults).

18.1.6. Shapefile
Polygons can also be loaded from Shapefiles.
The shapefile format is a geospatial vector data format. A shapefile contains a main file,
an index file, and a dBASE table. The main file is a description of the object geometry and

18.1.4. Polygon lines (ASCII) 208


19.1

contains a list of vertices. The index file provides a positional index of the object geometry,
while the dBASE table is a list of the object attributes.
The format does not allow preview. Also, there is the following additional option:
• Ignore index file. This option can be used to force the visualization of the object in
case of corrupted index files;

18.1.7. Z-Map Plus


The description of the format is given in the section Z-Map Plus (a format type to import
Faults).
There are additional options:
• Invert Z-coordinates. It is recommended to activate this option if loaded trajectories
were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Use Different Units for Z. This is applicable if Z is measured in other units than X and
Y.

18.2. Export
It is possible to save all polygons or the selected polygon into a file:

• Export all curves

• Export the selected curve

By default, all the exported polygons have Z coordinates equal to 0.

18.2.1. Export all curves


All available polygons will be exported.
• Output Folder. The full path to file, in which all curves will be saved.

• Output Units. Define units (METRIC, FIELD, LAB) in which output data will be
saved.

18.2.2. Export the selected curve


The selected polygon can be exported into a file in one of the following formats:
• Single Polygon File (XYZ). See the section Single Polygon File (Text file);

• Export Polygon (ASCII). See the section Polygon lines (ASCII);

• Export Polygon (CPS-3 format). See the section CPS-3 lines;

18.1.7. Z-Map Plus 209


19.1

• Export Polygon (BLN). See the section .bln files.

Additional parameters should be specified:

• File Name. The full path to file, in which the selected curve will be saved;

• Curve. Name of the curve to be saved;

• Output Units. Define units (METRIC, FIELD, LAB) in which output data will be
saved.

18.3. Polygons Union


This calculation allows to combine polygons in order to create united polygons. If the selected
polygons are not closed, they will be closed automatically during the calculation.

• Result Polygon. Name of the resulting polygon. All the points inside the polygon will
be included in the union.

• United Polygons. Set of united polygons.

– Use. If the check box is not checked then, a selected polygon will not be included
in the union;
– Polygon. Selection of the polygon name which will be included in the union;
– Add Rows. Add a polygon;
– Remove Rows. Delete the chosen file from the list.

18.4. Add Polygons to Polygon Set


This calculation allows to create a polygon set by unifying polygons. The curves will remain
unchanged (the curves will not be closed).

• Result Polygon. Name of the resulting polygon. All the points inside the polygon will
be included in the union;

• Clear Result Polygon Set. allows to rewrite an existing polygon. If this option is ticked,
the polygon indicated in the field Result Polygon will be re-written;

• Polygon. Selection of the polygon name which will be included in the set. Use box has
also to be ticked;

• Add Rows. Add a polygon;

• Remove Rows. Delete the chosen file from the list.

18.3. Polygons Union 210


19.1

18.5. Perform boolean operations on polygons


This calculation allows to perform Boolean operations (AND, OR, NOT, i.e. unions, intersec-
tions and subtractions) on polygons.
The following parameters have to be set:

◦ Result Polygon. Name of the resulting polygon;

◦ Operation Type. Type of Boolean operation to perform. The following operations are
available:

◦ Union. Corresponds to the OR operation. An example is given on the Fig. 53;

Figure 53. A) 2 polygons representing channels in a studied area represented by the rectangle
polygon. A union of the two channel polygons is performed in order to obtained the resulting
channel. The result is presented on B).

◦ Subtraction. Corresponds to the NOT operation. An example is given on the Fig.


54;
◦ Intersection. Corresponds to the AND operation. An example is given on the Fig.
55;

◦ First Operand. Selection of the first polygon for the computation. The order is important
if you select subtraction as operation type;

◦ Second Operand. Selection of the second polygon for the computation. The order is im-
portant if you select subtraction as operation type;

18.5. Perform boolean operations on polygons 211


19.1

Figure 54. A) Input polygons. B) The difference of the orange polygon and the green one. C)
The difference of the green polygon and the orange one.

18.6. Create Polygons


This option in Calculations window allows to generate a polygon using point sets, horizons
and 2D maps contour lines as input data.

• by Pointset. The polygon will be generated as a convex envelop of a chosen point set;

– Result Polygon. Name of the resulting polygon;


– Point Set. Selection of the point set which will be used to create the polygon;
– Margin. First to create the polygon by pointset the convex envelop of point set is
created, then this margin is added to the envelop from all sides (in meters).

• By Horizon Contour Lines. The polygon will be generated using the contour lines of
a chosen horizon. This option can be used to display the contour lines of a selected
horizon on a chosen property. Structural contour lines can be displayed on any property
or 2D map. Cf Fig. 56;

– Polygon. Name of the resulting polygon;


– Horizon. Selection of the horizon which will be used to create the polygon;
– Use Splines. Allows to add more points to the polygon. The initial number of
points will be multiplied by the value set in the field Spline Refinement;
– Line Values Determined by. Selection of the method used to determine the num-
ber of lines. Fig.57.
∗ By Line Count. The number of lines set in the field Line Count is added
between the minimum and the maximum values. The Automatically Select
Step option allows to adjust the step to obtain rounded line values (allows to
reduce the number of digits after the decimal point to 3).
– By Step. The lines start at the base value. The number of values is determined by
the Don’t Show More Than parameter and the step is set in the Step field.
∗ Step, m. Step between the lines;

18.6. Create Polygons 212


19.1

Figure 55. A) Input polygons. An intersection is performed, the result is presented on B).

∗ Step Base Value. Start value for the lines;


∗ Don’t Show More Than. Number of added lines;
∗ Prefer Integer Values. The base value will be rounded to the nearest integer.
• By 2D Map Contour Lines. The polygon will be generated using the contour lines of
a chosen 2D map;
– Polygon. Name of the resulting polygon;
– Map 2D. Selection of the 2D Map which will be used to create the polygon;
– Use Splines. Allows to add more points to the polygon. The initial number of
points will be multiplied by the value set in the field Spline Refinement;
– Line Values Determined by. Selection of the method used to determine the num-
ber of lines. Fig.57
∗ By Line Count. The number of lines set in the field Line Count is added
between the minimum and the maximum values. The Automatically Select
Step option allows to adjust the step to obtain rounded line values (allows to
reduce the number of digits after the decimal point to 3);
∗ By Step. The lines start at the base value. The number of values is determined
by the Don’t Show More Than parameter and the step is set in the Step field.
· Step, m. Step between the lines;
· Step Base Value. Start value for the lines;
· Don’t Show More Than. Number of added lines;
· Prefer Integer Values. The base value will be rounded to the nearest
integer.

18.6. Create Polygons 213


19.1

Figure 56. Display of a polygon created by horizon contour lines on the gas in place property.
A) 3D display of the horizon. B) 3D display of the created polygon using the horizon contour
lines. C) Gas-in-Place property and the created polygon in 2D

18.7. Polygon by Horizon intersection


This computation allows to define a polygon as the intersection of 2 horizons or of a fixed
depth and a horizon.
The following parameters have to be set:

◦ Polygon. Name of the resulting polygon;

◦ Surface1, Surface2. Select Horizon and set the corresponding horizon, or Depth and set
the corresponding depth for the two surfaces, see the picture 58;

18.8. Set Polygon Z-Coordinates by Depth


This calculation allows to add a Z coordinate value to the polygons by indicating a constant
depth. All the nodes of the polygons will present the same depth.
The following parameters have to be set:

• Polygon. Select the polygon from the list;

• Depth. Indicate the polygon depth.

18.7. Polygon by Horizon intersection 214


19.1

Figure 57. The yellow lines correspond to the created polygon A – By line count. The number
of lines set in the field Line Count is added between the minimum and the maximum values B
– By Step. The lines start at the base value. The number of values is determined by the Don’t
Show More Than parameter and the step is set in the Step field.

18.9. Set Polygon Z-Coordinates by Horizon


This calculation allows to add a Z coordinate value to the polygons by projecting the polygon
on an existing horizon. Each polygon node will present a Z coordinate value according to the
depth and the geometry of the horizon.
The following parameters have to be set:

• Add Nodes With Step. This option is used to add nodes on the polygon. The points will
be added to the polygon according to the step which will be indicated in this field (in
project units). It is recommended to use this option if the polygon contains few points,
otherwise the polygon will not follow the horizon curvature;

• Polygon. Select the polygon from the list;

• Horizon. Select the horizon on which the polygon will be projected;

• Default Depth. Indicate the depth which will be assigned to the polygon in the areas
where the horizon is not defined.

18.10. Transform Polygon


This calculation allows to rotate, scale and translate a polygon. The following options are
available:

• Result Polygon. Enter the name of the resulting polygon;

• Source Polygon. Select the source polygon;

18.9. Set Polygon Z-Coordinates by Horizon 215


19.1

Figure 58. Display of a polygon (in black) defined as the intersection of two horizons.

• Transformation Type. Select the transformation which will be applied to the polygon.
The following transformations are available:

– Shift. All the points of the polygon will be shifted according to the translation
vector which is set in the fields X and Y;
– Rotate. All the points of the polygon will be rotated in the trigonometric direction
according to the rotation which will be defined in the fields Center X, Y and in
Angle. The angle is measured from the Y axis;
– Scale. The polygon will be scaled according to the scale coefficient which is en-
tered in the field Scale coefficient and the center specified by X and Y coordinates
entered in the fields Center X and Center Y.

18.11. Calculate Polygon Area


This calculation returns the area of a selected polygon. The result is generated as a Table
object and may be seen in the Table tab.
If the polygon is not closed, the calculation returns 0.

18.12. Smooth polygon


In Geometry Objects. tab select Polygons and open Calculations window. In the left section
of the window select the operation Smooth Polygon. The next parameters for this process are
available:

• Source Polygon. Select polygon to be smoothed;

• Result Polygon. Type the name of the result polygon;

18.11. Calculate Polygon Area 216


19.1

• Smoothing Algorithm. The next algorithms are available:

– Splines. Define Subdivision parameter;


– Moving Average. Define Subdivision and Window Length parameters;

Splines. The main idea of this algorithm is an approximation of the polygonal line sec-
tions by cubic splines (by sections of cubic parabolas). For each section a cubic spline is
calculated. At the end points of each section adjacent splines must have the same first and
second derivatives. Thus the splines turn into each other smoothly.
Besides additional points are appended to polygonal lines to make the result curves
smoothed. The quantity of these points is managed by parameter Subdivision. The higher
value of this parameter the less distance between adjacent points the result curve is more
smoothed.
Moving average. The idea of this algorithm is replacement of actual point coordinates by
arithmetic mean of the nearest points coordinates. Parameter Window Length guides what
points are to be included into calculation. This parameter might be called by ‘relative size of
smooth window’ measuring in proportions of common polygon length (values from 0 to 1).

19. Aquifers

Examples of how to use aquifers are shown in training tutorials:

• MD1.4. How To Add Aquifer All Possibilities.

Aquifer model is a combination of Aquifer Geometry and Aquifer Settings.

• Aquifer geometry – the set of grid block attached to Aquifer.

• Aquifer Settings – Aquifer type and the set of corresponding parameters.

One or several Aquifers can be added to the dynamic model in Cases tab.

19.1. Aquifer Geometry


In Calculations menu the following options are available for Aquifer Geometry specification:

19.1.1. Calculate Aquifer by Polygon.


This option is used to define Aquifer geometry via polygon. The calculation generates the
keyword AQUANCON (see 12.17.11) in SOLUTION section of .data file.

The following parameters can be specified in Calculations:

19. Aquifers 217


19.1

• Aquifer Geometry. Name of the created object.

• Direction. Choose the direction of aquifer’s connections to blocks.

• User Cut. Aquifer will be created only in blocks satisfying to the defined property filter.

• Polygon. Polygon based on which an aquifer will be calculated. The available operations
with polygons are described in chapter 18.
Blocks included in the aquifer should satisfy the following conditions:

– if part of block face is in the polygon.


– including blocks in the aquifer depends on above mentioned option Direction. For
example, if the check box I+ is checked then including in the aquifer blocks are
satisfied to above condition and ”visible” from the side placed at I = Ni , i.e. the
boundary with the maximum grid coordinate I .

• Aquifer influx coefficient and Aquifer influx multiplier.

• Connection flag defining whether connections from faces, attached to active blocks,
are allowed. By default grid block will be connected with aquifer only if its face is
connected with inactive block or if block has no neighbors from this face.

19.1.2. Calculate Aquifer by Property.


This option applies propety filter to define the blocks attached to Aquifer. The calculation
generates the keyword AQUANCON (see 12.17.11) in SOLUTION section of .data file.

The aquifer will be attached only to the filtered blocks on the model’s sides. The User cut
can be applied to any Grid Property in the project. Additionally, the filtering property can be
created from scratch via brush tool or Calculator (using IF() operator).

The following parameters can be specified in Calculations:

• Aquifer Geometry. Name of the created object.

• Direction. Choose the direction of aquifer’s connections to blocks.

• User Cut. Aquifer will be created only in blocks satisfying to the defined property filter.

• Aquifer influx coefficient and Aquifer influx multiplier.

• Connection flag defining whether connections from faces, attached to active blocks,
are allowed. By default grid block will be connected with aquifer only if its face is
connected with inactive block or if block has no neighbors from this face.

19.1.2. Calculate Aquifer by Property. 218


19.1

Figure 59. Aquifer creation via polygons. On the left picture Aquifer is attached to one side
of the model. On the right picture Aquifer is attached to all sides of the model.

19.1.3. Calculate Aquifer by Grid.


This calculation is used to define Aquifer connections to the specific parts of reservoir. This
options generates the keyword AQUGP (see 12.17.15) in SOLUTION section of .data file.
The following parameters can be specified in Calculations:

• Aquifer Geometry. Name of the created object.

• Aquifer Type. Type of Aquifer connection to the grid. The following options are avail-
able:

– DEPTH – to connect aquifer on specified depth (depth_value). Algorithm of con-


nection is the following: for each block minimal and maximal depth of its tops are
defined (dmin and dmax ). Then block is connected if depth_value ∈ [dmin , dmax ].
Links of K- direction are never connected, links of the other directions are con-
nected only if connecting block doesn’t have active neighbor one of the same
direction. If Constant Flux Aquifer model is used, then productivity indexes are
equal to connection area. For the other analytical aquifer types productivity indexes
are equal to connection area considering NTG (see 12.2.25);

19.1.3. Calculate Aquifer by Grid. 219


19.1

– BOTTOM – aquifer will be connected to the reservoir bottom. Connection will be


performed only by links of K+ direction. Productivity indexes are equal to aquifer
connection area;
– BOUNDARY – aquifer will be connected to the reservoir boundary. Connection
is performed by links with I+, I-, J+, J- directions only. Productivity indexes are
defined the same way as for DEPTH connection type.
– RESBND – aquifer will be connected to the real reservoir boundary: block is con-
nected only if it is the first active block near grid boundary. Connection is per-
formed by links with I+, I-, J+, J- directions only. Productivity indexes are defined
the same way as for DEPTH connection type.
• Aquifer Connection Depth. This parameter is used only for DEPTH connection type
and it must be specified;
• Equil Region Number. Number of Equilibrium region which blocks are allowed to
connect to aquifer. This parameter is used only for DEPTH connection type.
Default: all region.
• Weighting Type. This parameter is used to calculate blocks productivity indexes for
DEPTH connection type:
– EVEN – all productivity indexes are equal to 1;
– AREA – productivity indexes are equal to connection area considering NTG
(see 12.2.25);
– Default: EVEN.

19.2. Aquifer Settings


Aquifer Settings defines the Aquifer type and its corresponding parameters. The same Aquifer
Settings can be assigned to different Aquifer Geometries.

The detailed description of Aquifer models is provided in Inflow from aquifer chapter of
the tNavigator User Manual.

The following Aquifer models are available:


• Fetkovich Type I. – Fetkovich Aquifer model.
All settings correspond to 2-9 parameters of the keyword AQUFETP (see 12.17.6).
• Fetkovich Type II. – Fetkovich Aquifer model, defines in IM/GE/ST formats.
All settings correspond to parameters of the keywords AQPROP (see 13.3.19), AQLEAK
(see 13.3.16)

! This model is avaliable only in IM/GE/ST formats..

19.2. Aquifer Settings 220


19.1

• Semianalytical.
All settings correspond to parameters of the keywords AQPROP (see 13.3.19), AQLEAK
(see 13.3.16).

! This model is avaliable only in ST format.

• Carter-Tracy.
All settings correspond to 2-13 parameters of the keyword AQUCT (see 12.17.9).

• Constant Flux.
All settings correspond to 2-5 parameters of the keyword AQUFLUX (see 12.17.2).

• Constant Head/Pressure Wat.


All settings correspond to 2-6 parameters of the keyword AQUCHWAT (see 12.17.3).

19.2. Aquifer Settings 221


19.1

20. Faults
In Calculations menu to work with faults the following possibilities are available:

• Import;

• Smooth Fault Surface;

• Approximate Pointsets by Surface;

• Create Fault by Polygons;

• Create Vertical Faults from Polygons;

• Export;

• Create Fault by Seismic Fault;

The following possibilities are available to set fault parameters and to edit faults:

• Fault Settings;

• Fault Editing.

Examples of how to use faults and faults lines are shown in training
tutorials:

• GD2.2. How To Build Grid With Faults;

• GD2.3. How To Create Grid With Y-Faults.

20.1. Fault Settings


The following Faults Settings are available in Cases tab. Properties. Faults:

• Fault. List of the faults which are present in the project;

• Transm. Mult. Transmissibility multiplier value for each fault. Second parameter of the
keyword MULTFLT (see 12.2.39) which will be added to the model. This field can be
edited from the interface by double clicking on it;

• Diffus. Mult. Diffusivity multiplier value for each fault. Corresponds to the third pa-
rameter of the keyword MULTFLT (see 12.2.39) which will be added to the model. This
field can be edited from the interface bu double clicking on it;

20. Faults 222


19.1

• Threshold Pres. Threshold pressure value for each fault. Corresponds to the second
parameter of the keyword THPRESFT (see 12.2.40) which will be added to the model.
This field can be edited from the interface by double clicking on it;

• Fault Renaming Allows to edit fault names in Designer Interface:

– Reduce to 8 symbols. Reduce the name of the fault in Designer to 8 symbols. If


Change Left Part of Word is checked, the 8 first symbols of the name are left. If
not, the 8 last are left.
– Find What Replace With. Allows to edit the name of the faults in the interface.
The symbols which are entered in the field Find What are replaced by the one
entered in Replace with when the button Replace is pressed. These operations can
be undone using the button undo.

20.2. Fault Editing


The Fault Edit menu is available in 3D view and the Edit Fault button is situated on the
right panel ( ). To edit the fault, select the proper fault in the Fault list, click on a node,
select one of the modes and drag the node in 3D. The following options are available in the
dialog:

• Fault. Select the fault to edit from the list of displayed faults. Only the faults selected
in Geometry Objects can be edited;

• Control Size. Set the size of the sphere which indicates the node to be edited. This
parameter is a visualization tool and has no influence on the editing result;

• Do Not Use Fixed Control Size. If this option is activated, the yellow sphere indicating
the edited node will be displayed with a fixed size remaining the same while you zoom
in or out and which will be regulated by the Control Size parameter. This option is a
display tool and has no influence on the fault editing;

• Apply Changes When the Mouse is Released. This option is active for the Perpen-
dicular to Fault and With Arbitrary Direction options. It allows to apply the changes
are applied only when the mouse is released. If the option is not activated, the changes
apply automatically once the node is dragged in space;

• Move the Whole Stick. Allows to edit a whole fault stick. If this option is not activated,
only the selected node and potentially the nodes situated in the action radius (if the
option Use Action Radius is activated) will be affected;

• Type of Control Move. Selection of the editing mode. The following editing modes are
available.

– Along Stick. Allows to move the nodes along a fault stick;

20.2. Fault Editing 223


19.1

– Along Fault Surface. Allows to move the nodes along the fault surface. Modifies
only the nodes coordinates and do not affect the global geometry of the fault;
– Perpendicular to Fault. Moves a node perpendicularly to the fault surface. The
direction is indicated by a stick;
– With Arbitrary Direction. Moves a node in any chosen direction. The direction
is indicated by a stick.

• Use Action Radius. If this option is used, the editing will be applied to all the nodes
situated in the indicated radius around the edited node (marked by the yellow sphere).

• Edit Fault Lines.

– Edit Fault Lines. ( ) Fault Lines editing mode;


– Fault Lines. Select the fault line from the list of displayed fault lines. Only the
fault lines selected in Geometry Objects can be edited;
– Action Radius. If this option is used, the editing will be applied to all the points
situated in the indicated radius;
– To edit a line, click on a line in 3D from the side on which it is defined and drag
it.

20.3. Import
The following import formats are available:

• Curves;

• From Table (3D Fault);

• Surfer .Bln Format;

• Surfer 7 GRD Format;

• Z-Map Plus.

For first and second formats a fault surface is defined by set of simple polygonal chains
in the three dimensional space. Corresponding points of neighbouring polygonal chains are
connected by lines. The loaded file contains points coordinates (x, y, z). For the third and
fourth formats a set of polygons, representing the hangingwall and footwall of the fault for
each horizon is defined in the loaded file. Corresponding points of polygons are connected by
sticks, which is a set of vertical lines representing the slope of the faults.
Interface elements common to all available formats are the following:

• Add Rows. Add file.

• Remove Rows. Delete file from the list.

20.3. Import 224


19.1

• Preview. Number of Lines. Number of loaded file lines shown in the Preview window.

• Select Coordinate Reference System:

– Project CRS. Project coordinate system. It is defined in the menu Settings.


– File CRS. Data coordinate system in the loaded file.

• Invert Z -coordinates. It is recommended to activate this option if loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• Input Units. Choose units system (e.g. METRIC, FIELD, LAB). Available units are
METRIC, FIELD, LAB. If option Not specified is activated, units are defined by default
in Document. Settings menu.

Other settings are specific to each particular format.

20.3.1. Curves
• Automatically reorder sticks. Automatic ordering of loaded curves. Ordering is done
in the following way:

1. Sticks are numbered in the order of their appearance in the loaded file. The average
depth z0 of points defining a stick.
2. The surface Z = z0 is created. Intersection points of the fault with this surface are
found. Each point corresponds to its stick.
3. The line, which approximates points set in the best way, is constructed.
4. Points projections on the obtained line are built. Projection points are numbered
and sticks are renumbered: stick number is assigned to the number of points cor-
responding to a stick.

• Automatically reorder stick points.

Format description. The file contains several curves. Each curve is described by points
set. Each point has its coordinates (x, y, z). Initially, the first curve points are followed by the
second curve points etc.
Two file formats are supported:

1. From Curves. Curves are separated from each other by lines ”999.000000 999.000000
999.000000”.

20.3.1. Curves 225


19.1

Example
462371.578491 5937306.051758 1665.394653
462390.957214 5937310.997803 1697.219849
462701.016907 5937390.136719 2228.605469
462739.774384 5937400.029053 2305.924805
999.000000 999.000000 999.000000
462374.560120 5937573.822510 1446.748535
462381.576111 5937581.040771 1504.181274
462393.749268 5937598.266602 1657.436157
462608.282715 5937656.375488 2323.370361
999.000000 999.000000 999.000000
462692.342529 5937181.511230 2067.374023
462711.721252 5937186.457031 2101.812012
462769.857468 5937201.295898 2212.541504
462808.614914 5937211.188477 2287.954590
999.000000 999.000000 999.000000

2. CPS-3. The beginning of the curve is defined by the line which starts from symbol
”–>”.
Example
FFASCI 0 1 ''LINES'' 0 1e+10
FFATTR 0 1
->1
-1168.400000 1062.000000 -735.000000
-1171.680952 1065.452381 -740.571429
-1174.961905 1068.904762 -746.142857
-1181.523810 1075.809524 -757.285714
-1184.804762 1079.261905 -762.857143
-1191.366667 1086.166667 -774.000000
-1194.647619 1089.619048 -779.571429
-1201.209524 1096.523810 -790.714286
->2
-3550.600000 -853.000000 -839.000000
-3566.855556 -835.861111 -862.222222
-3583.111111 -818.722222 -885.444444
-3599.366667 -801.583333 -908.666667
-3615.622222 -784.444444 -931.888889
-3631.877778 -767.305556 -955.111111

20.3.1. Curves 226


19.1

20.3.2. From Table (3D Fault)


• XY Units. Choose units system for X and Y axes. Available units are METRIC, FIELD,
LAB. If option Not specified is activated, units are defined by default in Document.
Settings menu.

• Z Units. Choose units system for Z axis. Available units are METRIC, FIELD, LAB.
If option Not specified is activated, units are defined by default in Document. Settings
menu.

Format description. The file contains a table consisted of twelve columns. Each column
has a fixed width. Each data column has a particular purpose. The detailed description of all
parameters is given in the table shown below.
The file defines a set of faults. Each fault is defined by the set of curves. Each curve is
defined by the set of points. Each table line describes one point. For each point the following
parameters should be defined: its coordinates, its position in curve (first, intermediate, last),
fault name, XY units and Z units (depth and time). It should be noticed that curve points are
listed in a table one by one, i.e. the first point is followed by intermediate points and the last
point.

Column Column width Content Data type


1 12 X Real
2 12 Y Real
3 12 Z (depth) Real
4 3 Colour Integer (1-64)
5 2 Fault type Integer (is not used)
6 2 Point type Integer (1 is the beginning
of the curve point, 2 is inter-
mediate point, 3 is the curve
last point)
7 50 Fault name Line
8 5 Interpreter Line (is not used)
9 12 Depth type Line (TIME/DEPTH)
10 14 Survey Line (is not used)
11 20 XY Units Line (METERS/FEET)
12 6 Z Units Line (ms/seconds or ME-
TERS/FEET depends on
depth type)

20.3.2. From Table (3D Fault) 227


19.1

Example
448460.997 486599.560 6198.600 41 1 1Fault1 GEO DEPTH Sooner3D
FEET FEET
2448460.997 486599.560 6503.600 41 1 3Fault1 GEO DEPTH
Sooner3D FEET FEET
2450294.620 484225.149 6196.400 41 1 1Fault1 GEO DEPTH
Sooner3D FEET FEET
2450394.610 484226.558 6432.400 41 1 2Fault1 GEO DEPTH
Sooner3D FEET FEET
2450394.610 484226.558 6499.400 41 1 3Fault1 GEO DEPTH
Sooner3D FEET FEET
2451726.875 481945.095 6195.400 41 1 1Fault1 GEO DEPTH
Sooner3D FEET FEET
2451726.875 481945.095 6398.400 41 1 2Fault1 GEO DEPTH
Sooner3D FEET FEET
2451825.457 482046.494 6498.300 41 1 3Fault1 GEO DEPTH
Sooner3D FEET FEET
2452469.058 478955.252 6206.000 41 1 1Fault1 GEO DEPTH
Sooner3D FEET FEET
2452469.058 478955.252 6403.700 41 1 2Fault1 GEO DEPTH
Sooner3D FEET FEET

20.3.3. Surfer .Bln Format


• Name Prefix.

• Top. (METRIC: m, FIELD: f t )

• Bottom. (METRIC: m, FIELD: f t )

Format description. The file contains set of polygons. A polygon is described by the set
of polygon’s corners – points. The number of points is defined in the separate line before
polygon’s points. It is possible to have two numbers in the line, the first one is the number of
points. The second number is ignored. Thus, the file structure is the following:

• a line, which defines the number of points in the set;

• the above line is followed by lines contained coordinates of points in the set.

Points are defined by their coordinates. Each point coordinates are written in the separate
line and separated by commas.
Each points set in the file describes a curve. Faults are vertical surfaces. Each fault is
defined by vertical lines passing through points of the corresponding curve. Then, faults are
cut at the top by the value defined in Top, and at the bottom by the value in Bottom.

20.3.3. Surfer .Bln Format 228


19.1

Example
4,0
17856.63489,6658.68163,0
17861.12519,6658.372,0
17875.46317,6649.609481,0
17880,6648.635638786964,0
8,0
17750,6622.511664327508,0
17751.68145,6622.511664,0
17759.38253,6622.511665,0
17768.69632,6622.074379,0
17775.94934,6620.203068,0
17786.25336,6618.328153,0
17795.78362,6617.355725,0
17857.69565,6615.201342,0
3,0
17754.75112259643,6700,0
17754.85626,6699.875191,0
17759.6023,6698.34022,0

20.3.4. Surfer 7 GRD Format


• Top. (METRIC: m, FIELD: f t )

• Bottom. (METRIC: m, FIELD: f t )

Binary file format.

20.3.5. Z-Map Plus


• Automatically reorder sticks. Automatic ordering of loaded curves.

• Automatically reorder stick points. Automatic ordering of points on curves.

Format description. The file contains a description section which starts and ends with
@. The description contains the names and layout of data columns which follow afterwards.
Normally these include the coordinates and some sort of curve ID for each point.
Any line starting with "!" is considered a comment.

20.3.4. Surfer 7 GRD Format 229


19.1

Example
! Export file created Nov/12/2018 12:05:06 PM CST
!................................................
@FAULT FILE,FALT ,80, 1
X (EASTING) , 1, 1, 1, 1, 15, 7, -98765, , 15, 7, 0
Y (NORTHING) , 2, 2, 1, 16, 30, 7, -98765, , 15, 7, 0
Z VALUE , 2, 2, 1, 31, 45, 7, -98765, , 15, 7, 0
SEG I.D. , 2, 2, 1, 46, 60, 7, -98765, , 15, 7, 0
@
1325772.14 10490478.61 10484.20 1
1323207.84 10487914.29 8163.57 1
1322287.33 10486993.77 7257.42 1
1320754.00 10485460.43 5603.29 1
1325400.90 10490455.35 10340.54 2
1322880.44 10487934.86 7964.66 2
1321294.77 10486349.18 6450.19 2

20.4. Smooth Fault Surface


• Input Surface. Name of the surface which will be smoothed.

• Smoothed Surface. Smoothed surface name.

• Smoothing Algorithm:

◦ Splines. Lines connected neighbouring points of top and bottom fault boundaries are
smoothed using cubic splines. First, lines connected x coordinates of initial points
are smoothed, the same procedure is repeated for lines connected y coordinates
of points and then z coordinates. Number of points adding to a line is defined by
parameter Subdivision.
◦ Moving Average. A stick points position is smoothed as follows: for each sticks
node the neighbouring radius r is calculated. r is a product of the value defined in
Radius for Moving Average with boundary length. All points placed in the circle
of radius r with the center at the stick node are averaged, i.e. average values of
their coordinates are calculated. The point with averaged coordinates is the result
of smoothing in this stick node.

• Extend Surface Vertically:

◦ Top. Last top stick line is continued up to intersection with the surface Z = z0 , where
z0 is the parameter value in this field.
◦ Bottom. Last bottom stick line is continued up to intersection with the surface Z =
z0 , where z0 is the parameter value in this field.

20.4. Smooth Fault Surface 230


19.1

20.5. Approximate Pointsets by Surface


This computation allows to create a new fault by defined pointsets.

◦ Output Fault. Name of the resulting fault;

◦ Top. Define a top depth for the resulting fault which will be cut by this depth;

◦ Bottom. Define a bottom depth for the resulting fault which will be cut by this depth;

◦ Point Set. List of point sets used for the computation;

◦ Add Rows. Add a point set for the computation;

◦ Remove Rows. Remove a selected point set;

◦ Points by I. Number of nodes of the resulting fault in I direction;

◦ Points by J. Number of nodes of the resulting fault in J direction.

20.6. Create Fault by Polygons


This computation allows to create a fault using 2 or more polygons. The depth of each polygon
can be set using the computations Set Polygon Z-Coordinates by Depth and Set Polygon Z-
Coordinates by Depth. The number of sticks will depend on the number of points on the
polygons.

• Result Fault. Name of the resulting fault.

• Polygon. List of polygons used for the computation. The polygons have to be listed from
the top to the bottom of the fault. 2 polygons at least have to be used.

• Add Rows. Add a polygon for the computation.

• Remove Rows. Remove a selected polygon.

20.7. Create Vertical Faults from Polygons


This computation allows to create a vertical fault using polygons.

◦ Top. Define a top depth for the resulting fault which will be cut by this depth;

◦ Bottom. Define a bottom depth for the resulting fault which will be cut by this depth;

◦ Polygon. List of the polygons which will be used for the computation. One polygon is
defined by fault;

◦ Fault. Name of the resulting fault;

20.5. Approximate Pointsets by Surface 231


19.1

◦ Add Rows. Add a polygon for the computation;

◦ Remove Rows. Remove a selected polygon;

◦ Autodetect. Automatically name the resulting faults using the name of the corresponding
polygon.

20.8. Export
This option allows to save the files which contain faults. The faults are exported to the format
From Curves.

20.8.1. Export Fault as Curve Set


1. Export Fault Surfaces.

• Output Folder. Define a folder name in which all Horizons will be saved.
• Fault Surface. Define a name of exported fault surface.
• Input Units. Define the units (METRIC, FIELD, LAB) in which data will be
saved. Available units are METRIC, FIELD, LAB. If option Not specified is acti-
vated, units are defined by default in Document. Settings menu.

20.8.2. Create Fault by Seismic Fault


This option allows to convert a fault picking in time (seismic fault) into a surface in depth,
using check-shot data. The following parameters must be specified:

• Seismic Fault. Selection of the seismic fault which will be converted in depth.

• Seismic Survey Type. Selection of the type of seismic data used for the picking.

• Seismic. Selection of the seismic survey.

• Output. Result Fault. Name of resulting fault.

• Time-Depth Relation Log. Check-shot log which will be used to build the fault.

• Time-Depth Relation Log Type. Define the log type (one way ot two-way time).

• Well Filter. Selection of the well filter containing all the wells with check-shot data
which will be used in the computation.

20.8. Export 232


19.1

21. Fault Lines


Fault Lines are defined as the intersection between horizons or point sets and faults. These
objects are stored in Geometry Objects and can be generated during the grid creation.

Examples of how to use faults and faults lines are shown in training
tutorials:

• GD2.2. How To Build Grid With Faults;

• GD2.3. How To Create Grid With Y-Faults.

21.1. Create and visualize fault lines


Fault lines can be created during the Create Grid by Horizon and Faults and Create Grid by
Point Sets&Faults calculations. To visualize it in 3D, the following settings are available in
the Settings panel, in Faults category:

• Show Fault Lines. Allows to visualize the fault lines;

• Show. Visualize the lines situated on one side of the fault (Left Lines Only or Right
Lines Only) or Both Lines;

• Fault Lines Width.

• Selected Lines Width.

• Left Lines Color. Set the same color to the lines situated on the same side of the fault;

• Right Lines Color. Set the same color to the lines situated on the same side of the fault;

• Selected Lines Color. Color of the edited fault line.

21.2. Edit the Fault Lines


The Fault Lines editing is available in the menu Fault Editing.

21.3. Use Fault Lines for the grid computation


After the lines are edited, the grid can be re-computed (cf. Create Grid by Horizon and Faults
and Create Grid by Point Sets&Faults, Fault Lines Usage) parameter.

21. Fault Lines 233


19.1

22. Faulted Horizons


Faulted horizons are produced in the process of building the grid with faults. Faulted horizons
are built based on markers and faults or set of points and faults. In contrast to horizons, which
are functions of depth, i.e. H = H(X,Y ), faulted horizons are multivalued functions, i.e. one
coordinate (X,Y ) is associated with set of depths H1 , H2 , ...: H(X,Y ) = H1 , H(X,Y ) = H2 , ....
In Calculations faulted horizons can be interpolated.

• Create Multivalued (Faulted) Horizon by Grid Layer

• Create Multivalued (Faulted) Horizon by Grid Filter

22.1. Create Multivalued (Faulted) Horizon by Grid Layer


Faulted horizon by grid layer is created on the cell faces of the defined layer. Generally it is
defined by an arbitrary irregular grid. There is possibility to interpolate such horizons onto
regular 2D grid in the plane XOY using Least square method. A trend for faulted horizon
interpolation can be called for (e. g. from seismic data).

The following settings are available:

• Grid. Select 3D grid.

• Horizon. Define the name of created horizon.

• Layer. Select number of the layer to be used for horizon construction.

• Use Top Points of Block. Toggle on to create a horizon based on top cell faces. Other-
wise the calculation will be performed for bottom faces.

22.2. Create Multivalued (Faulted) Horizon by Grid Filter


Faulted horizon by grid filter is created on the cell faces of the defined values of a discrete
property. Generally it is defined by an arbitrary irregular grid. There is possibility to interpo-
late such horizons onto regular 2D grid in the plane XOY using Least square method. A trend
for faulted horizon interpolation can be called for (e. g. from seismic data). This calculation is
often performed to get a top reservoir map (in Filter Property select Lithology, in Condition
define the value 1).

The following settings are available:


• Target Horizon. Define the name of created horizon.

• Grid. Select 3D grid to be used for horizon construction.

• Filter Property. Select 3D property to be used for filtering.

22. Faulted Horizons 234


19.1

• Condition. Select filter settings.

• Use Top Blocks of Filter. Toggle on to create a horizon based on top cell faces. Other-
wise the calculation will be performed for bottom faces.

22.2. Create Multivalued (Faulted) Horizon by Grid Filter 235


19.1

23. Point Sets


In Calculation the next parameters are available to work with point sets:

• Import
– XYZ format
– Lines (ASCII)
– CPS-3 lines
– Import Pointsets from Shapefile
– ZMap plus
• Import With Attributes
• Export
– Export all PointSets in XYZ format
– Export all PointSet in XYZ format
• Create Point Set by Horizon
• Create Point Set by Multivalued (Faulted) Horizon
• Create Point Set by Polygon
• Create Point Set by Seismic Horizon
• Create Point Set by Seismic Horizon (Velocity Model)
• Create Point Set by Seismic Fault
• Create Point Set by Seismic Fault (Velocity model)
• Create Point Set as Wells and Horizon Intersection
• Create Point Set by Marker
• Clear Point Set Near Faults
• Clear Point Set Inside Polygon
• Create a Point Set by Grid Layer
• Pointsets Union
• Shift Point Set by Vector
• Z Calculator
• Numeric Attributes Calculator

23. Point Sets 236


19.1

23.1. Import
A point set can be imported in the following formats:
• XYZ format
• Lines (ASCII)
• CPS-3 lines
• Import Pointsets from Shapefile
• ZMap plus

23.1.1. XYZ format


In the loaded file point’s coordinates (x, y, z) in the three dimensional space are defined.
• Add Rows. Add files with a set of points;
• Remove Rows. Delete file from the list;
• Delimiter. Define a symbol separating table columns (e.g. tab or space symbols);
• Comment. Define a comment symbol. Comments start with the determined symbol and
all text following the symbol will be ignored;
• Skip lines. Skip defined number of lines starting from the beginning of the file;
• Invert Z-coordinates. It is recommended to activate this option if the loaded trajectories
were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward;
• XY Units. Choose units system for X and Y axes. Available units are METRIC, FIELD,
LAB. If option Not specified is activated, units are defined by default in Document.
Settings menu.
• Z Units. Choose units system forZ axis. Available units are METRIC, FIELD, LAB.
If option Not specified is activated, units are defined by default in Document. Settings
menu.

Example
420467.295654 7246003.404053 2487.228271
420467.295654 7246053.668579 2480.297363
420467.295654 7246103.933105 2473.079834
420517.610107 7246103.933105 2468.294922
420467.295654 7246154.197632 2465.580322
420517.610107 7246154.197632 2460.757812
420416.981201 7246204.462280 2463.250244

23.1. Import 237


19.1

23.1.2. Lines (ASCII)


The description of the format is given in the section Curves (a format type to import Faults).
Parameters to import a point set are:
• Add Rows. Add a file.
• Remove Rows. Remove a file from the list.
• Number of Lines.
• One Point Set per file. In each file there is one point set.
• Invert Z coordinate. It is recommended to activate this option if loaded trajectories
were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.
• Input Units. Choose a system of units (METRIC, FIELD, LAB).

23.1.3. CPS-3 lines


The description of the format is given in the section Curves (a format type to import Faults).
Parameters to import a point set in this format coincide with those for Lines (ASCII).

23.1.4. Import Pointsets from Shapefile


Point sets can also be loaded from Shapefiles.
The shapefile format is a geospatial vector data format. A shapefile contains a main file,
an index file and a dBASE table. The main file is a description of the object geometry and
contains a list of vertices. The index file provides a positional index of the object geometry,
while the dBASE table is a list of the object attributes.
The following parameters have to be specified:

• File Name. Complete path to the .shp file;


• Name prefix. Name of the loaded object in Designer;
• Add Rows. Add a file;
• Remove Rows. Remove a file. The removed file will not be loaded;
• Ignore index file. This option can be used to force the visualization of the object in
case of corrupted index files ;
• Select Coordinate Reference System. These field is active when a coordinate system
is set for the entire project and allows to set a coordinate system (CRS) for the file,
which can differ from the project CRS. To change the file CRS, select a CRS from the
list available by clicking on the ellipsis button. The project CRS can be modified, as
described in the section 2.2.

23.1.2. Lines (ASCII) 238


19.1

23.1.5. ZMap plus


The next parameters are available:

• Add Rows. Add a file.


• Remove Rows. Remove a file from the list.
• Number of Lines.
• Invert Z coordinate. It is recommended to activate this option if loaded trajectories
were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.
• Select Coordinate Reference System. These field is active when a coordinate system
is set for the entire project and allows to set a coordinate system (CRS) for the file,
which can differ from the project CRS. To change the file CRS, select a CRS from the
list available by clicking on the ellipsis button. The project CRS can be modified, as
described in the section 2.2.

23.2. Import With Attributes


Point sets may have numeric attributes with values associated to each point. An attribute is
treated as an object in its own right, attached as a child object to the point set.
To populate a point set attribute with values, it may be either imported together with the
point set (see 23.2) or assigned by mathematical calculations (see Calculator).
Point set attributes may be used in the universal interpolation available for horizons (see
13.5) and 2D maps (see 14.9). Format Import with attributes is the same like in XYZ format,
only there is possibility to select one or several columns that contain numeral attributes. There
are two available formats for importing of point sets with attributes. ASCII table and ASCII
internal points. There are some examples of these formats with setting.
• ASCII table. Format example:

Example
Name;X;Y;Z;Azimuth;Dip;Aperture;Area;Permeability;Porosity;
St1;674811.16;2647361.99;3741.69;324.56;89.6;0.03;15.9;0;0.0;
St1;674807.05;2647359.11;3741.69;324.56;89.6;0.03;15.9;0;0.0;
St1;674807.05;2647359.11;3736.61;324.56;89.6;0.05;19.1;0;0.0;
St1;674811.16;2647361.99;3736.61;324.56;89.6;0.05;19.1;0;0.0;
St1;674802.93;2647356.23;3741.69;324.56;89.6;0.07;19.1;0;0.0;
St1;674802.93;2647356.23;3736.61;324.56;89.6;0.07;19.1;0;0.0;
St1;674798.82;2647353.35;3741.69;324.56;89.6;0.09;19.1;0;0.0;
St1;674798.82;2647353.35;3736.61;324.56;89.6;0.09;19.1;0;0.0;

• ASCII internal points. Format example:

23.1.5. ZMap plus 239


19.1

Example
String Horizon
String Well
457448.150 6786056.900 1899.910 TopTarbertC B-1
456078.750 6787074.150 2017.410 TopTarbertC B-12
458065.450 6786669.650 1878.260 TopTarbertC B-15
456802.550 6786275.800 1883.710 TopTarbertC B-17

• Add Row. Add the file with a pointset.

• Remove Rows. Remove file from the list.

• Add Row. Add a string with the name and type of attribute.

• Remove Rows. Remove a string with the name and type of attribute.

• Autodetect. By pressing of the button Autodetect two parameters from importing file
are loaded Attribute Name and Type. They are displayed in the appropriate section of
the window Import with attributes.

• Preview. This section consist of several parameters:

– Delimiter: From the dropped list select the delimiter: Tab, All spaces, Comma,
Semicolon, Underscore.
– Comment: Specify the sign indicating the Comments beginning in the importing
file. The consecutive signs will be ignored.
– Skip Lines: This number of lines from the beginning of file are not being imported.
– Preview. Possibility to preview the importing file and to edit its headers.

• Use OEM Encoding It is recommended to toggle this field if the importing file has the
old encoding type (for example, DOS).

• Select Coordinate Reference System. These field is active when a coordinate system
is set for the entire project and allows to set a coordinate system (CRS) for the file,
which can differ from the project CRS. To change the file CRS, select a CRS from the
list available by clicking on the ellipsis button. The project CRS can be modified, as
described in the section 2.2.

• Invert Z coordinate. It is recommended to activate this option if loaded trajectories


were generated by the third-party software which has the opposite direction of Z axis.
Here Z axis is directed downward.

• XY Units. Choose units system for X and Y axes. Available units are METRIC, FIELD,
LAB. If option Not specified is activated, units are defined by default in Document.
Settings menu.

23.2. Import With Attributes 240


19.1

• Z Units. Choose units system forZ axis. Available units are METRIC, FIELD, LAB.
If option Not specified is activated, units are defined by default in Document. Settings
menu.

• N/A: Define the value that means the no data in the importing file.

23.3. Export
A point set can be exported using the following ways:

• Export all PointSets in XYZ format;

• Export all PointSet in XYZ format.

23.3.1. Export all PointSets in XYZ format


• Output Folder. Define a folder name in which all Point Sets will be saved.

• Output Units. Choose a system of units (METRIC, FIELD, LAB).

23.3.2. Export all PointSet in XYZ format


• File Name. Name of the file, in which the selected point set will be saved.

• PointSet. Name of the exporting point set.

• Output Units. Choose a system of units (METRIC, FIELD, LAB).

23.4. Create Point Set by Horizon


Horizon points satisfying the filter condition defined below will be included in the set of
points.

• Point Set. Name of the creating set.

• Horizon. Horizon used to create a set of points.

• Thinning coefficient. Allows to decrease a number of horizon’s points in order to


accelerate the grid construction process. Thinning coefficient c varies in the range:
0 < c ≤ 1. The number of horizon’s points is multiplied by the coefficient. The rest of
the points are distributed on the grid with uniform step.

• Distances From Faults. Table with the following columns:

– Use. Use or not use fault for the nodes filtration.


– Fault. Fault name.

23.3. Export 241


19.1

– Distance. Grid nodes placed at the defined distance from the fault or closer are
excluded from the set of points.

• Gradient Threshold (angle in degrees). Grid nodes, in which an inclination angle


between a horizon and XOY surface is higher than the threshold value, are excluded
from the set of points. The inclination angle varies from 0◦ to 90◦ .

23.5. Create Point Set by Multivalued (Faulted) Horizon


This computation allows to create a point set using a Faulted Horizons as input data. The
field Point Set must contain the name of the resulting point set and the field Multivalued
(Faulted) Horizon contains the faulted horizon used as input data. The points will be located
at the horizon nodes.

23.6. Create Point Set by Polygon


This computation allows to create a point set using Polygons as input data. The field Point Set
must contain the name of the resulting point set and the field Polygon contains the polygon
used as input data. The points will be located at the polygon nodes.

23.7. Create Point Set by Seismic Horizon


This computation allows to create a point set using a seismic horizon. The points will be
located at the horizon nodes.

• Point Set. Name of the created point set;

• Seismic. Name of the interpreted seismic;

• Seismic Horizon. Name of the seismic horizon which will be used for the computation.

23.8. Create Point Set by Seismic Horizon (Velocity Model)


This computation allows to create a point set using a seismic horizon. The points will be
located at the horizon nodes and will be converted to depth using an imported seismic velocity
model.

• Point Set. Name of the created point set;

• Seismic Horizon. Name of the seismic horizon which will be used for the computation;

• Velocity model. Select the velocity model for the conversion. The velocity model has
to be imported as a seismic survey (SEGY file), cf Import.

23.5. Create Point Set by Multivalued (Faulted) Horizon 242


19.1

23.9. Create Point Set by Seismic Fault


This computation allows to create a point set using a seismic fault. The points will be located
at the fault stick nodes and will be converted to depth using a checkshot log.
• Point Set. Name of the created point set;
• Seismic Fault. Name of the interpreted seismic fault;
• Time Depth Relation Log. Name of the checkshot log which will be used for the
computation.
• Time Depth Relation Log Type. Selection of the relation type (One way time or two
way time)
• Well Filter. The computation is performed only for the wells selected in the filter.

23.10. Create Point Set by Seismic Fault (Velocity model)


This computation allows to create a point set using a seismic fault. The points will be located
at the fault stick nodes and will be converted to depth using an imported seismic velocity
model.
• Point Set. Name of the created point set;
• Seismic fault. Name of the seismic fault which will be used for the computation;
• Velocity model. Select the velocity model for the conversion. The velocity model has
to be imported as a seismic survey (SEGY file), cf Import.

23.11. Create Point Set as Wells and Horizon Intersection


Horizon intersection points with well trajectories will be included in creating set of points.
• Point Set. Name of the creating set of points.
• Well Filter. Horizon intersection with wells satisfied to defined filter will be calculated.
• Horizon. Horizon used to create a point set.

23.12. Create Point Set by Marker


A set of points will be coincide with selected well markers.
• Point Set. Name of the creating point set.
• Well Marker. Marker used to create a point set.
• Well Filter. Markers for wells satisfied to the filter will be selected.
• Z Shift. (METRIC: m, FIELD: f t ) All points shift in the direction of Z- coordinate
increase.

23.9. Create Point Set by Seismic Fault 243


19.1

23.13. Clear Point Set Near Faults


The calculation allows to exclude points satisfied to conditions below from a set of points.

• Result Point Set. Name of the point set after cleaning.

• Result Horizon. Horizon obtained by interpolation of the initial set of points. An inter-
polation is carried out using LSM with default settings.

• Result Gradient 2D Map. Gradient 2D map is calculated in order to use a gradient


filter (parameter Gradient Threshold see below). In order to see this map in the 2D
Map list this option should be activated.

• Source Point Set. Set of points for modification.

• Band Width. (METRIC: m, FIELD: f t ) Grid nodes placed at the defined distance
from the fault or closer are excluded from the set of points.

• Gradient Threshold (angle in degrees). Grid nodes, in which an inclination angle


between a horizon and XOY surface is higher than the threshold value, are excluded
from the set of points. An inclination angle varies from 0◦ to 90◦ .

23.14. Clear Point Set Inside Polygon


The calculation allows to exclude points situated inside the defined polygon.

• Result Point Set. Name of the point set after cleaning.

• Source Point Set. Set of points for modification.

• Polygon. Set the polygon used for the computation. The polygon has to be closed.

23.15. Create a Point Set by Grid Layer


This option allows to create a point set along a chosen grid layer.

• Result Point Set. Name of the point set which will be created.

• Layer. Selection of the layer along which the point set will be calculated.

• Use Top Points of Block. If this option is selected, the point set will pass through the
top of the blocks, if not, it will pass through the bottom.

• Distance From Faults. Allows to take the faults into account. When this option is
activated, a field with the fault list appears. The faults for which the column Use is
ticked will be taken into account. The distance set in the field Distance will work as a
margin: only the points situated beyond that distance will be a part of the point set.

23.13. Clear Point Set Near Faults 244


19.1

23.16. Pointsets Union


This calculation allows to obtain a point set by union of several points sets.

• Result Point Set. Set the resulting point set.

• Add Rows. Add point sets for the union (a point set has to be chosen from the list
available by double click on the row).

• Remove Rows. Remove point sets.

• Apply. Create a point set from the union defined above.

23.17. Shift Point Set by Vector


This computation allows to translate a point set by a vector.

• Result Point Set. Name of the resulting point set;

• Initial Point Set. Name of the point set which has to be translated;

• X Shift, m. Shift length along X;

• Y Shift, m. Shift length along Y;

• Z Shift, m. Shift length along Z;

23.18. Z Calculator
Allows to set the depth of the points. See Calculator for more information.

23.19. Numeric Attributes Calculator


This window allows to compute the numeric attribute of a given point set. See Calculator for
more information.

23.16. Pointsets Union 245


19.1

24. Tables
Tables description is presented in this section. These objects, corresponding to report tables
can be visualized in the tab Table. Available calculations allows to load, export and create a
report table for a 3D property (see Grid Properties) or a 2D map (see 2D-Maps), which have
to be created beforehand.
The following Calculations are available:

• Export

• Import

• Create a Table from Property

• Create Table from Map

• Create Log Statistics Table

Tables can be used for matching and uncertainty analysis in geological model
i (estimate of fluids-in-place, etc.), see the section Run AHM from Model and
Geology Designers and Assisted History Matching User Guide.

24.1. Export
This calculation allows to export a created table in text format.

• File Name. complete path of the exported file;

• Table. Name of the exported table in the project;

• Field Delimiter. Selection of the columns delimiter type from the list containing Tab;
All Spaces, Comma, Semicolon delimiters. If another type of delimiter is needed, the
option Other Delimiter has to be ticked and the delimiter has to be entered in the field.

! Note that if the exported table has to be imported in a tNavigator project,


the type of delimiter has to be chosen from the list of available delimiters.

24.2. Import
Report tables can be imported to Geology Designer projects in text formats. The field delimiter
has to be one of the following: Comma, Tab, Space, Semicolon. The following options are
available:

• Table File Names. List of imported tables. To add a new table, the option Add Rows has
to be used;

24. Tables 246


19.1

• Preview. Preview of each imported table. The number of displayed lines is given by the
number of lines;

• Field Delimiter. Selection of the field delimiter of the file.

24.3. Create a Table from Property


This calculation allows to create a report table by regions. In order to generate a report, a grid
property has to be created beforehand. It can be done, for example, as in 26.8.2. Calculate
Geometrical Volume.

• Table. Name of the table in the project;

• Property. The property for which the report will be generated has to be selected from the
dropdown list;

• Statistic type. Selection of the statistic value which will be computed for each property.
The proper type has to be selected from the dropdown list.

◦ Sum. Calculates the sum of all the values;


◦ Max. Allows to display the maximum value of the property;
◦ Min. Allows to display the minimum value of the property;
◦ Mean. Calculates the arithmetic mean;
◦ Entries. Displays the number of entries for each region (number of blocks);
◦ RMS. Calculates the root mean square of the property;
◦ Weighted Mean. Calculates the weighted mean of the property. The property corre-
sponding to the weights has to be selected in Weights.

• Discrete Property 1, 2. Properties containing the numbers of regions. The statistics will be
calculated separately for each region, and also for each intersection of regions defined
by the properties 1 and 2 (in case if both are used); see figure 60.

• Weights. Selection of the property corresponding to the weights which are used for the
Weighted Mean calculation.

24.4. Create Table from Map


This calculation allows to create a report table by 2D map. In order to generate a report, the
map has to be computed befforehand.

• Table. Name of the table in the project;

• Map. The map for which the report will be generated has to be selected from the dropdown
list;

24.3. Create a Table from Property 247


19.1

Figure 60. Mapping property regions to entries in the table

• Statistic type. Selection of the statistic value which will be computed for each property.
The proper type has to be selected from the list available by double clicking on the
white field.

◦ Sum. Calculates the sum of all the values;


◦ Max. Allows to display the maximum value of the property;
◦ Min. Allows to display the minimum value of the property;
◦ Mean. Calculates the arithmetic mean;
◦ Entries. Displays the number of entries for each region (number of blocks);
◦ RMS. Calculates the root mean square of the property;
◦ Weighted Mean. Calculates the weighted mean of the property. The property corre-
sponding to the weights has to be selected in Weights.

• Boundary. Domain for which the statistics will be calculated. Everything outside it will be
ignored.

• Filter polygon 1, 2. Polygons splitting the map into regions. The statistics will be presented
separately inside and outside each polygon, and also for the intersections of polygons 1
and 2 (in case if both are used); see figure 61.

24.4. Create Table from Map 248


19.1

• Weights. Selection of the property corresponding to the weights which are used for the
Weighted Mean calculation.

Figure 61. Mapping polygonal areas to entries in the table

24.5. Create Log Statistics Table


Creating of a log statistics table for defined intervals.

• Table — table name in the project;

• Source Log — select the log to get statistics for it;

• Log Step, m — define the sample interval;

• Well Filter — calculation only for certain group of the wells;

• Top Marker and Bottom Marker — define the depth range for statistic information anal-
ysis;

• Interval Name — define an interval name.

• Add Row — add a row to the table.

• Remove Rows — remove rows.


The following statistic parameters are contained in the table figure 62:

24.5. Create Log Statistics Table 249


19.1

◦ Well. Well number;


◦ Interval. Interval name;
◦ Log. Log name;
◦ Min. Min value of an explored parameter;
◦ Max. Max value of an explored parameter;
◦ Average. Average parameter value;
◦ Median. Median parameter value;
◦ RMS. Variance;
◦ Total Length, m. Total length of a well inside defined interval;
◦ Total Log Length, m. Total log length inside defined interval.

Figure 62. Example of a statistic table for GR

25. 3D Grids. Model grids


In this section the possibilities to work with a 3D grid are described. The description of possi-
bilities to work with properties is given in the section Properties. Depending on the structure,
Corner Point (ZCORN, see 12.2.9) or CORNERS (see 12.2.123) grid will be generated. ZCORN
(see 12.2.9) format will be used for simple geometries, while CORNERS (see 12.2.123) format

25. 3D Grids. Model grids 250


19.1

will be generated when structural faults are present. The grid will be exported in the proper
format if the entire model is exported.

• Multiple grids in one project

• Import. Load Grid

• Create Grid

– Create Simple Grid


– Create Grid by Horizons
– Create Grid by Horizon and Faults
– Create Grid by Point Sets&Faults
– Create Grid by Structural Model
– Create Coarse Grid (upscaling)
– Create Fine Grid (downscaling)

• LGR Operations

– Create Simple LGR


– Create LGRs by Wells
– Create LGRs by Filter Property
– Remove LGR

• Transformations

– Edit Grid
– Translate & Rotate Grid
– Cut Grid 3D
– Update Grid

• Add Geological K to Grid 3D

• Import Existing Model

• Calculate Grid Geometry Properties

• Export

– Export. Grid
– Export. All Maps to GRID_ECL

25. 3D Grids. Model grids 251


19.1

Examples of how to build grids are shown in training tutorials:

• GD2.1. How To Make Grids;

• GD2.2. How To Build Grid With Faults;

• GD2.3. How To Create Grid With Y-Faults.

25.1. Multiple grids in one project


It is possible to create several static grids with different coordinates, sizes and property sets
in the same project. The grids are stored under Geometry Objects and can be selected during
the hydrodynamic model creation. To create a new grid, RMB on any static grid of the project
and press Create New Grid an empty grid is created.

25.2. Import. Load Grid


• File Name. Name of the file with a grid (e.g. in the format .GRDECL). A model *.data
file can be used if a grid file is defined in the model file using the keyword INCLUDE
(see 12.1.80) with a parameter – grid model file.
• Preview. Number of Lines. Number of lines shown in the Preview window.
• Use ACTNUM from file. Use the keyword ACTNUM (see 12.2.29) specifications.
• Ignore MAPAXES. If this option is activated specifications defined by the keyword
MAPAXES (see 12.2.67) will be ignored when reading a grid file.
• Input Units. Choose a system of units (e.g. METRIC, FIELD, LAB).

25.3. Create Grid


The following options are available:
• Create Simple Grid
• Create Grid by Horizons
• Create Grid by Horizon and Faults
• Create Grid by Point Sets&Faults
• Create Grid by Structural Model
• Create Coarse Grid (upscaling)
• Create Fine Grid (downscaling)

25.1. Multiple grids in one project 252


19.1

25.3.1. Create Simple Grid


The calculation allows to create a grid between the top and the bottom of the reservoir. The
construction is based on the set of well trajectories points on XOY plane. If the option Use
Perforations (see below) is activated, the points located on perforated intervals are taken into
account for the construction.

• Dimensions:

– Count of Blocks by X;
– Count of Blocks by Y;
– Count of Blocks by Z.

• Top. Top bound of the reservoir along Z axis (METRIC: m, FIELD: f t ).

• Bottom. Bottom bound of reservoir along Z axis (METRIC: m, FIELD: f t ).

• Bounds: 2D grid’s boundaries can be detected by user explicitly or automatically calcu-


lated using Autodetect (see below).
Explicit definition:

– Minimal X Coordinate. (METRIC: m, FIELD: f t ).


– Maximal X Coordinate. (METRIC: m, FIELD: f t ).
– Minimal Y Coordinate. (METRIC: m, FIELD: f t ).
– Maximal Y Coordinate. (METRIC: m, FIELD: f t ).

• XY Margin. (METRIC: m, FIELD: f t ) A description of the option see below in


Autodetect.

• Use Perforations. A description of the option see below in Autodetect.

• Autodetect. An automatic detection of 2D grid boundaries. A minimum square rectangle


rotated by the defined angle with respect to the OX axis is built based on a set of wells
trajectories points on the XOY plane. Rectangle’s boundaries are defined by maximum
and minimum coordinates of trajectories points. Further, the rectangle is extended by
XY Margin value in each direction (i.e. the value is added to maximum coordinates
and subtracted from minimum ones). If option Use Perforations is activated then to
construct the rectangle only wells trajectories points located within well’s perforated
intervals are taken into calculation. If trajectories of wells are not loaded then extension
starts from the coordinate origin.

25.3.1. Create Simple Grid 253


19.1

25.3.2. Create Grid by Horizons


The calculation allows to construct a grid between defined horizons, e.g. between bottom
and top of reservoir. If several horizons are available the grid can be defined with different
Partition Type for each reservoir located between selected horizons. To add/remove a horizon
Add Rows/Remove Rows buttons are used.
The grid is constructed in the region, which is an intersection of horizons with the 2D
grid. In addition, a polygon boundary, defining a licensed area for example, can be taken into
account.

• Horizon. Define the horizons that encompass the grid and separate it into the regions. To
add more horizons, press Add Rows or double-click in the empty field. Horizons are
selected from the list available, and have to be arranged from top to bottom. For each
horizon, the following parameters must be set:

◦ Zone. Zones can be created by using regions located between the first horizon (top
horizon) and the last one (base horizon). Each zone has its unique number. The
zones are created as a property named zone_id, for which a discrete template is
automatically assigned. This property can be visualized or edited from the calcu-
lations window. Corresponding nodes of top and bottom horizons, defined in 2D
grid nodes located with Step along X and Step along Y (see below), are connected
with each other. Then, the partition is done in the Z direction. The partition is set
by zone: each zone has its own block thickness.
◦ Partition Type. Three types of partition are available:
– Proportional (counts). In this case the distance between top and base horizons
is partitioned by user defined number of counts. The number of counts is
defined in the Counts/Step field.
– Along Top (step). In this case the grid block faces of each following layer is
constructed in such way that top and bottom faces are parallel to the Top
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
– Along Bottom (step). In this case the grid block faces of each following layer
is constructed in such way that top and bottom faces are parallel to the Base
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
◦ Counts/Step. See description of Partition Type option;
◦ Layering Horizon. The layering of the grid will be performed according to the
chosen horizon. This option can be used to set a layering by stratigraphy while the
grid is modeled using the lithology (cf. Fig. 63):
◦ Horizon Type. In order to accurately manage the contacts between the horizons,
the proper type of horizon has to be chosen from the following list, available by
right-mouse button click on the field (cf. Fig. 64):

25.3.2. Create Grid by Horizons 254


19.1

Figure 63. Layering horizon, an example of use. A) Cross-section representing the stacking
patterns to model: the grid has to be modeled between the lithology horizons with a lay-
ering according to the stratigraphy (the sedimentary layers are deposited according to the
stratigraphy). B)Horizons used for the modeling. The grid presented in C) is built between
the lithology horizons using the stratigraphy as layering horizons. This computation leads to
a more accurate dynamic model.

– Conformable. Use for conformable deposits. The horizon will cut all lower
horizons it intersects, except the Basement;
– Discontinuous. Use for unconformable deposits. All the horizons lying upon
and below will be truncated, including the basement;
– Erosional. The horizon will cut all lower horizons it intersects, including the
basement
– Basement. Use for horizons defining the basement top. It will cut all upper
horizons it intersects;

• Polygon. This option allows to use a polygon as boundary for the grid;

• 2D Grid: parameters for the 2D grid. The settings can be detected automatically using the

25.3.2. Create Grid by Horizons 255


19.1

Figure 64. Conformable, Discontinuous, Erosional and Basement types of horizons.

option Autodetect by (see below).

◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.
◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

• Treat Blocks of Zero Volume as Active. Zero volume blocks may affect interpolation
results and are not included in the dynamic model.

25.3.2. Create Grid by Horizons 256


19.1

25.3.3. Create Grid by Horizon and Faults


The calculation allows to construct a grid based on defined horizons and faults. In addition,
as a result of grid construction Faulted Horizons are created. If several horizons are available
the grid can be defined with different Partition Type in Z direction for each reservoirs located
between selected horizons. To add/remove horizons Add Rows/Remove Rows buttons can be
used. The grid is constructed in the region, which is an intersection of horizons with a 2D grid.
In addition, a polygon boundary, defined a licensed area, can be taken into account. Horizons,
faults and 2D-grid parameters are defined below.
• Horizon.
Horizons have to be defined from top to bottom by selecting it from the list available
by double clicking on the field;
◦ Zone. Zones can be created by using regions located between the first horizon (top)
and the last one (base). Each zone has its unique number. The zones are created
as a property named zone_id, for which a discrete template is automatically as-
signed. This property can be visualized or edited from the calculations window.
Corresponding nodes of top and bottom horizons, defined in 2D grid nodes lo-
cated with Step along X and Step along Y (see below), are connected with each
others. Then, the partition is done in the Z direction.
◦ Partition Type. Three types of partition are available:
– Proportional (counts). In this case the distance between the surfaces passing
through the top and base horizons is partitioned by the number of counts
defined by the user. The number of counts is defined in the Counts/Step
field.
– Along Top (step). In this case the grid block faces of each following layer is
constructed in such way that top and bottom faces are parallel to the Top
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
– Along Bottom (step). In this case the grid block faces of each following layer
is constructed in such way that top and bottom faces are parallel to the Base
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
◦ Counts/Step. See description of Partition Type option.
◦ Layering Horizon. The layering of the grid will be performed according to the
chosen horizon. This option can be used to set a layering by stratigraphy while the
grid is modeled using the lithology (cf. Fig. 63).
◦ Horizon Type. In order to accurately manage the contacts between the horizons, the
proper horizon type has to be chosen from the following dropdown list (cf. Fig.
64):
– Conformable. Use for conformable deposits. The horizon will cut all lower
horizons it intersects, except the Basement;

25.3.3. Create Grid by Horizon and Faults 257


19.1

– Discontinuous. Use for unconformable deposits. All the horizons lying upon
and below will be truncated, including the basement;
– Erosional. The horizon will cut all lower horizons it intersects, including the
basement
– Basement. Use for horizons defining the basement top. It will cut all upper
horizons it intersects;
◦ Fault Lines. Name of the intersection between the horizon and the faults. The same
name as the horizon is given by default;
◦ Fault Lines Usage.
◦ Apply. Use the existing fault lines to re-compute the grid. This option has to
be used if the previously generated fault lines were edited;
◦ Calculate. Calculate fault lines. This option allows to compute new fault lines
and re-write the existing ones;
◦ Do Not Use. This option is used by default: no fault lines will be generated.
• Faults:

◦ Use. Specifies the faults which are used for the computation;
◦ Faults. Fault name;
◦ Structural. If this option is checked then the grid blocks edges will be parallel to
the fault surface, otherwise a stair step geometry will be used and the grid blocks
edges will be parallel to the coordinate axes;
◦ Distance. Exclude from the set of points points located at the defined distance from
a fault or closer;
◦ Linearity Level. This value describes the linearity of the faults. 100% linearity level
corresponds to a completely linear fault. This value can be used to reduce the
computation time by approximating the faults as linear segments;

• Segments Property.
Selection of the property which will carry the information about the fault compartments.
A discrete code will be assigned to each fault block, cf. figure 65);

• Polygon.
This option allows to use a polygon as boundary for the grid;

• 2D Grid Border Using.


This option allows to manage the grid border geometry. In the case of structural faults,
the grid blocks will be oriented along the fault, so 3 options can be used in order to
define the border:

◦ Use With Grid Structure. Changes the orientation of grid blocks in order to obtain
a vertical boundary;

25.3.3. Create Grid by Horizon and Faults 258


19.1

Figure 65. Example of fault compartments property. A code (1, 2 or 3) is assigned to each
compartment.

◦ Cut Grid. Cuts the grid vertically at the defined boundary following the grid blocks;
◦ Do Not Use. Option allows to generate a boundary along the grid blocks, parallel to
the faults, cf. figure 66).

Cut Grid Use With Grid Structure Do Not Use


(Structural Fault) (Structural Fault) (Structural Fault)

Figure 66. Example of grid borders for the options Cut Grid (A), Use With Grid Structure
(B), Do Not Use (C). Structural type is assigned to all the faults. The grid border is circled
by red dashed lines.

25.3.3. Create Grid by Horizon and Faults 259


19.1

• 2D Grid:
parameters for the 2D grid. The settings can be detected automatically using the option
Autodetect by (see below).

◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.
◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which will define the size of the grid (for
automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

25.3.4. Create Grid by Point Sets&Faults


This calculation allows to build a grid based on defined sets of points and faults. In addition,
as a result of grid construction Faulted Horizons are created. The grid is constructed based
on the set of points defined on XOY plane. If several sets of points are available, different
Partition Type in Z direction can be used for each reservoir located between surfaces built on
selected sets of points. To add/remove a set of points Add Rows/Remove Rows buttons can
be used. The grid is defined as the intersection of surfaces defined by point sets with the 2D
grid. In addition, a polygon can be set as a boundary for the grid (corresponding to a licensed
area for example).

• Point Set. Point Sets have to be defined from top to bottom by selecting it from the list
available by double clicking on the field;

◦ Zone. Zones can be created by using regions located between the first point set
(top) and the last one (base). Each zone has its unique number. The zones are

25.3.4. Create Grid by Point Sets&Faults 260


19.1

created as a property named zone_id, for which a discrete template is automatically


assigned. This property can be visualized or edited from the calculations window.
Corresponding nodes of top and bottom point sets, defined in 2D grid nodes located
with Step along X and Step along Y (see below), are connected with each other.
Then, the partition is done in the Z direction.
◦ Partition Type. Three types of partition are available:
– Proportional (counts). In this case the distance between the surfaces passing
through the top and base point sets is partitioned by the number of counts
defined by the user. The number of counts is defined in the Counts/Step
field.
– Along Top (step). In this case the grid block faces of each following layer is
constructed in such way that top and bottom faces are parallel to the Top
Point Set. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
– Along Bottom (step). In this case the grid block faces of each following layer
is constructed in such way that top and bottom faces are parallel to the Base
Point Set. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
◦ Counts/Step. See description of Partition Type option.
◦ Layering Point Set. The layering of the grid will be performed according to the
chosen point set. This option can be used to set a layering by stratigraphy while
the grid is modeled using the lithology (the principle is the same as presented on
the Fig. 63).
◦ Point Set Type. In order to accurately manage the contacts between the point sets,
the proper point set type has to be chosen from the following dropdown list (cf.
Fig. 64):
– Conformable. Use for conformable deposits. The point set will cut all lower
point sets it intersects, except the Basement;
– Discontinuous. Use for unconformable deposits. All the point sets lying upon
and below will be truncated, including the basement;
– Erosional. The horizon will cut all lower point sets it intersects, including the
basement
– Basement. Use for point sets defining the basement top. It will cut all upper
point sets it intersects;
◦ Fault Lines. Name of the intersection between the point set and the faults. The same
name as the point set is given by default;
◦ Fault Lines Usage.
◦ Apply. Use the existing fault lines to re-compute the grid. This option has to
be used if the previously generated fault lines were edited;

25.3.4. Create Grid by Point Sets&Faults 261


19.1

◦ Calculate. Calculate fault lines. This option allows to compute new fault lines
and re-write the existing ones;
◦ Do Not Use. This option is used by default: no fault lines will be generated.
• Faults:
◦ Use. Specifies the faults which are used for the computation;
◦ Faults. Fault name;
◦ Structural. If this option is checked then the grid blocks edges will be parallel to
the fault surface, otherwise a stair step geometry will be used and the grid blocks
edges will be parallel to the coordinate axes;
◦ Linearity Level. This value describes the linearity of the faults. 100% linearity level
corresponds to a completely linear fault. This value can be used to reduce the
computation time by approximating the faults as linear segments;
• Segments Property. Selection of the property which will carry the information about the
fault compartments. A discrete code will be assigned to each fault block, cf. figure 65);
• Polygon. This option allows to use a polygon as boundary for the grid;
• 2D Grid Border Using. This option allows to manage the grid border geometry. In the
case of structural faults, the grid blocks will be oriented along the fault, so 3 options
can be used in order to define the border:
◦ Use With Grid Structure. Changes the orientation of grid blocks in order to obtain
a vertical boundary;
◦ Cut Grid. Cuts the grid vertically at the defined boundary following the grid blocks;
◦ Do Not Use. Option allows to generate a boundary along the grid blocks, parallel to
the faults, cf. figure 66).
• 2D Grid: parameters for the 2D grid. The settings can be detected automatically using the
option Autodetect by (see below).
◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.
◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).

25.3.4. Create Grid by Point Sets&Faults 262


19.1

◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).


◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which will define the size of the grid (for
automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See below the description of Autodetect
option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rectangle rotated by the defined Angle with respect to the
OX axis and enclosing the object with given XY Margin is built.

25.3.5. Create Grid by Structural Model


This computation allows to create a grid using an existing structural model. The following
parameters have to be set:

◦ Target Grid. Name of the new grid;

◦ Block count along I.

◦ Block count along J.

◦ Target Zones Property. Zones can be created by using regions located between 2 hori-
zons. Each zone has its unique number. The zones are created as a property named
zone_id, for which a discrete template is automatically assigned. This property can be
visualized or edited from the calculations window;

◦ Structural Model. Selection of the structural model for the computation;

◦ Model Horizons: top and base horizons. Selection of the horizons which will be used
to build the grid and will define the zones. New horizons can be added using the Add
Rows button or by double clicking on the white field. For each pair of horizons, the
following:

◦ Zone. Zone number. Contained in the property set in Target Zones Property.
◦ Partition Type. Three types of partition are available:
– Proportional (counts). In this case the distance between the surfaces passing
through the top and base horizons is partitioned by the number of counts
defined by the user. The number of counts is defined in the Counts/Step
field.
– Along Top (step). In this case the grid block faces of each following layer is
constructed in such way that top and bottom faces are parallel to the Top
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.

25.3.5. Create Grid by Structural Model 263


19.1

– Along Bottom (step). In this case the grid block faces of each following layer
is constructed in such way that top and bottom faces are parallel to the Base
Horizon. The grid step size in Z direction is defined by Counts/Step. A step
length is measured in meters.
◦ Counts/Step. See description of Partition Type option.
◦ Layering Point Set. The layering of the grid will be performed according to the
chosen point set. This option can be used to set a layering by stratigraphy while
the grid is modeled using the lithology (the principle is the same as presented on
the Fig. 63).
◦ Point Set Type. In order to accurately manage the contacts between the point sets,
the proper point set type has to be chosen from the following dropdown list (cf.
Fig. 64):
– Conformable. Use for conformable deposits. The point set will cut all lower
point sets it intersects, except the Basement;
– Discontinuous. Use for unconformable deposits. All the point sets lying upon
and below will be truncated, including the basement;
– Erosional. The horizon will cut all lower point sets it intersects, including the
basement
– Basement. Use for point sets defining the basement top. It will cut all upper
point sets it intersects;
◦ Bounding Polygon. This option allows to use a polygon as boundary for the grid.

25.3.6. Create Coarse Grid (upscaling)


This calculation builds a locally coarsened grid on the base of an existing one. The grid
properties might be upscaled simultaneously.
The following parameters are specified:
• Source grid. Original grid that is being locally coarsened;
• Intervals. Intervals in X, Y, and Z can be specified, with the following data for each:
◦ From. Lowest coordinate of the coarsened block in the specified direction (referred
to as A1 below).
◦ To. Greatest coordinate of the coarsened block in the specified direction (referred to
as A2 below).
◦ N. Number of coarsened blocks in the specified direction. Must divide the number
(A2 − A1 + 1).

!
The action of coarsening within each interval spans the whole model, not
limited to the 3D box specified by all three intervals (in case there are
three), and hence is different from the action of the keyword COARSEN
(see 12.2.105).

25.3.6. Create Coarse Grid (upscaling) 264


19.1

Figure 67. Grid coarsening with property upscaling

• Property Upscaling. Here you may enter an arbitrary number of grid properties, with a
number of upscaling parameters set separately for each.
NTG and Porosity are singled out. For them you only have to specify the following
parameters:

◦ Use ACTNUM. Blocks that are set inactive by ACTNUM will not be considered in
property upscaling (that is, their contribution will be set to zero). Note that this
check box does not enforce upscaling of the ACTNUM property itself; this has to
be done independently, on equal terms with any other discrete property.
◦ Source property name (optional in case of NTG; if not specified, considered equal
to 1);
◦ Result property name;

NTG is averaged with the weight of block volume and normalized to the volume of the
coarsened block. Porosity is averaged with the weight of block volume multiplied by
NTG. This choice of weighing guarantees that the pore volume of a coarsened block
equals the sum of pore volumes of its parts.
Permeability is also singled out. Besides the ordinary methods common to all con-
tinuous properties (see below), it may be rescaled using the special procedure known
as Flow Based Permeability Upscaling. In this method, the user has to specify the
original permeability properties. Then a single-phase flows in each direction through
the area of the future upscaled block are modeled, and the effective permeabilities in
the corresponding directions are assigned based on the resulting flow rates [5]. For the
purpose of modeling, two opposite faces of the upscaled block are put under constant
pressure difference, while the other faces might optionally be considered either open or
closed.
For other continuous properties, the following parameters may be specified:

25.3.6. Create Coarse Grid (upscaling) 265


19.1

◦ Source property name (also being the result property name);


◦ Upscaling Type which may be one of:
– Sum (applicable for extensive properties) — the property is recalculated as
cnew = ∑ ci ;

– Arithmetic Mean — cnew = ∑ ci n;

– Geometric Mean — cnew = n ∏ ci ;

– Harmonic Mean — cnew = n ∑(1/ci ) ;
 1/p
– Generalized Mean — cnew = ∑ cip n (parameter p is specified sepa-
rately);
– Harmonic(X)-Arithmetic(YZ) Mean — geometric mean in X direction and
arithmetic mean otherwise;
– Harmonic(Y)-Arithmetic(XZ) Mean — geometric mean in Y direction and
arithmetic mean otherwise;
– Harmonic(Z)-Arithmetic(XY) Mean — geometric mean in Z direction and
arithmetic mean otherwise;
◦ Weight property — property used as a weight for averaging;

For discrete properties, the following parameters are used:

◦ Source property name (also being the result property name);


◦ Upscaling Type which in this case may be one of:
– Most of — the most frequent property value is used for coarse grid block;
– Median — the middlemost value is used;
– Minimum — the minimum value is used;
– Maximum — the maximum value is used (suitable, e.g., for ACTNUM).

25.3.7. Create Fine Grid (downscaling)


This calculation builds a locally refined grid on the base of an existing one. The grid properties
in the refined blocks can be copied from the parents block or scaled according to the number
of the refined blocks.
The following parameters are specified:

• Result Grid. Name of the refined grid;

• Source Grid. Original grid that is being locally refined;

• Intervals. Intervals in X, Y, and Z directions can be specified, with the following data for
each:

◦ From. The block number in the specified direction from which the refining starts.
◦ To. The block number in the specified direction to which the refining will be done.

25.3.7. Create Fine Grid (downscaling) 266


19.1

Figure 68. Grid refinement. Porosity downscaling

◦ N. The number of refined blocks in the specified direction into which the parent
block will be divided.

• Property Downscaling. Here you may enter an arbitrary number of grid properties, with
the following parameters:

◦ Property source property name (also being the result property name);
◦ Downscaling Type, which may be one of:
– Copy — property in refined blocks will be copied from parent block;
– Scale — property from parent block will be divided by number of refined blocks

!
n: cnew = c p /n.

It is recommended to copy all properties except Volumetric prop-


erties.
◦ Autodetect — Autodetects properties available in the model.

25.4. LGR Operations


The following options are available:

• Create Simple LGR

• Create LGRs by Wells

• Create LGRs by Filter Property

• Remove LGR

25.4. LGR Operations 267


19.1

25.4.1. Create Simple LGR


The calculation allows to create a local grid refinement (LGR) for the defined box of blocks.

• LGR name. Name of the creating grid refinement.

• Box of grid indices (vertices coordinates of the refinement region):

– Lower I. Coordinate of the first refining block in X direction.


– Upper I. Coordinate of the last refining block in X direction.
– Lower J. Coordinate of the first refining block in Y direction.
– Upper J. Coordinate of the last refining block in Y direction.
– Lower K. Coordinate of the first refining block in Z direction.
– Upper K. Coordinate of the last refining block in Z direction.

• Refinement:

– NXFIN. The number of parts in which each block will be refined in X direction;
– NYFIN. The number of parts in which each block will be refined in Y direction;
– NZFIN. The number of parts in which each block will be refined in Z direction.
– Logarithmic Refinement Rate. Sets the refinement spacing. This value must be
a positive real number (see figure 69).
– Enable Logarithmic Refinement Along I. Create a logarithmic refinement along
I axis.
– Refinement Center Along I. Set the center of the refinement along I. Corresponds
to a I index. By default, it is set as the center of the defined box.
– Enable Logarithmic Refinement Along J. Create a logarithmic refinement along
J axis.
– Refinement Center Along J. Corresponds to a J index. By default, it is set as the
center of the defined box.
– Enable Logarithmic Refinement Along K. Create a logarithmic refinement along
K axis.
– Refinement Center Along K. Corresponds to a K index. By default, it is set as
the center of the defined box.

When exporting, the keywords LGR (see 12.1.88), REFINE (see 12.2.99), CARFIN
(see 12.2.97), NXFIN / NYFIN / NZFIN (see 12.2.102), HXFIN / HYFIN / HZFIN
(see 12.2.103) are created.

25.4.1. Create Simple LGR 268


19.1

Figure 69. Examples of LGRs with different logarithmic rates. The refinement spacing in-
creases with the logarithmic refinement rate (the value can be superior to 1).

25.4.2. Create LGRs by Wells


The calculation allows to create a local grid refinement (LGR) in the vicinity of selected wells.
Blocks intersected by well trajectory or blocks with perforations can be refined as well.

• Well Filter. Create LGR in the vicinity of wells selected by the filter.

• Minimum Indent From Well. LGR will be done in all blocks located from the block
with a well no further than the defined distance. A block is used as a unit of distance.

• Maximum Box Size. This option is applicable for LGR creation around deviated wells.
This parameter allows to decrease the number of blocks around a well for the local
refinement by defining the maximum number of blocks in X, Y and Z directions that
will be refined (see the example on figure 70). This option does not have an effect on
the refinement around vertical wells.

• Refinement options:

– NXFIN. The number of parts in which each block will be refined in X-direction;
– NYFIN. The number of parts in which each block will be refined in Y-direction;
– NZFIN. The number of parts in which each block will be refined in Z-direction.

• Filter. LGRs will be created only in the blocks corresponding to the defined property
filter.

25.4.2. Create LGRs by Wells 269


19.1

Figure 70. Maximum box sizes.

• Refine in Perforations Only. Implement a grid refinement with parameters defined


above only for the well’s blocks with perforation.

• Remove All of Existing LGR Near Wells. Remove the created LGR in the vicinity of
the well before creating a new one.

When exporting a model keywords LGR (see 12.1.88), REFINE (see 12.2.99), CARFIN
(see 12.2.97) and NXFIN / NYFIN / NZFIN (see 12.2.102) are saved.

25.4.3. Create LGRs by Filter Property


This calculation allows to create an LGR in the blocks which satisfy the condition set by the
property which is selected from the list Filter Property, the operator and the value entered in
the field. The following fields have also to be set:

• LGR Name Prefix: prefix of the created LGRs. A number will be automatically gener-
ated;

• Refinement.

25.4.3. Create LGRs by Filter Property 270


19.1

– NXFIN. The number of parts in which each block will be refined in the X direc-
tion;
– NYFIN. The number of parts in which each block will be refined in the Y direc-
tion;
– NZFIN. The number of parts in which each block will be refined in the Z direction.

25.4.4. Remove LGR


All created LGR are shown in the list below. To remove a created refinement (LGR) it is
necessary to tick the check box near the selected LGR and press the button Apply on the
panel below.

25.5. Transformations
In Transformations the following possibilities are available to work with 3D grids:

• Edit Grid

• Translate & Rotate Grid

• Cut Grid 3D

• Update Grid

25.5.1. Edit Grid


This option allows to pull a grid to the selected space point (attraction point). The projection
of attraction point on a grid is a grid pulling point.
The following parameters should be defined:

• Fill Point by mouse click. Set the X, Y and Z coordinate of the chosen point by clicking
on it on the 3D model.

• Point x. X-coordinate of the attraction point (METRIC: m, FIELD: f t ).

• Point y. Y-coordinate of the attraction point (METRIC: m, FIELD: f t ).

• Point z. Z-coordinate of the attraction point (METRIC: m, FIELD: f t ).

• Radius of Editing. (METRIC: m, FIELD: f t ) Grid points, located within the circle of
defined radius with center in the projection of attraction point on the grid, will be pulled
to the attraction point as well.

• Number of Layers. Number of layers which will be pulled to the attraction point.

25.4.4. Remove LGR 271


19.1

• Pulling Type. Proportional, Parallel. The pulling height of the top layer points to the
attraction point is calculated using above mentioned formula. Other points of below
layers (the number of editing layers is defined by parameter Number of Layers) are
pulled by the same height using Parallel way or Proportional way. The last way means
that the distance between top and bottom points of column of blocks with the same
(x, y) coordinates (boundaries of such columns are called pillars) will be subdivided by
Z-layers in the same proportion as before editing.

25.5.2. Translate & Rotate Grid


• Rotation:
– Angle, degrees.
– Center X. X-coordinate of the point around which the grid is rotated (METRIC:
m, FIELD: f t ).
– Center Y. Y-coordinate of the point around which the grid is rotated (METRIC:
m, FIELD: f t ).
• Shift Vector. All grid points will be shifted by defined number of meters in each di-
rection. In order to shift the grid in the opposite direction along any axis the negative
values should be defined.
– X. Shift of grid points in the X direction by the defined number of units of length
(METRIC: m, FIELD: f t ).
– Y. Shift of grid points in the Y direction by the defined number of units of length
(METRIC: m, FIELD: f t ).
– Z. Shift of grid points in the Z direction by the defined number of units of length
(METRIC: m, FIELD: f t ).
• Invert I-index. After transformation the grid block index [i, j ] is changed to [ni − i +
1, j ].
• Invert J-index. After transformation the grid block index [i, j ] is changed to [i, n j −
j + 1].

25.5.3. Cut Grid 3D


Grid is cut by selected indices.
Indices Cut Box:
• Start/End I/J/K. 6 coordinates of the box are new grid boundaries.
• User Cut. For automatic calculation of the new grid boundaries blocks, in which se-
lected property is not zero, are used.
• Autodetect. Coordinates of the new grid boundaries are calculated automatically based
on active blocks. The minimum size parallelepiped containing all active blocks is built.

25.5.2. Translate & Rotate Grid 272


19.1

25.5.4. Update Grid


This calculation allows to update a grid locally based on selected markers and defined editing
radius.
• Markers:

– Marker. Name of loaded/created marker.


– Layer. ijk-layer which will be pulled to the selected marker.

• Mutable sections filter. Marker of wells selected by the filter are included in the up-
dating.

• Unused wells filter. Select wells around which their regions will be not edited.

• Max Radius of Changes. (METRIC: m, FIELD: f t ) To create the radius of changes


Voronoi Regions are built in order to define places, where the grid is updated and where
the grid is not updated.

• Power parameter. (METRIC: m, FIELD: f t ) Marker ”pulling” procedure is done us-


ing the Multilayer IDW method. This parameter is used in the formula of the Multilayer
IDW method.

25.6. Add Geological K to Grid 3D


This operation allows to display the index of the geological layer. When the model presents
faults, two cells from the same layer which are cut by a fault have the same layer index value,
but do not have the same k index. The k value for cells cut by faults is superior to the last
layer number (cf. figure 71). This operation allows as well:
• To compute a property by zones defined by the geological K;

• To obtain the number of geological layers when displaying the grid information;

• To set the IJK-filter according to the geological layers;

• To use the geological K number for computations in the calculator: ’K’ will correspond
to the geological number.
To use this option, an existing geological K cube containing the information about the ge-
ological index of the cells must be available (can be loaded with a Rescue file). To visualize
the geological number, use the information tooltip: click on the button tooltip situated on
the right panel or move the cursor holding the shift button. The geological layer index will
appear as a tip once the cursor will be moved on the model.

The following parameters have to be set:


• Operation. Set or Clear the geological K;

25.5.4. Update Grid 273


19.1

Figure 71. Cells with the same geological K are highlighted in green. These cells presents a
true K value superior to the last layer number (10 in the illustrated case). For this cell, the
geological K calculation will show a value of 0, which corresponds to the geological layer
number.

• Geological K Property. Set the property containing the information about the geological
layer index.

25.7. Import Existing Model


The grid will be imported from an existing model.

• File Name. Full path to the model file defining a grid. It is possible to define a grid file
(e.g. in the .GRDECL format), or the model *.data file, in which the grid file is included
in the model using the keyword INCLUDE (see 12.1.80).

• Add Zero Point As Well Head. Trajectories of wells are extended to the nearest point on
the XY surface if the top trajectory point is located visually below this surface.

• Input Syntax. A format of the input model (E1, IM, MO).

25.8. Calculate Grid Geometry Properties


This calculation allows to calculate geometry properties: block sizes along X, Y and Z, the
depth of the center and the top of each block.

25.7. Import Existing Model 274


19.1

• Calculate Block Sizes (DX): A new property name can be entered or an already created
property can be selected from the list. The calculated property gives the size of each
block along X;

• Calculate Block Sizes (DY): A new property name can be entered or an already created
property can be selected from the list. The calculated property gives the size of each
block along Y;

• Calculate Block Sizes (DZ): A new property name can be entered or an already created
property can be selected from the list. The calculated property gives the size of each
block along Z;

• Calculate Depth: A new property name can be entered or an already created property can
be selected from the list. The calculated property gives the depth of each block center;

• Calculate Tops: A new property name can be entered or an already created property can be
selected from the list. The calculated property gives the mean of the four Z coordinates
of block tops.

25.9. Export
25.9.1. Export. Grid
A grid will be exported in the selected format.

• Format. You may select one of the following: Corner Point (will be exported using key-
words COORD (see 12.2.8), ZCORN, see 12.2.9) or CORNERS (will be exported using
CORNERS, see 12.2.123).

• File Name. Full path to the saving file.

• Output Units. Define a system of units of the exporting model: (METRIC, FIELD, LAB).

25.9.2. Export. All Maps to GRID_ECL


Export all maps to GRID_ECL format.

• Output Folder. Full path to the output folder.

• N/A. Special number value (99999 by default) indicating that the property value is not
defined in this place.

• Output Units. Define a system of units of the exporting model: (METRIC, FIELD,
LAB).

25.9. Export 275


19.1

26. Grid Properties


In this section the possibilities to work with properties are described. The description of pos-
sibilities to work with 3D grids is given in the section 3D Grids. Model grids. In Calculations
menu to work with properties the following possibilities are available:

• Import. GRID_ECL (ASCII)

• Calculator

• Facies Modeling (Zones, Regions)

• Property Interpolation (Zones, Regions)

• Facies Modeling

– Facies Modeling and Discrete properties modeling: Trivial interpolation


– Facies Modeling and Discrete properties modeling: Multilayer IDW method
– Facies Modeling and Discrete properties modeling: Multilayer Kriging
– Facies Modeling and Discrete properties modeling: Multilayer SIS
– Facies Modeling and Discrete properties modeling: Kriging 3D
– Facies Modeling and Discrete properties modeling: SIS 3D
– Facies Modeling and Discrete properties modeling: MPS 3D

• Interpolation

– Interpolation: Trivial interpolation


– Interpolation by Blocked Wells
– Interpolation: Multilayer IDW method
– Interpolation: Multilayer Kriging
– Interpolation: Multilayer SGS
– Interpolation: Kriging 3D
– Interpolation: SGS 3D
– Interpolation: MPS 3D
– Interpolation: By Distribution

• Connected Components

– Connected Components
– Filter Small Connected Components

• Volumetric Properties

26. Grid Properties 276


19.1

– Calculate Volumetric Properties


– Calculate Geometrical Volume
– Calculate Pore Volume

• Auxiliary Calculations

– Copy Property
– Resampling
– Grid & Faults Intersection Property
– Grid & Fence Polygons Intersection Property
– Calculate Cut by Polygon
– Calculate Cut by Wells
– Create Property by Zones Table
– Edit Property Inside Polygon
– Calculate Property by VPC and 2D Map
– Property by Well Log Distribution (experimental)
– Assign between surfaces
– 3D Voronoi Regions
– Multilayer Voronoi Regions
– Faults Segments Property
– Property by Seismic Survey 3D
– Property By Contact
– Property by 2D-Map

• Export

• Distance

• Moving Window Filter

26.1. Import. GRID_ECL (ASCII)


• File Name. Full path to the file with a map.

• Preview. Number of Lines. Number of lines shown in the Preview window.

• Property. Select a loaded property name.

26.1. Import. GRID_ECL (ASCII) 277


19.1

26.2. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

26.3. Facies Modeling (Zones, Regions)


This calculation allows to perform a discrete modeling using blocked wells data and a discrete
property filter. First, a discrete Blocked Wells property has to be created. Up to 2 discrete
property filters can be used. The following parameters have to be set:
◦ Grid. Select the grid for which the interpolation is performed;
◦ Property. Property name for which the data are interpolated;
◦ Kriging Variance. Calculate the kriging variance (see Kriging for more details). Enter a
name for the kriging variance property;
◦ Blocked Wells. Choose the blocked well for the computation;
◦ Interpolate in LGR. The activation of this option allows to take LGRs into account for
the interpolation. The interpolation is performed within LGR blocks. If this option is
not activated, the interpolation is performed as if the LGRs were not created;
◦ Space Type. Selection of the space used for the interpolation. IJK space allows to interpo-
late along geological layers, (cf. figure 72);
◦ Filter. If this option is activated the following parameters have to be set:
- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Accord with Values outside Filter. The values outside the filter and situated at its
boundary are taken into account during the modeling, which allows the continuity
of the structures.

◦ Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

◦ Clear All Values. The result of all the previous interpolations are erased;
◦ Random Seed. Global random seed for the interpolation
◦ Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and corre-
sponding categories are available. The variograms and the VPC will be calculated for
the blocks situated within the volume defined by these filters. Up to 2 discrete properties
can be chosen. To be available in the filter, a discrete template has to be assigned to the
property;

26.2. Calculator 278


19.1

◦ Excluded Facies. List of discrete property categories (facies, if the facies is modeled)
which are not taken into account for the modeling. To use a category from this list, click
on it and select the right arrow to drag it to the Included Facies box;

◦ Included Facies. List of discrete property categories which are taken into account for the
modeling. To exclude a category, click on it and use the left arrow to drag it to the box
Excluded Facies;

◦ Use the following settings in interpolation - Interpolate in the zone, region. Set the
parameters for the interpolation corresponding to the selected zones and the selected
facies (discrete category);

◦ Method. For more information about the method, see Interpolation Algorithms;

◦ Variogram. In this tab, the parameters concerning the variogram can be set. If the option
Take from Data Analysis is ticked, the variogram parameters are taken from the var-
iogram set in the Statistic tab of the Data Analysis tab, see Analyze Blocked Wells
data. If the option is selected, the parameters can be set manually from the tab. For more
details about the variogram parameters, see Variograms. An Azimuth map can also be
set: the kriging is performed according to the azimuth given by the loaded 2D map (can
be created using the calculation Azimuth Map by Polygons);

◦ Kriging. Set the following parameters concerning each local kriging which will be per-
formed:

- Random seed.
- Kriging type. Define the type of Kriging which will be used to interpolate a
property:
– Simple.
– Ordinary.
– Universal.
- Use Global Mean. Setting of the global mean for the distribution (the data is
assumed to be stationary).
- Kriging Points.

◦ Cokriging. This tab allows to set the parameters of the collocated cokriging (for more
information about collocated cokriging in tNavigator, see Cokriging and collocated
Cokriging):

- Use. Cokriging. Use the cokriging option;


- Coefficient. Corresponds to the corelation coefficient between the primary and the
secondary data;
- Property. The secondary data corresponds to a property;
- 2D Map. The secondary data corresponds to a 2D Map;

26.3. Facies Modeling (Zones, Regions) 279


19.1

- VPC. The secondary data corresponds to a VPC.

◦ Facies Fraction. Method which will be used to compute the facies proportion for each
facies;

◦ Trend. If these fields are activated, additional parameters have to be set. If Trend Type is

- Property, allows to choose an available property as a trend. This means that


instead of an interpolation of initial data taken from log curves the differences
between values of log curves and trend’s values are interpolated. Further, property
values of the trend are added to the obtained results.
- Map 2D, allows to choose an available 2D map as a trend.
- VPC, the property is built based on the VPC defined in the Data Analysis tab. The
interpolation process is described in details in the section Auxiliary Calculations.
Property by Well Log Distribution (experimental).

◦ Distribution. Selection of the type of distribution for the input data. The mean and the
standard deviation (SD) can be set.

26.4. Property Interpolation (Zones, Regions)


This calculation allows to perform the interpolation using blocked wells data and a discrete
property filter. First, a Blocked Wells property has to be created. Up to 2 discrete property
filters can be used. The following parameters have to be set:

◦ Grid. Select the grid for which the interpolation is performed;

◦ Property. Property name for which the data are interpolated;

◦ Kriging Variance. Calculate the kriging variance (see Kriging for more details). Enter a
name for the kriging variance property;

◦ Blocked Wells. Choose the blocked well for the computation;

◦ Interpolate in LGR. The activation of this option allows to take LGRs into account for
the interpolation. The interpolation is performed within LGR blocks. If this option is
not activated, the interpolation is performed as if the LGRs were not created;

◦ Space Type. Selection of the space used for the interpolation. IJK space allows to interpo-
late along geological layers, (cf. figure 72);

◦ Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

26.4. Property Interpolation (Zones, Regions) 280


19.1

- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

◦ Clear All Values. The result of all the previous interpolations are erased;

◦ Random Seed. Global random seed for the interpolation

◦ Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and corre-
sponding categories are available. The variograms and the VPC will be calculated for
the blocks situated within the volume defined by these filters. Up to 2 discrete properties
can be chosen. To be available in the filter, a discrete template has to be assigned to the
property;

◦ Use the following settings in interpolation - Interpolate in the zone, region. Set the
parameters for the interpolation corresponding to the selected zones;

◦ Method. For more information about the method, see Interpolation Algorithms;

◦ Variogram. In this tab, the parameters concerning the variogram can be set. If the option
Take from Data Analysis is ticked, the variogram parameters are taken from the var-
iogram set in the Statistic tab of the Data Analysis tab, see Analyze Blocked Wells
data. If the option is selected, the parameters can be set manually from the tab. For more
details about the variogram parameters, see Variograms. An Azimuth map can also be
set: the kriging is performed according to the azimuth given by the loaded 2D map (can
be created using the calculation Azimuth Map by Polygons);

◦ Kriging. Set the following parameters concerning each local kriging which will be per-
formed:

- Random seed.
- Kriging type. Define the type of Kriging which will be used to interpolate a
property:
– Simple.
– Ordinary.
– Universal.
- Use Global Mean. Setting of the global mean for the distribution (the data is
assumed to be stationary).
- Kriging Points.

◦ Cokriging. This tab allows to set the parameters of the collocated cokriging (for more
information about collocated cokriging in tNavigator, see Cokriging and collocated
Cokriging):

- Use. Cokriging. Use the cokriging option;

26.4. Property Interpolation (Zones, Regions) 281


19.1

- Coefficient. Corresponds to the corelation coefficient between the primary and the
secondary data;
- Property. The secondary data corresponds to a property;
- 2D Map. The secondary data corresponds to a 2D Map;
- VPC. The secondary data corresponds to a VPC.

◦ Trend. If these fields are activated, additional parameters have to be set. If Trend Type is

- Property, allows to choose an available property as a trend. This means that


instead of an interpolation of initial data taken from log curves the differences
between values of log curves and trend’s values are interpolated. Further, property
values of the trend are added to the obtained results.
- Map 2D, allows to choose an available 2D map as a trend.
- VPC, the property is built based on the VPC defined in the Data Analysis tab. The
interpolation process is described in details in the section Auxiliary Calculations.
Property by Well Log Distribution (experimental).

◦ Distribution. Selection of the type of distribution for the input data. The mean and the
standard deviation (SD) can be set.

26.4. Property Interpolation (Zones, Regions) 282


19.1

26.5. Facies Modeling


For all the methods presented here, a discrete template has to be associated to the modeled
log (Select a log template). To perform facies modeling (discrete properties modeling) the
following options are available:

• Facies Modeling and Discrete properties modeling: Trivial interpolation;

• Facies Modeling and Discrete properties modeling: Multilayer IDW method;

• Facies Modeling and Discrete properties modeling: Multilayer Kriging;

• Facies Modeling and Discrete properties modeling: Multilayer SIS;

• Facies Modeling and Discrete properties modeling: Kriging 3D;

• Facies Modeling and Discrete properties modeling: SIS 3D;

• Multi-point facies simulation (MPS).

Examples of how to use Facies Analysis are shown in training tutorials:

• GD3.2. How To Do Facies Modeling.

26.5.1. Facies Modeling and Discrete properties modeling: Trivial interpolation


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers and
coefficients, mentioned in this section, are given in the section Multilayer trivial interpolation
method.
At the end of the computation, a lithology template has to be assigned to the property in
order to visualize the facies categories (Select a log template). To interpolate a property the
following parameters should be defined:
• Well Filter. An interpolation is carried out based on wells selected in the filter.

• Well Log. Choose a well log based on which a property is interpolated.

• Interpolate Log. If the check box is checked, in case of the lack of log curve data for
some intervals of the well trajectory, first, the log curve will be interpolated over these
intervals.

• Default Value. If input data for an interpolation of a layer do not exist the absent layer
data are assigned by the default value.

• Property. Enter a name or select an existing result property.

26.5. Facies Modeling 283


19.1

26.5.2. Facies Modeling and Discrete properties modeling: Multilayer IDW method
In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer IDW method.
At the end of the computation, a lithology template has to be assigned to the property in order
to visualize the facies categories (Select a log template). To build the property the following
parameters should be defined:
• Grid. Select the static grid for which the property is computed.
• Property. Property name for which data are interpolated.
• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.
• Filter. If this option is activated the following parameters have to be set:
- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.
• Trend. If this option is activated, additional parameters have to be set. If Trend Type is
- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.
- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).
• Well Filter. The interpolation is performed only for the wells selected in the filter.
• Well Log. Choose the well log for the computation.
• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.
• Empty Layer Value. Allows to assign a constant value for layers without data.
• Power Parameter. This parameter is used in the formula of the Multilayer IDW method.

26.5.2. Facies Modeling and Discrete properties modeling: Multilayer IDW method 284
19.1

26.5.3. Facies Modeling and Discrete properties modeling: Multilayer Kriging


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Kriging.
At the end of the computation, a lithology template has to be assigned to the property in
order to visualize the facies categories (Select a log template). To interpolate the property the
following parameters should be defined:

• Grid. Select the static grid for which the property is computed.

• Property. Property name for which data are interpolated.

• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.
- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).

• Well Filter. The interpolation is performed only for the wells selected in the filter.

• Well Log. Choose the well log for the computation.

• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.

• Empty Layer Value. Allows to assign a constant value for layers without data.

26.5.3. Facies Modeling and Discrete properties modeling: Multilayer Kriging 285
19.1

• Variogram. It is necessary to choose an available variogram for each facies. If there is


no variogram it is necessary to create it. The tab Data Analysis can be used to define
variogram parameters.

• Kriging type. Define the type of Kriging which will be used to interpolate a property:

• Simple.
• Ordinary.
• Universal.

26.5.4. Facies Modeling and Discrete properties modeling: Multilayer SIS


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation method.
At the end of the computation, a lithology template has to be assigned to the property in
order to visualize the facies categories (Select a log template). To interpolate a property the
following parameters should be defined:

• Grid. Select the static grid for which the property is computed.

• Property. Property name for which data are interpolated.

• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.

26.5.4. Facies Modeling and Discrete properties modeling: Multilayer SIS 286
19.1

- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).

• Well Filter. The interpolation is performed only for the wells selected in the filter.

• Well Log. Choose the well log for the computation.

• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.

• Empty Layer Value. Allows to assign a constant value for layers without data.

• Variogram. It is possible to choose available variogram for interpolation. If there is no


variogram it is necessary to create it. To do this Go To Variogram Properties. Use tab
Data Analysis to define variogram’s parameters.

• Kriging Radius. (METRIC: m, FIELD: f t )If the Kriging radius is set to 0, it is considered
that the radius is not constrained and the nearest points are taken into account according
to the Kriging Points value which is set.

• Kriging Points.

• Random number.

26.5.5. Facies Modeling and Discrete properties modeling: Kriging 3D


For this method, a blocked wells property has to be computed first (79). It is also important
to assign a discrete template to the log in order to be able to select the facies categories for
the computation (Select a log template).
The parameters of this method being common for other interpolation methods are described
in the section 26.6.
In this section a specification on implementation of the interpolation method to edit the
object is given. A general description of the method, formulas and details of the use of
multipliers and coefficients, mentioned in this section, are given in the section Kriging.
To interpolate a property the following parameters should be defined:

• Property. Property name for which data are interpolated.

• Interpolate in LGR. The activation of this option allows to take LGRs into account for
the interpolation. The interpolation is performed within LGR blocks. If this option is
not activated, the interpolation is performed as if the LGRs were not created;

• Space Type. Selection of the space used for the interpolation. IJK space allows to interpo-
late along geological layers, (cf. figure 72);

26.5.5. Facies Modeling and Discrete properties modeling: Kriging 3D 287


19.1

• Filter. If this option is activated the following parameters have to be set:


◦ Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
• Blocked Wells. Selection of the blocked wells for the interpolation. See 28. Blocked Wells
for working with blocked wells.
• Well Filter. The interpolation is performed only for the wells selected in the filter.
• Facies (list). Define the facies which will be used to interpolate the property. If the box
Use is checked in the list of facies, the corresponding facies will be included to the
computation. The list is displayed only if a discrete template was assigned to the facies
well log before the computation of the blocked wells (28.1).

All the following parameters have to be set for each facies. First, click
! on a facies in the list, then set the parameters and click on a second
facies to set all the parameters again. Note that a variogram has to be
set for each facies.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is
◦ Property, the property has to be chosen from the list. This means that instead of an
interpolation of initial data taken from log curves the differences between values
of log curves and trend’s values are interpolated. Further, property values of the
trend are added to the obtained results.
◦ VPC, then the property is built based on the VPC.
◦ 2D Map, then the property is built based on the selected 2D Map. The interpolation
process is described in details in the section Auxiliary Calculations →Property
by Well Log Distribution (experimental).
• Facies Fraction. Method which will be used to compute the facies proportion for each
facies. Note that a facies has to be selected from the list.
◦ Blocked Wells. The proportion set is the one which is computed from the blocked
wells;
◦ Well Log. The proportion set is the one computed from raw data log;
◦ Trend Property. The proportion set is the one computed from the trend property;
◦ Manual. The proportion is set manually. The value has to be entered in the field;
◦ No adjustement. The proportion is not set.
• Variogram. It is necessary to choose an available variogram for each facies. If there is
no variogram it is necessary to create it. The tab Data Analysis can be used to define
variogram parameters.

26.5.5. Facies Modeling and Discrete properties modeling: Kriging 3D 288


19.1

• Azimuth Map 2D. The kriging is performed according to the azimuth given by the loaded
2D map (optionally).

26.5.6. Facies Modeling and Discrete properties modeling: SIS 3D


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation method.
For this method, a blocked wells property has to be computed first (79). It is also important
to assign a discrete template to the log in order to be able to select the facies categories for
the computation (Select a log template). To interpolate a property the following parameters
should be defined:

• Property. Property name for which data are interpolated.

• Interpolate in LGR. The activation of this option allows to take LGRs into account for
the interpolation. The interpolation is performed within LGR blocks. If this option is
not activated, the interpolation is performed as if the LGRs were not created;

• Space Type. Selection of the space used for the interpolation. IJK space allows to interpo-
late along geological layers, (cf. figure 72);

• Filter. If this option is activated the following parameters have to be set:

◦ Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

• Blocked Wells. Selection of the blocked wells for the interpolation. See 28. Blocked Wells
for working with blocked wells.

• Well Filter. The interpolation is performed only for the wells selected in the filter.

• Facies (list). Define the facies which will be used to interpolate the property. If the box
Use is checked in the list of facies, the corresponding facies will be included to the
computation. The list is displayed only if a discrete template was assigned to the facies
well log before the computation of the blocked wells (28.1).

All the following parameters have to be set for each facies. First, click
! on a facies in the list, then set the parameters and click on a second
facies to set all the parameters again. Note that a variogram has to be
set for each facies.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

26.5.6. Facies Modeling and Discrete properties modeling: SIS 3D 289


19.1

◦ Property, the property has to be chosen from the list. This means that instead of an
interpolation of initial data taken from log curves the differences between values
of log curves and trend’s values are interpolated. Further, property values of the
trend are added to the obtained results.
◦ VPC, then the property is built based on the VPC.
◦ 2D Map, then the property is built based on the selected 2D Map. The interpolation
process is described in details in the section Auxiliary Calculations →Property
by Well Log Distribution (experimental).

• Facies Fraction. Method which will be used to compute the facies proportion for each
facies. Note that a facies has to be selected from the list.

◦ Blocked Wells. The proportion set is the one which is computed from the blocked
wells;
◦ Well Log. The proportion set is the one computed from raw data log;
◦ Trend Property. The proportion set is the one computed from the trend property;
◦ Manual. The proportion is set manually. The value has to be entered in the field;
◦ No adjustement. The proportion is not set.

• Variogram. It is necessary to choose an available variogram for each facies. If there is


no variogram it is necessary to create it. The tab Data Analysis can be used to define
variogram parameters.

• Azimuth Map 2D. The kriging is performed according to the azimuth given by the loaded
2D map (optionally).

• Kriging Radius. (METRIC: m, FIELD: f t )If the Kriging radius is set to 0, it is considered
that the radius is not constrained and the nearest points are taken into account according
to the Kriging Points value which is set.

• Kriging Points.

• Random number.

26.5.7. Facies Modeling and Discrete properties modeling: MPS 3D


The MPS algorithm is defined in Multi-point facies simulation (MPS). The following proper-
ties have to be defined:

◦ Grid. Select the static grid for which the property is computed.

◦ Property. Property name for which data are interpolated.

◦ Blocked Wells. Selection of the blocked wells for the interpolation. See 28. Blocked Wells
for working with blocked wells.

26.5.7. Facies Modeling and Discrete properties modeling: MPS 3D 290


19.1

◦ Training Map. Select the training image (has to be loaded as a 2D-map in the project);

◦ MPS Threshold. Real number comprised between 0 and 1. See Multi-point facies simu-
lation (MPS) for more details;

◦ Random Seed. Value for the random number generation;

◦ MPS Template Points. Integer number. Corresponds to the number of points in the tem-
plate (see Multi-point facies simulation (MPS) for more details);

◦ MPS Template Radius. Real number. Corresponds to the radius of the template (see
Multi-point facies simulation (MPS) for more details);

◦ Clear Result Property.

◦ Distribution adjustment. The resulting distribution can be adjusted to the distribution of


the Training Image or to the distribution of the Source values. The option None allows
to set no constraint on the distribution;

◦ Use. Tick to use the corresponding facies in the simulation;

◦ Facies. Facies name;

◦ Facies Values. Facies category values;

◦ Training Value. Values of the training map corresponding to each facies;

◦ Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and corre-
sponding categories are available. The variograms and the VPC will be calculated for
the blocks situated within the volume defined by these filters. Up to 2 discrete properties
can be chosen. To be available in the filter, a discrete template has to be assigned to the
property;

◦ Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field. An interpolation between the filtered
area values and values in the area outside of the filter is performed, which leads to
a smoother transition.

26.5.7. Facies Modeling and Discrete properties modeling: MPS 3D 291


19.1

26.6. Interpolation
The following interpolations and stochastical simulations methods are available for Geology
Designer module for continuous properties:

• Interpolation: Multilayer IDW method;

• Interpolation by Blocked Wells;

• Interpolation: Multilayer Kriging;

• Interpolation: Multilayer SGS;

• Interpolation: SGS 3D;

• Interpolation: Kriging 3D;

• Interpolation: Trivial interpolation;

• Interpolation: By Distribution;

• Facies Modeling and Discrete properties modeling: MPS 3D.

26.6.1. Interpolation: Trivial interpolation


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers and
coefficients, mentioned in this section, are given in the section Multilayer trivial interpolation
method.
To interpolate a property the following parameters should be defined:

• Well Filter. An interpolation is carried out based on wells selected in the filter.

• Well Log. Choose a well log based on which a property is interpolated.

• Interpolate Log. If the check box is checked, in case of the lack of log curve data for
some intervals of well’s trajectory, first, the log curve will be interpolated over these
intervals.

• Default Value. If input data for an interpolation of a layer do not exist the absent layer
data are assigned by the default value.

• Property. Choose a property name for which data are interpolated.

26.6. Interpolation 292


19.1

26.6.2. Interpolation by Blocked Wells


This computation allows to create a grid property which assigns the blocked wells values to
the blocks along the wells and a set default value or the undefined value to the other blocks.
The following parameters should be defined:
• Grid. Select the grid to perform the interpolation;

• Blocked Wells. Select the blocked wells;

• Default value. If this option is checked the selected value will be assigned to the blocks
where blocked wells are not defined. If this option is not used, the undefined value is
assigned;

• Property. Select the output property or enter a new name.

26.6.3. Interpolation: Multilayer IDW method


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Multilayer IDW method.

To interpolate a property the following parameters should be defined:

• Grid. Select the static grid for which the property is computed.

• Property. Property name for which data are interpolated.

• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.

26.6.2. Interpolation by Blocked Wells 293


19.1

- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).
• Well Filter. The interpolation is performed only for the wells selected in the filter.
• Well Log. Choose the well log for the computation.
• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.
• Empty Layer Value. Allows to assign a constant value for layers without data.
• Power Parameter. This parameter is used in the formula of the Multilayer IDW method.

26.6.4. Interpolation: Multilayer Kriging


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Kriging.

To interpolate a property the following parameters should be defined:


• Grid. Select the static grid for which the property is computed.
• Property. Property name for which data are interpolated.
• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.
• Filter. If this option is activated the following parameters have to be set:
- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;
- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.
• Trend. If this option is activated, additional parameters have to be set. If Trend Type is
- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.

26.6.4. Interpolation: Multilayer Kriging 294


19.1

- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).
• Well Filter. The interpolation is performed only for the wells selected in the filter.
• Well Log. Choose the well log for the computation.
• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.
• Empty Layer Value. Allows to assign a constant value for layers without data.
A variogram has to be chosen for the computation. If there is no available variogram in
the project, it is necessary to create it. To compute a variogram, the option Go To Variogram
Properties can be used. This option is a shortcut to the tab Data Analysis which allows to
manage the variogram parameters.
Define a type of Kriging, which will be used to interpolate the property:
• Simple.
• Ordinary.
• Universal.

26.6.5. Interpolation: Multilayer SGS


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation method.

To interpolate a property the following parameters should be defined:

• Grid. Select the static grid for which the property is computed.
• Property. Property name for which data are interpolated.
• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.
• Filter. If this option is activated the following parameters have to be set:
- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

26.6.5. Interpolation: Multilayer SGS 295


19.1

- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.
- VPC, then the property is built based on the VPC and the 2D Map, which is
used as a trend for the interpolation. If Trend Property is not selected then the
property is built based on VPC. The resulting property (trend) is not saved during
the calculation. The interpolation process is described in details in the section
Auxiliary Calculations. Property by Well Log Distribution (experimental).

• Well Filter. The interpolation is performed only for the wells selected in the filter.

• Well Log. Choose the well log for the computation.

• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.

• Empty Layer Value. Allows to assign a constant value for layers without data.

• Variogram. A variogram has to be chosen for the computation. If there is no available


variogram in the project, it is necessary to create it. To compute a variogram, the option
Go To Variogram Properties can be used. This option is a shortcut to the tab Data
Analysis which allows to manage the variogram parameters.

• Adjust to Source Distribution. This option is active if Trend (see above) is not chosen
for interpolation. If the check box is checked then the distribution of the selected Well
Log is taken into account for the SGS interpolation.

• Kriging Radius. (METRIC: m, FIELD: f t )If the Kriging radius is set to 0, it is


considered that the radius is not constrained and the nearest points are taken into
account according to the Kriging Points value which is set.
• Kriging Points.
• Random number.

26.6.6. Interpolation: Kriging 3D


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers

26.6.6. Interpolation: Kriging 3D 296


19.1

Direction of
interpolation for
IJK space type
Direction of
interpolation for
XYZ space type

Figure 72. IJK and XYZ directions of interpolation. IJK space allows to interpolate along
geological layers.

and coefficients, mentioned in this section, are given in the section Kriging.
To interpolate a property the following parameters should be defined:
To interpolate a property the following parameters should be defined:

• Property. Property name for which data are interpolated.

• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.

• Space Type. selection of the space used for the interpolation. IJK space allows to interpo-
late along geological layers (see figure 72);

• Trend. If this option is activated, additional parameters have to be set. If Trend Type is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.
- VPC, then the property is built based on VPC and 2D Map, which is used as a trend
for interpolation. If Trend Property is not selected then the property is built based
on VPC. The resulting property (trend) is not saved during the calculation. The
interpolation process is described in details in the section Auxiliary Calculations.
Property by Well Log Distribution (experimental).

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

26.6.6. Interpolation: Kriging 3D 297


19.1

- Fade To Filter Border. Available only for continuous properties. This option al-
lows to include the values situated at the filter border to the interpolation, which
leads to a smoother transition at the boundary of the interpolated area.

• Blocked Wells. Choose the blocked well log for the computation.

• Adjust to Source Distribution. This option is active if the Trend (see above) is not chosen
for interpolation. If the check box is checked then distribution of the selected Well Log
is taken into account for the SGS interpolation.

• Variogram. A variogram has to be chosen for the computation. If there is no available


variogram in the project, it is necessary to create it. To compute a variogram, the option
Go To Variogram Properties can be used. This option is a shortcut to the tab Data
Analysis which allows to manage the variogram parameters.

• Global Mean. Setting of the global mean for the distribution (the data is assumed to be
stationary).

26.6.7. Interpolation: SGS 3D


In this section a specification on implementation of the interpolation method to edit the object
is given. A general description of the method, formulas and details of the use of multipliers
and coefficients, mentioned in this section, are given in the section Sequential Gaussian Sim-
ulation method.

To interpolate a property the following parameters should be defined:

• Property. Property name for which data are interpolated.

• Cut by Log Bounds. Each log curve has its minimum and maximum. If this option is ac-
tivated, the interpolated values higher than the maximum and lower than the minimum,
are replaced by maximum and minimum log curve values, respectively.

• Space Type. Selection of the space used for the interpolation. IJK space allows to
interpolate along geological layers, (cf. figure 72);

• Trend. If this option is activated, additional parameters have to be set. If Trend Type
is

- Arbitrary Property, then the option Trend Type allows to choose an available
property as a trend. This means that instead of an interpolation of initial data taken
from log curves the differences between values of log curves and trend’s values
are interpolated. Further, property values of the trend are added to the obtained
results.

26.6.7. Interpolation: SGS 3D 298


19.1

- VPC, then the property is built based on VPC and 2D Map, which is used as a trend
for interpolation. If Trend Property is not selected then the property is built based
on VPC. The resulting property (trend) is not saved during the calculation. The
interpolation process is described in details in the section Auxiliary Calculations.
Property by Well Log Distribution (experimental).

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field;

• Well Filter. The interpolation is performed only for the wells selected in the filter.

• Well Log. Choose the well log for the computation.

• Interpolate Log. If this option is activated, in case of the lack of data for some intervals,
first, the log curve will be interpolated over these intervals.

• Variogram. A variogram has to be chosen for the computation. If there is no available


variogram in the project, it is necessary to create it. To compute a variogram, the option
Go To Variogram Properties can be used. This option is a shortcut to the tab Data
Analysis which allows to manage the variogram parameters.

• Global Mean. Setting of the global mean for the distribution (the data is assumed to be
stationary);

• Kriging Radius. If the Kriging radius is set to 0, it is considered that the radius is
not constrained and the nearest points are taken into account according to the Kriging
Points value which is set. (METRIC: m, FIELD: f t )

• Kriging Points.

• Random number.

26.6.8. Interpolation: MPS 3D


The MPS algorithm is defined in Multi-point facies simulation (MPS). The following proper-
ties have to be defined:

◦ Grid. Select the static grid for which the property is computed.

◦ Property. Property name for which data are interpolated.

◦ Blocked Wells. Selection of the blocked wells for the interpolation. See 28. Blocked Wells
for working with blocked wells.

◦ Training Map. Select the training image (has to be loaded as a 2D-map in the project);

26.6.8. Interpolation: MPS 3D 299


19.1

◦ MPS Threshold. Real number comprised between 0 and 1. See Multi-point facies simu-
lation (MPS) for more details;

◦ Random Seed. Value for the random number generation;

◦ MPS Template Points. Integer number. Corresponds to the number of points in the tem-
plate (see Multi-point facies simulation (MPS) for more details);

◦ MPS Template Radius. Real number. Corresponds to the radius of the template (see
Multi-point facies simulation (MPS) for more details);

◦ Clear Result Property. The selected output property is rewritten by the current computa-
tion;

◦ Trend. The difference between the trend values and the log values are interpolated if a
trend is selected. Further, the values of the trend are added to the obtained results.

◦ Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and corre-
sponding categories are available. The variograms and the VPC will be calculated for
the blocks situated within the volume defined by these filters. Up to 2 discrete properties
can be chosen. To be available in the filter, a discrete template has to be assigned to the
property;

◦ Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field. An interpolation between the filtered
area values and values in the area outside of the filter is performed, which leads to
a smoother transition.

26.6.9. Interpolation: By Distribution


This type of calculation fills the property with random values according to the specified distri-
bution, not related to blocked wells or other actual measurements of any sort. The following
parameters should be defined:

• Property for which the data are calculated.

• Clear Result Property erases the existing values of the result property, if any.

• Random Seed for random number generation.

• Distribution selects the type of the distribution from the following (see figure 73), and
also specifies its parameters:

◦ Normal: Mean and Standard Deviation;


◦ Log-normal: Mean and Standard Deviation;

26.6.9. Interpolation: By Distribution 300


19.1

(a) Uniform (b) Log-normal

(c) Normal (d) Beta with different α, β

Figure 73. Available probability distributions

◦ Beta: α , β , upper and lower bound;


◦ Uniform: upper and lower bound;

• Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and corre-
sponding categories are available. The variograms and the VPC will be calculated for
the blocks situated within the volume defined by these filters. Up to 2 discrete properties
can be chosen. To be available in the filter, a discrete template has to be assigned to the
property;

• Filter. If this option is activated the following parameters have to be set:

- Cut. The interpolation is carried out only in the blocks which satisfy the condition
which is set. Select the property from the list and set the condition using the
operator and entering the value in the field.

26.6.9. Interpolation: By Distribution 301


19.1

26.7. Connected Components


These calculations deal with connected components. A connected component is an area of the
model where blocks are connected. This means that fluid can flow between different blocks
of one connected component, but not between different components. Note that blocks links
can be geometrical (the case if the blocks have a common face) or special, such as PINCH
(see 12.2.58) or NNC (see 12.2.54).
The following options are available:

• Connected Components

• Filter Small Connected Components

26.7.1. Connected Components


This calculation splits the grid into the connected components, numbers them in an arbitrary
order, and outputs these numbers to a grid property.

• Grid:
Select the static grid for which the property is computed.

• Output:

◦ Result Property: name of the property to which the numbers of connected compo-
nents are written. The blocks excluded by the filter are assigned the value 0.
◦ Component Blocks Count Property: name of the property to which the number of
blocks in each connected component is written. The blocks excluded by the filter
are assigned the value equal to the total number of such blocks.
◦ Iteration Property: the map of distances from the block randomly selected in each
connected component to other blocks. The distance here is discrete, understood in
terms of connectivity, and measured as the number of connections to be traversed
from one block to another. This map allows to pinpoint unobvious connections
between large areas of the grid. The blocks excluded by the filter are assigned the
value -1.

• Source Data:

◦ Filter. Selects a grid property and a condition on it used for filtering the blocks (for
example, ACTNUM6= 0).
◦ Source property. Selects a classifier, i.e., a discrete property that would split the
grid in regions with subsequent searching for connected components in each region
separately.

26.7. Connected Components 302


19.1

26.7.2. Filter Small Connected Components


This calculation edits the classifier property (see above) so that the connected components
created upon it would not be excessively small, and then outputs the result to a new grid
property.

• Grid: select the static grid for which the property is computed.

• Result Property: name of the property to which the new classifier is written.

• Source property: selects a classifier, i.e., a discrete property that would split the grid in
regions with subsequent searching for connected components in each region separately.

• Filter selects a grid property and a condition on it used for filtering the blocks (for example,
ACTNUM6= 0).

• Blocked Wells selects a well log on which the classifier property is supposed to be based.
If selected, prevents changing the classifier property in the blocks where the log values
were measured.

• Filtering rules:

◦ Component Size Threshold: maximum size of connected components that should


be avoided.
◦ Iterations Limit: maximum number of iterations of editing the grid property (in
most cases converges in 1-2 iterations).

26.7.2. Filter Small Connected Components 303


19.1

26.8. Volumetric Properties


The following options are available:
• Calculate Volumetric Properties
• Calculate Geometrical Volume
• Calculate Pore Volume

26.8.1. Calculate Volumetric Properties


This calculation allows to compute the volume of hydrocarbon in the reservoir. This compu-
tation provides a static measure of oil and gas in place. For more details about the calculated
properties, see figure 74.
The volumetric properties may also be calculated in a form of 2D map, see 14.5.

Examples of how to work with this calculation are shown in training


tutorials:

• GD3.4. How To Do Volume Estimation.

Geometrical Net volume Pore volume


volume

Reservoir HCPV

×N/G Reservoir
×POR × Oil saturation
conditions STOIIP
Non-reservoir
or GIIP
layers /Bo , Bg

Reservoir

Non-reservoir
layers

Reservoir

Figure 74. Volume computation for fluid-in-place. The Geometrical volume contains both
reservoir and non-reservoir layers. The Net Volume contains only reservoir rocks (it corre-
sponds to the product between the Geometrical Volume and the Net to Gross). The Pore Volume
corresponds to the pore space (it is defined as the Net Volume multiplied by the porosity). The
HCPV (Hydrocarbon Pore Volume) corresponds to the volume of hydrocarbons obtained with-
out taking into account the formation volume factor. The STOIIP and GIIP corresponds to the
volumes of hydrocarbon in place in reservoir conditions.

The formulas used for these computations are presented in the following table:

26.8. Volumetric Properties 304


19.1

Calculated Property Formula


Net Volume Vnet = Vrock · NG
Pore Volume Vpore = Vnet · ϕ
HCPV HCPV = Vpore · (1 − Sw )
STOIIP ST OIIP = HCPVoil . B1O
Associated Gas Associated Gas = ST OIIP · RS
GIIP GIIP = HCPVgas · B1g
Associated Liquid Associated Liquid = GIIP · Rv
Recoverable Oil Recoverableoil = (ST OIIP + Associated Liquid) · Recovery Factoro
Recoverable Gas Recoverablegas = (GIIP + Associated Gas) · Recovery Factorg

The variables used for the computation are defined below:

Variable Definition
Vnet Net Volume
Vrock Geometrical Volume
HCPV Hydrocarbon pore volume
STOIIP Stock Tank Oil Initially In Place
GIIP Gas Initially In Place
Rs Gas Oil Ratio
Rv Liquid Gas Ratio
Bo Oil Formation Volume Factor
Bg Gas Formation Volume Factor

As inputs, the following parameters have to be set :

• Grid.
Select the static grid for which the property is computed.
• Source Data.

◦ General.

– NTG. The net-to-gross property has to be selected from the list (tick the box to
display the list of available properties) or a constant value has to be entered;
– Porosity. The porosity property has to be selected for the computation.

26.8.1. Calculate Volumetric Properties 305


19.1

◦ Contacts.

– Gas-Oil Contact. Select the Gas-Oil contact which will be taken into account
for the computation (see Contacts to create a contact). When both GOC and
gas saturation are defined, the computation is predominantly performed using
the contact. If the contact crosses the middle of a block, the parts situated
below and above the contact will be taken into account;
– Oil-Water Contact. Select the Oil-Water contact which will be taken into ac-
count for the computation (see Contacts to create a contact). When both WOC
and oil saturation are defined, the computation is predominantly performed us-
ing the contact. If the contact crosses the middle of a block, the parts situated
below and above the contact will be taken into account;
◦ Saturations.

– Saturations of Water. The property containing water saturation values has to


be chosen from the list (tick the box to display the list of available properties)
or a constant value has to be entered;
– Saturation of Oil. The property containing oil saturation values has to be cho-
sen from the list (tick the box to display the list of available properties) or a
constant value has to be entered;
– Saturation of Gas. The property containing gas saturation values has to be
chosen from the list (tick the box to display the list of available properties) or
a constant value has to be entered.
◦ Oil.

– FVF for Oil (BO). The property containing Formation Volume Factor values
has to be chosen from the list(tick the box to display the list of available
properties) or a constant value has to be entered;
– RS. The property containing dissolved GOR values has to be chosen from the
list (tick the box to display the list of available properties) or a constant value
has to be entered;
– Oil Recovery Factor. The property containing Oil Recovery Factor values has
to be chosen from the list (tick the box to display the list of available proper-
ties) or a constant value has to be entered;
– Oil Density. The property containing Oil Density values has to be chosen from
the list (tick the box to display the list of available properties) or a constant
value has to be entered;
◦ Gas.

26.8.1. Calculate Volumetric Properties 306


19.1

– FVF for Gas (BG). The property containing the Formation Volume Factor val-
ues has to be chosen from the list (tick the box to display the list of available
properties) or a constant value has to be entered;
– RV. The property containing volatilized oil/gas ratio values has to be chosen
from the list (tick the box to display the list of available properties) or a
constant value has to be entered;
– Gas Recovery Factor. The property containing Gas Recovery Factor values
has to be chosen from the list (tick the box to display the list of available
properties) or a constant value has to be entered;
– Gas Density. The property containing Gas Density values has to be chosen from
the list (tick the box to display the list of available properties) or a constant
value has to be entered;
• Output.
All output properties are optional. The properties can be calculated for the entire grid,
the gas zone, the oil zone, and the oil and gas zone. The zones are computed automat-
ically, using the contacts defined in the Source Data tab. If no contact is defined, the
computation will be performed for the entire model.
◦ Entire Grid. In this section the properties are calculated for the entire grid.
◦ Geometrical Volume. This option allows to compute a cube corresponding to
the Geometrical Volume (i.e. the rock volume, keyword ROCKV, see 12.15.88)
and store it as a property in the project. An empty property to store the com-
putation result has to be selected from the list.
◦ Net Volume. This option allows to compute a cube corresponding to the Net
Volume (i.e. the reservoir volume) and store it as a property in the project. An
empty property to store the computation result has to be selected from the list.
◦ Pore Volume. This option allows to compute a cube corresponding to the Pore
Volume (i.e. the product of the net volume by the porosity) and store it as a
property in the project. An empty property to store the computation result has
to be selected from the list.
◦ HCPV. Hydrocarbon pore volume. This option allows to compute a cube cor-
responding to the HCPV (i.e. the product of the pore volume by the oil or gas
saturation) and store it as a property in the project. An empty property to store
the computation result has to be selected from the list.
◦ Oil+Gas Zone. In this section the properties are calculated for the oil and gas zone.
The zones are computed automatically, using the contacts defined in the Source
Data tab. If no contact is defined, the computation will be performed for the entire
model.
◦ Geometrical Volume. This option allows to compute a cube corresponding to
the Geometrical Volume of the oil and gas zone and store it as a property
in the project. An empty property to store the computation result has to be
selected from the list.

26.8.1. Calculate Volumetric Properties 307


19.1

◦ Net Volume. This option allows to compute a cube corresponding to the Net
Volume of the oil and gas zone and store it as a property in the project. An
empty property to store the computation result has to be selected from the list.
◦ Pore Volume. This option allows to compute a cube corresponding to the Pore
Volume of the oil and gas zone (i.e. the product of the net volume by the
porosity) and store it as a property in the project. An empty property to store
the computation result has to be selected from the list.
◦ HCPV. Hydrocarbon pore volume of the oil and gas zone. This option allows
to compute a cube corresponding to the HCPV (i.e. the product of the pore
volume by the oil or gas saturation) and store it as a property in the project.
An empty property to store the computation result has to be selected from the
list.
◦ Oil Zone. In this section the properties are calculated for the oil zone. The zones are
computed automatically, using the contacts defined in the Source Data tab. If no
contact is defined, the computation will be performed for the entire model.
– Geometrical Volume. This option allows to compute a cube corresponding to
the Geometrical Volume of the oil zone and store it as a property in the project.
An empty property to store the computation result has to be selected from the
list.
– Net Volume. This option allows to compute a cube corresponding to the Net
Volume of the oil zone and store it as a property in the project. An empty
property to store the computation result has to be selected from the list.
– Pore Volume. This option allows to compute a cube corresponding to the Pore
Volume of the oil zone (i.e. the product of the net volume by the porosity) and
store it as a property in the project. An empty property to store the computation
result has to be selected from the list.
– HCPV. Hydrocarbon pore volume of the oil zone. This option allows to com-
pute a cube corresponding to the HCPV (i.e. the product of the pore volume
by the oil or gas saturation) and store it as a property in the project. An empty
property to store the computation result has to be selected from the list.
– STOIIP. Stock Tank Oil Initially in Place. This option has to be selected in
order to compute a cube corresponding to the STOIIP. An empty property to
store the computation result has to be selected from the list.
– STOIIP (Mass). Mass of Stock Tank Oil Originally in Place. This option has to
be selected in order to compute a cube corresponding to the mass of STOOIP.
An empty property to store the computation result has to be selected from the
list.
– Associated Gas. This option has to be selected in order to compute a cube cor-
responding to the Associated Gas. An empty property to store the computation
result has to be selected from the list.
– Recoverable Oil. This option has to be selected in order to compute a cube

26.8.1. Calculate Volumetric Properties 308


19.1

corresponding to the Recoverable Oil. An empty property to store the compu-


tation result has to be selected from the list.
– Recoverable Oil (Mass). This option has to be selected in order to compute
a cube corresponding to the mass of Recoverable Oil. An empty property to
store the computation result has to be selected from the list.
◦ Gas Zone. In this section the properties are calculated for the gas zone. The zones
are computed automatically, using the contacts defined in the Source Data tab. If
no contact is defined, the computation will be performed for the entire model.
– Geometrical Volume. This option allows to compute a cube corresponding to
the Geometrical Volume of the oil zone and store it as a property in the project.
An empty property to store the computation result has to be selected from the
list.
– Net Volume. This option allows to compute a cube corresponding to the Net
Volume of the oil zone and store it as a property in the project. An empty
property to store the computation result has to be selected from the list.
– Pore Volume. This option allows to compute a cube corresponding to the Pore
Volume of the oil zone (i.e. the product of the net volume by the porosity) and
store it as a property in the project. An empty property to store the computation
result has to be selected from the list.
– HCPV. Hydrocarbon pore volume of the oil zone. This option allows to com-
pute a cube corresponding to the HCPV (i.e. the product of the pore volume
by the oil or gas saturation) and store it as a property in the project. An empty
property to store the computation result has to be selected from the list.
– GIIP. Gas Initially in Place. This option has to be selected in order to compute
a cube corresponding to the GIIP. The property which will contain the values
has to be selected from the list.
– GIIP (Mass). Mass of Gas Initially in Place.
– Associated Liquid.
– Associated Oil. This option has to be selected in order to compute a cube cor-
responding to the Associated Oil. An empty property to store the computation
result has to be selected from the list.
– Recoverable Gas. This option has to be selected in order to compute a cube
corresponding to the Recoverable Gas. An empty property to store the com-
putation result has to be selected from the list.
– Recoverable Gas (Mass). This option has to be selected in order to compute
a cube corresponding to the mass of Recoverable Gas. An empty property to
store the computation result has to be selected from the list.

Volumetric properties, as well as any other grid properties, can be summarized in statistic
tables by region or for the whole field, see Create a Table from Property.

26.8.1. Calculate Volumetric Properties 309


19.1

26.8.2. Calculate Geometrical Volume


This calculation allows to compute the volume of each cell (see figure 74 for more details
about the calculated properties).

• Grid.
Select the static grid for which the property is computed.

• Output. Result Property.


Select the resulting property or enter a new name.

26.8.3. Calculate Pore Volume


This calculation allows to compute the pore volume (corresponding to the product of the net
volume and the porosity) for each cell. The following parameters have to be set (see figure 74
for more details about the calculated properties):

• Source Data.

◦ Grid. Select the static grid for which the property is computed.
◦ Porosity. The porosity property has to be chosen from the list;
◦ ACTNUM. If the ACTNUM (see 12.2.29) property is available, it can be set by this
option;
◦ NTG. If the Net-to-Gross property is computed, it can be set to be taken into account
for the pore volume estimation;
◦ MULTPV. If the pore volume multiplier property (corresponds to the keyword
MULTPV, see 12.2.28) is available, it can be set to be taken into account for
the pore volume estimation. This property can be created via by right mouse but-
ton click on Properties.

• Output.

◦ Result Property. A grid for storing the computed property has to be chosen from
the list.

26.8.2. Calculate Geometrical Volume 310


19.1

26.9. Auxiliary Calculations


For auxiliary calculations it is recommended to create custom Grid Properties, since the inter-
polation results are written into the selected grid property.

• Copy Property

• Resampling

• Grid & Faults Intersection Property

• Grid & Fence Polygons Intersection Property

• Calculate Cut by Polygon

• Calculate Cut by Wells

• Create Property by Zones Table

• Edit Property Inside Polygon

• Calculate Property by VPC and 2D Map

• Property by Well Log Distribution (experimental)

• Assign between surfaces

• 3D Voronoi Regions

• Multilayer Voronoi Regions

• Faults Segments Property

• Property by Seismic Survey 3D

• Property By Contact

• Property by 2D-Map

26.9.1. Copy Property


This calculation allows to copy the selected property from one grid to another. The property
is copied between blocks with the same (i, j, k) coordinates.

• Source Grid
from which a property is being copied.

• Source Property
which is being copied.

26.9. Auxiliary Calculations 311


19.1

• Target Grid
to which a property is being copied.

• Target Property
to which the selected property is being copied.

26.9.2. Resampling
If the project contains more than one grid, the properties can be transferred from one grid to
another. The grids may have different span, block size, and orientation. Since the block centers
of the two grids generally do not coincide, the resampling process is inevitably ambiguous
and causes some information losses.
Resampling requires the following parameters:

• Source Grid from which a property is being transferred.

• Target Grid to which a property is being transferred.

• Sampling Direction is the method of computing the values for the new grid property:

◦ Forward: an output grid cell is assigned the average value of those input cells
which have their centers inside this output cell. With multisampling (see below) the
centers are superseded with certain other points. This option is good for upscaling,
otherwise some output cells will turn out empty (that is, without assigned values).
◦ Backward: an output grid cell is assigned the value of that input cell which contains
the center of this output cell. With multisampling (see below) the centers are
superseded with certain other points, and the resulting values are averaged over.
This option is good for downscaling, otherwise some portion of input data will be
lost (that is, never used).
◦ Forward, then backward: implies a forward pass, then a backward one to fill the
remaining empty values.

• Sampling Type is the method of selecting sampling points in a cell:

◦ Cell center: each cell corresponds to a single data point located at its center.
◦ Multisampling: each cell contains the specified number of uniformly distributed
data points. This method gives smoother interpolation, but requires more time.

• Source Property for resampling.

• Weight Property for averaging.

• Target Property for storing the result.

• Averaging Type selected from the following:

◦ Arithmetic

26.9.2. Resampling 312


19.1

◦ Geometric
◦ Harmonic
◦ RMS
◦ Minimum
◦ Maximum
◦ Median
◦ Count (the number of values per output cell)

• Overwrite existing values in the target property, if any.

26.9.3. Grid & Faults Intersection Property


An integer number is assigned to all blocks, in which a fault intersects with a grid. The
calculation is done for all available faults. Thus, the values of blocks, in which F1 fault
intersects with a grid, are equal to 1, for F2 fault the values of blocks are 2 etc.
• Grid Select the static grid for which the property is computed.

• Output. Result Property. Name of the grid that the calculation will be saved into.

26.9.4. Grid & Fence Polygons Intersection Property


This computation allows to calculate a property using fence polygons (polygons defined on
Cross-Section). Fence polygons can be created on cross-sections and can be used to interpret
objects such as channels, salt diapirs, volcanic structures, etc on 2D cross-sections, using log
data (an example is presented on figure 75).

Figure 75. Cross-section window. Log data is displayed and interpreted in terms of objects:
channels are delimited by fence polygons.

Defined values are assigned to the blocks which cross the polygons and to the ones situated
inside the polygons area. By default the undefined value is assigned to the blocks situated
outside this area, but a value can also be defined.

26.9.3. Grid & Faults Intersection Property 313


19.1

• Grid. Select the grid for which the property is computed;


• Use. Tick this box to use the corresponding polygon in the computation;
• Fence Polygon. List of available fence polygons. Fence polygons have to be created on
cross-sections (in the Cross-Section window);
• Value. Value which will be assigned to the blocks which cross the corresponding poly-
gon and to the ones situated inside this area;
• Fence Polygon Folder. List of available fence polygon folders. Fence polygons have to
be created on cross-sections (in the cross-section window) and folders can be created
by RMB on Fence Polygons in Geometry Objects;
• Add Rows. Add polygons for the computation;
• Remove Rows. Remove polygons from the computation;
• Fill Cross-Sections Outside Polygons With. This option allows to define the value
which will be assigned to the blocks outside the polygon area. If this option is not used,
the undefined value is assigned;
• Output. Result Property. Enter the name of the resulting property;
• Autodetection. Allows to display the entire list of fence polygons and folders and to
set 1 as value.

26.9.5. Calculate Cut by Polygon


• Grid Select the static grid for which the property is computed.
• Output. Result Property. Name of the resulting property.
• Source Data. Polygon. Select a polygon, which will be used for the calculation of the
property. The values of blocks inside the polygon are assigned to 1, the values of other
blocks are assigned to 0.

26.9.6. Calculate Cut by Wells


• Grid Select the static grid for which the property is computed.
• Output:
– Reuslt Property. Name of the resulting property.
• Source Data:
– Well Filter. Use for calculation only wells selected by the filter.
– Radius. (METRIC: m, FIELD: f t ) All blocks located in the circle of defined
radius with the center in the well are assigned with 1.

26.9.5. Calculate Cut by Polygon 314


19.1

26.9.7. Create Property by Zones Table


This computation allows to create zones defined along Z. The discrete property which is
created can be used as a filter in Data Analysis tab to define a variogram, and will be available
for property modeling in Property Interpolation (Zones, Regions) and Facies Modeling (Zones,
Regions) calculations. Discrete template will be assigned automatically to created property.
The following parameters have to be set:

• Grid Select the static grid for which the property is computed;

• Result Property. Name of the resulting property;

• Use. Tick to create the defined zone;

• Zone Name. Create a property based on the defined zone. The entered names will be
displayed in the automatically created template and used in the project;

• Value. Value of the category;

• K1. Beginning of the selected range along Z axis;

• K2. End of the selected range along Z axis.

26.9.8. Edit Property Inside Polygon


• Grid Select the static grid for which the property is computed.

• Property. Name of the resulting property.

• Polygon. Select a polygon inside which the blocks value are edited.

• Stored Value. Blocks inside a polygon is assigned with the define value.

26.9.9. Calculate Property by VPC and 2D Map


The calculation allows to extrapolate VPC data on property using 2D Map selected in Map 2D
as a trend. Thus, it is necessary to calculate a value in each block of 3D grid (i, j, k), where
i = 1, .., Nx , j = 1, .., Ny , k = 1, .., Nk , using known values of 2D Map defined at points (i, j)
and Nk values of VPC. Further VPC values are normalized on the unit interval [0,1]. Then,
values of property in the kth layer is calculated as a map’s values at points (i, j) multiplied
by kth value of VPC. If 2D Map is not selected, then to all property’s value in the kth layer
are assigned the kth value of VPC.

• Grid Select the static grid for which the property is computed.

• Result Property. Name of the resulting property.

• Well Log. Choose a well log based on which the property will be interpolated.

26.9.7. Create Property by Zones Table 315


19.1

• Well Filter. Interpolation will be carried out based on wells selected by the filter.

• 2D Map. If the check box is checked then the VPC is normalized and used as coefficient
for property’s values in the corresponding k layer. Otherwise, all property’s values in
the kth layer are imposed to be equal to VPC values for the kth layer.

• Discrete Interpolation. The maximum log value in this block is assign with a block
value.

• Interpolate Log. If the check box is checked, in case of the lack of log curve data in
some intervals, first, the log curve will be interpolated over these intervals.

26.9.10. Property by Well Log Distribution (experimental)


The calculation allows to compute, for example, permeability based on porosity. In tNavigator
Core Data, poro and perm are stored in log curves. For each log curve values of porosity is
subdivided by intervals of length defined in Step of Base Data. For each interval a perme-
ability distribution is defined based on the constructed histogram. The process of creation of
histogram is the following: a range of values of porosity in the selected interval is subdivided
to create subrange; for each subrange the number of values of premiability is counted. Finally,
to calculate permeability by porosity, for each porosity value the permability value is selected
randomly based on the permeability distribution in the interval of porosity’s values, to which
considered porosity value belongs.

• Result Property. Property, in which a result for interpolation will be saved.

• Base Log. Define a Log based on which interpolation has been carried out.

• Base Property. Define a property based on which interpolation has been carried out.

• Step of Base Data. Define a length of interval using which a base log curve will be
partitioned.

• Log for Result. Define a Log based on which a result property will be built.

• Well Filter. Allow to select wells to which the calculation will be applied. If a filter is
not activated a calculation will be applied to all wells.

26.9.11. Assign between surfaces


This calculation is assigned value to blocks located between horizons. Tuning settings:

• Grid Select the static grid for which the property is computed.

• Result Property. Name of the resulting property.

• Top. If this check box is not checked then a top grid layer is consider as a top boundary.
Otherwise, it is necessary to define the following parameters:

26.9.10. Property by Well Log Distribution (experimental) 316


19.1

– What to Use. Use as a top boundary one of the following objects: Horizon or
Depth (METRIC: m, FIELD: f t ).
– Top boundary value: Horizon or Depth (METRIC: m, FIELD: f t ) depends on
the above selected object.
• Bottom. If this check box is not checked then a bottom grid layer is consider as a
bottom boundary. Otherwise, it is necessary to define the following parameters:
– What to Use. Use as a top boundary one of the following objects: Horizon or
Depth (METRIC: m, FIELD: f t ).
– Bottom boundary value: Horizon or Depth (METRIC: m, FIELD: f t ) depends
on the selected above object.
• Polygon. Property’s boundaries in X and Y directions are defined by polygon’s bound-
aries.
• Value inside. Define blocks values inside the area. There are three possibilities to do
this:
– Value. Assign an arbitrary value to blocks. This value is defined below.
– Do not change. Do not change current value assigned to blocks.
– Undefined. Do not assign any value to blocks.
• Value outside. Define blocks values outside the area. There are three possibilities to do
this:
– Value. Assign an arbitrary value to blocks. This value is defined below.
– Do not change. Do not change current value assigned to blocks.
– Undefined. Do not assign any value to blocks.

26.9.12. 3D Voronoi Regions


Voronoi Diagrams (Regions) – is a method of dividing a 3D property into regions (as many
regions as wells quantity) in such a way that the boundary between two "neighboring" regions
is perpendicular to the straight line connecting the wells (region centers) and runs halfway
between two wells Voronoi diagrams can be created for all wells or for the wells selected by
well filter. Voronoi diagrams are used for a rough estimation of fluid-in-place in the well’s
regions (the well’s fluid-in-place in its Voronoi region). Voronoi diagrams are also used for
estimating a well’s drainage area. Voronoi diagrams can be used in dynamic model as user-
defined fluid-in-place regions FIP (see 12.4.11). In this case the corresponding static and
dynamic parameters can be analyzed separately for each region in tables and graphs.

The detailed description of Voronoi Regions is available in the training


tutorial MD1.5 HowToUseVoronoiRegions.

26.9.12. 3D Voronoi Regions 317


19.1

Discrete template is automatically generated and assigned to the grid property Voronoi
Regions with the colors corresponding to the well names (see the picture figure 76).

Figure 76. Voronoi Regions for wells in the model.

Two algorithms are available to calculate Voronoi Regions:


• 3D Voronoi Regions;
• Multilayer Voronoi Regions.
The difference of 3D Voronoi Regions from Multilayer ones is to that the distance from
a well to blocks is calculated in all three directions. A horizontal well passes through several
blocks, hence the distance from a block to a well is a minimum distance from the block to
one of the well’s blocks.
• Property. Property name in which the calculation result is written.
• Well Filter. Use for Voronoi regions construction wells selected by filter.
• Use Radius (METRIC: m, FIELD: f t ). This radius sets the well influence area. If this
option is activated and the radius is defined then the blocks located outside of the circle
of this radius are not included in Voronoi regions.

26.9.13. Multilayer Voronoi Regions


The general description of Voronoi Regions is available in the section – 3D Voronoi Regions.
Multilayer Voronoi Regions are built in each grid layer independent from other layers. If
a well passes through the block with coordinates (x1 , y1 , z1 ), but does not pass through the
block (x1 , y1 , z2 ), then in the layer corresponding to the z1 coordinate the Voronoi region is
built, but in the layer corresponding to the z2 coordinate the Voronoi region is not built. See
the description of 3D Voronoi Regions.

26.9.13. Multilayer Voronoi Regions 318


19.1

• Grid Select the static grid for which the property is computed.

• Output:

– Result Property. Property name in which the calculation result (Voronoi Regions)
is written.

• Source Data:

– Well Filter.
– Use Radius (METRIC: m, FIELD: f t ). This radius sets the well influence area.
If this option is activated and the radius is defined then the blocks located outside
of the circle of this radius are not included in Voronoi regions.

26.9.14. Faults Segments Property


This calculation subdivides a grid into segments by selected faults. In each segment all blocks
are assigned to integer number.

• Grid. Select the static grid for which the property is computed.

• Segments Property. Property name in which the calculation result is written;

• Faults. Specify faults that will be used to subdivide a grid into segments. To add (delete)
a fault use the button Add Rows (Delete Rows).

• Autodetect. Allows to select all available in a project faults.

26.9.15. Property by Seismic Survey 3D


This calculation allows to transfer any seismic survey (seismic, attributes, velocity cube...) on
any 3D grid. The following parameters have to be set:

• Grid. Select the static grid for which the property is computed;

• Result Property. Property name in which the calculation result is written;

• Seismic Survey 3D. Enter the seismic survey to be transfered;

• Averaging Type. Selection of the averaging type for the upscaling from the seismic
sampling to the grid. The following methods are available: arithmetic, harmonic, ge-
ometric, RMS, minimum, maximum, median, count (assign the number of samples of
each block to each block).

26.9.14. Faults Segments Property 319


19.1

26.9.16. Property By Contact


This calculation creates a discrete property allowing to filter blocks located above, below or
crossing a contact.
The following parameters have to be set:
• Source Grid. Select the static grid for which the property is computed;

• Result Property. Property name in which the calculation result is written;

• Contact. Select a contact that will be used for the calculation. If the contact crosses the
middle of a block, the parts located below and above the contact will be used.

26.9.17. Property by 2D-Map


This calculation allows to create a property using 2D-Map in oder to visualize a 2D-Map.
Each vertical block is assigned to the same value of 2D-Map.
The following parameters have to be set:
• Grid. Select the static grid for which the property is computed;

• Result Property. Property name in which the calculation result is written;

• 2D-Map. Select a 2D-Map that will be used for the calculation.

26.10. Export
The Export function is available for all the geometry objects and is accessible from Calcula-
tions window.

1. Save 3D.
File type: Array of the property values (tNavigator format).
File format – .txt.
Data description: values of parameter are written to the file for all grid blocks. The
coordinates of blocks ascending by X, Y, Z. The following parameters have to be set:

• Grid Select the static grid for which the property is computed.
• Property. Indicates the property which will be exported;
• File Name. Full path to the folder in which the property will be exported;
• Export as Integer. Allows to import the property as an integer;
• Keyword. Specify the keyword corresponding to the exported property;
• Inactive Block Placeholder – a number which specifies that property value in
respective block is absent;
• Separate Layers by Comment – each layer in the file will be headed by its
number;

26.9.16. Property By Contact 320


19.1

• Units. Specify the units of the property.

Example of this file format


--Map: Depth
--Time step: 0

Depth

-- Layer 1 --
+2.748260e+003 +2.742420e+003 +2.742420e+003 +2.737400e+003
+2.737400e+003 +2.733930e+003 +2.733930e+003 0 0 0 0 0
0 0 0 0 0 0

2. Save 3D as ACTNUM
File type: the array of active (corresponding 1 value) and inactive blocks (corresponding
0 value) is saved.
File format – .inc.
Data description: values 1 and 0 are written to the file for all grid blocks. The coordinates
of blocks ascending by X, Y, Z. The following parameters have to be set:

• Property. Indicates the property which will be exported.


• File Name. Full path to the folder in which the property will be exported.
• Separate Layers by Comment – each layer in the file will be headed by its
number.

Syntax corresponds to the keyword ACTNUM (see 12.2.29).


Example of this file format
-- Map: Map
-- Time step: 0

ACTNUM

-- Layer 1 --
+0 +0 +0 +0 +0 +0
+0 +0 0 0 0 0
0 0 0 0 +0 +1
+1 +1 +1 0 0 0
+1 +1 +1 +1 +1
+1 +1 +1 +1 +1 +1

3. Save 3D to .grd
File type: Binary file.

26.10. Export 321


19.1

File format – .grd.


The following parameters have to be set:

• Property. Indicates the property which will be exported;


• File Name. Full path to the folder in which the property will be exported;
• Keyword. Specify the keyword corresponding to the exported property;
• Title. Title of the property which will appear in the header of the file;
• Inactive Block Placeholder – a number which specifies that property value in
respective block is absent.

4. Save 3D to Wellpics
Based on Cut. Export data for blocks which satisfy a user cut condition. The cut can
be selected from the list and the condition has to be set using the = and 6= signs.
Well Filter. Export data for wells satisfying the well filter.
Export Value:

• Values Along Well. All property values along well are exported. If the field Get
Value From Property (below in the dialog) is active then the value of the respec-
tive function of these numbers is calculated and exported;
• First Intersection Point Value. The block value of the first connection is exported.
If the field Get Value from Property (below in the dialog) is active, then the value
of the respective 2D map is exported, according to the option which is chosen.

Get Value From Property. If the option is activated, the value of the root mean square,
the minimum, the maximum, the average, or the sum of the respective 2D map is ex-
ported according to the Export Value type.
Units. Specify the units of the property.

File type: IJK data.


File format – no format is specified.
Data description: Text file with the following data: well name, IJK coordinates of block
with connection, value of parameter in this block.
Example of this file format
’102’ 1 4 1 0.175400
’102’ 1 4 2 0.175400
’102’ 1 4 3 0.175400
’103’ 7 4 1 0.176300
’103’ 7 4 2 0.176300
’103’ 7 4 3 0.176300

26.10. Export 322


19.1

File type: Block center data.


File format – no format is specified.
Data description: Text file with the following data: well name, XYZ (meters) of center
of block with connection, value of parameter in this block.
Example of this file format
’102’ 0.000000 300.000000 2735.030000 0.175400
’102’ 0.000000 300.000000 2740.030000 0.175400
’102’ 0.000000 300.000000 2745.030000 0.175400
’103’ 600.000000 300.000000 2719.000000 0.176300
’103’ 600.000000 300.000000 2724.000000 0.176300
’103’ 600.000000 300.000000 2729.000000 0.176300

5. Save 3D to .xyz
File type: Save a 3D property in .xyz format.
File format – .xyz.
Data description: Layer index (optional) X coordinate of the block (meters), Y coordi-
nate of the block (meters), Z coordinate of the block (meters), value of the parameter in
this block.
Example of this file format
40 9534151.489700 4999493.969697 363.339050 0.000000
39 9534151.489700 4999493.969697 362.683533 1.000000
38 9534151.489700 4999493.969697 362.028011 0.000000
37 9534151.489700 4999493.969697 361.372494 0.000000
36 9534151.489700 4999493.969697 360.716980 1.000000
35 9534151.489700 4999493.969697 360.061462 0.000000
34 9534151.489700 4999493.969697 359.405945 0.000000
33 9534151.489700 4999493.969697 358.750427 1.000000

The following parameters have to be set:

• Property. Indicates the property which will be exported;


• File Name. Full path to the folder in which the property will be exported;
• Write Layer Index. If this option is activated, the layer index will be written in
the exported file, as shown in the example;
• Units. Specify the units of the property.

6. Save 2D to Surfer .grd


File format – .grd.
Data description: Text file for the program Surfer.

26.10. Export 323


19.1

Example of this file format


DSAA
40 65
-50 3950
-50 6450
30.2647 564.92
+57.4933 +58.4596 +59.4258 +60.392 +61.3583 +62.4282
+65.0649 +69.8945 +75.5536 +81.2801 +87.2017 +94.5382
+110.626 +124.216 +126.598 +123.544 +120.511 +117.151
+108.631 +98.4625 +87.8773 +79.3242 +73.3193 +67.9514

The following parameters have to be set:

• Property. Indicates the property which will be exported;


• File Name. Full path to the folder in which the property will be exported;
• Layer Index. Indicate the index layer which will be exported;
• Export as Integer. Allows to import the property as an integer;
• Inactive Block Placeholder – a number which specifies that property value in
respective block is absent;
• Units. Specify the units of the property;

7. Save 2D to .xyz
File type: XY data. Save 2D map in .xyz format.
File format – .xyz.
Data description: X coordinate of the block (meters), Y coordinate of the block (meters),
value of the parameter in this block.
Example of this file format
0.000000e+000 0.000000e+000 5.749330e+001
1.000000e+002 0.000000e+000 5.845960e+001
2.000000e+002 0.000000e+000 5.942580e+001
3.000000e+002 0.000000e+000 6.039200e+001
4.000000e+002 0.000000e+000 6.135830e+001
5.000000e+002 0.000000e+000 6.242820e+001
6.000000e+002 0.000000e+000 6.506490e+001

File type: IJ data. Save 2D map in .xyz format.


File format – .xyz.
Data description: block numbers along X, Y axes, value of the parameter in this block.

26.10. Export 324


19.1

Example of this file format


1 1 5.749330e+001
2 1 5.845960e+001
3 1 5.942580e+001
4 1 6.039200e+001
5 1 6.135830e+001
6 1 6.242820e+001
7 1 6.506490e+001
8 1 6.989450e+001

The following parameters have to be set:


• Property. Indicates the property which will be exported;
• File Name. Full path to the folder in which the property will be exported;
• Layer Index. Indicate the index layer which will be exported;
• Export as Integer. Allows to import the property as an integer;
• Format. Specify the type of format for the export (X Y or i j.);
• Inactive Block Placeholder – a number which specifies that property value in
respective block is absent;
• Units. Specify the units of the property.
8. Save 2D to .cps (CPS-3 ASCII)
File format – .cps.
Data description: To save a 2D property in this format one can specify the number of
values along the axes X and Y, ascending or descending order of blocks on the axes.
The resulting data array can be transposed (reflected relatively to the main diagonal).
Example of this file format
FSASCI 0 1 COMPUTED 0 1.000000e+030
FSATTR 0 0
FSLIMI -33.3333 3933.3333 -33.3333 6433.3333 30.2647 564.9200
FSNROW 195 120
FSXINC 33.333333 33.333333
-> generated by tNavigator
259.6710000 259.6710000 259.6710000 267.4820000 267.4820000
267.4820000 271.0630000 271.0630000 271.0630000 271.8970000
271.8970000 271.8970000 271.9130000 271.9130000 271.9130000
271.7910000 271.7910000 271.7910000 271.6340000 271.6340000

26.11. Distance
This computation measures the distance between the Grid block and the specified objects. The
following calculation options are available:

26.11. Distance 325


19.1

• Height Above the Horizon;

! In this calculation, only vertical distance is taken into account.

• Height Above the Contact;

! In this calculation, only vertical distance is taken into account.

• Distance to Pointset;

• Distance to Blocked Wells.

– In this calculation the Well Filter can be applied to Markers selection.

• Distance to Wells.

– In this calculation the Well Filter can be applied to Wells selection.

26.12. Moving Window Filter


This computation allows to perform property smoothing using a moving window filter. This
operation can be very useful if the discrete data needs to be cleaned from high frequency
noise, which cannot be removed by a connected component filter (for example in the case
where the boundaries between the discrete categories are too torn). The 3D window within
which the smoothing will be performed is defined in the settings. During the computation, for
each grid block, the mode is computed (the most frequent value), (cf. figure 77).

• Grid. Select the grid for the computation;

• Source Property. Select the source property;

• Zones. If the option Zones is ticked, the list of available discrete properties is dis-
played. The moving window filter will be computed within each discrete category. To
be available in the filter, a discrete template has to be assigned to the property;

• Keep Values in Well Blocks. The Values in Well Blocks will not be affected by the
computation;

• Radius Settings. Settings of the filter radius using IJK system. The mode is calculated
within this window;

• Property. Resulting property.

26.12. Moving Window Filter 326


19.1

Figure 77. A) Cross section of the input property. Reservoir blocks are in yellow, the well
path is in grey B) Output for the moving window filter with a radius of 1x1x1. C) Output for
the moving window filter with a radius of 1x1x1, the values in well blocks are preserved. D)
Output for the moving window filter with a radius of 3x3x0 (the window is a horizontal one,
without vertical smoothing).

26.12. Moving Window Filter 327


19.1

27. Interpolation Algorithms


Interpolation is an estimation of a value within two known values in a sequence of values,
extending the values to the entire domain. In tNavigator interpolation is used:

• in graphical interface of hydrodynamics to edit grid properties, User Maps, User Cuts
via Property Editing.

• in Geology Designer and Model Designer to interpolate 2D Maps, horizons and proper-
ties.

tNavigator supports the following interpolation methods:

• Deterministic method:

- Least Squares method;


- Trivial interpolation method;
- Multilayer IDW method.

• Geostatistical method:

- Kriging;
- Sequential Gaussian Simulation (SGS) method;
– Cokriging and collocated Cokriging;
– Multi-point facies simulation (MPS).

In this section a general description of methods is given.

27.1. Least Squares method


There are a large number of interpolation methods. The most popular of deterministic methods
is the Least-Squares method (see [6], [9]).
In tNavigator there are two possibilities of this method’s implementation:

• Multilayer Least Squares method;

• 3D Least Squares method.

In the first case, the three-dimensional interpolation problem is converted to the two-
dimensional one, i.e. an interpolation is carried out for each grid’s layer independently.
General description of the method. Let’s consider a grid, consisting of arbitrary shaped
non-crossing polyhedrons (blocks) {b} defined by 8 peaks. Some of polyhedron’s peaks may
coincide. For each block’s peak the space coordinates (cx , cy , cz ) are defined. Let’s N values
of function F defined at arbitrary points {x} are known: Fi = F(xi ), i = 1, ..., N . If a block
bi contains a point xi , then the value Fi = F(bi ) is defined in the block. Generally speaking
a distribution of points do not coincide with grid’s blocks. In this case the values F(xi ) are

27. Interpolation Algorithms 328


19.1

interpolated to grid’s blocks. Further, for the sake of simplicity, let’s suppose that values of
function F are defined in grid’s blocks, i.e. Fi = F(bi ). In addition to a set of blocks {b}, a
grid contains a set of links between blocks links. linked(bk ) denotes a set of blocks connected
with a block bk , li j denotes a link between bi and b j blocks. A non oriented direction of
link between blocks Axis(li j ) = (x(li j ), y(li j ), z(li j )) is defined by faces, which are mutual for
the blocks. An orientation of the link between blocks is defined by the function Dir(li j ) (i.e.
x+ , x− , y+ , y− , z+ , z− ). hx (bi ), hy (bi ) and hz (bi ) are the distance between mass centers of bi
block’s faces along Ox , Oy and Oz, respectively.
Based on the limited set of function values the function f ∗ , minimizing a least mean
square error of approximation calculated at the points {x}, can be defined as:
N
f ∗ = ∑ (Fi − f (xi ))2 + αR1 ( f ) + β R2 ( f ),
i=1

where R1 ( f ) and R2 ( f ) are correction functions, α and β are coefficients, which defines an
impact level of correction functions and varies in the range [0.01, 100]. Correction functions
limit a variability of approximation values and allow to obtain smoother solutions. First and
second derivatives of function f can be chosen as correction functions. R1 ( f ) and R2 ( f ) are
computed by summation over neighboring blocks (i, j):

R1 ( f ) = ∑ w2i j ( f (bi ) − f (b j ))2 ,


l(bi ,b j )∈links

N  2
 
 2
R2 ( f ) = ∑ ∑ wik f (bk ) − f (bi ) − wk j f (b j ) − f (bk ) / hAxis(lik ) (bk )
k=1 bi ,b j ∈linked(xk )
Dir(lik )=Dir(lki )

where wi j is the weight coefficient, which can be defined differently, li j = l(bi , b j ) is a link
between bi and b j blocks, linked(bk ) are set of blocks linked with a block bk , hAxis (bi ) is
the distance between mass centers of bi block’s faces, quasi-orthogonal to directions Axis =
(x, y, z).
Depends on the chosen grid’s geometry coefficients wi j can be defined as:

• If wi j = 1/hi j (where hi j is the distance between mass centers of adjoining blocks),


then R1 is a sum of square of finite-difference approximations of f derivatives along
directions Axis = (x, y, z). R2 is a sum of square of approximations of second derivatives
.

• If wi j = 1 the grid’s geometry does not take into account.

• If wi j = Ti j , where Ti j is transmissibility of link li j , then R1 is computed by integration


of (∇ f ,~n) over adjoining face of bi and b j blocks, where ~n is the unit vector normal
to the face directed to bi block. In case of rectangular grid Ti j is the ratio of square of
adjoining face of bi and b j blocks to the distance between their mass centers.

27.1. Least Squares method 329


19.1

27.2. Trivial interpolation method


In the trivial interpolation method to each grid’s block bi , i = 1, ..., M , in which a function
f value is not defined, a constant value C is assigned: f (bi ) = C . By default C = 0. The
assignment is carried out by layers independently.
With this method, only the cells situated along the wells will be affected by a value
different from 0. If the input data are logs, an arithmetical mean (in the case of continuous
property) or the most frequent value (in the case of discrete property) will be affected to the
cells with several data points.

27.2. Trivial interpolation method 330


19.1

27.3. Multilayer IDW method


Method of Inverse Distance Weighting (IDW) is a deterministic interpolation method. IDW
method is based on the idea that objects placed in the vicinity are more similar to each other
then objects placed far from each other. To interpolate a value in arbitrary space point IDW
method uses known values defined in the points neighboring to this point. At the same time,
the values in the points placed closer to the interpolated point have a stronger impact on the
forecast value, then values in the remote points. Thus, each point affects the forecast value
only locally, and the impact decreases with increase of distance. This means that points placed
close to the interpolated point have larger weights. Point’s weight decreases as a function of
distance. Therefore, method is called as inverse Distance Weighting method. In case of three-
dimensional interpolation is carried out a dimension can be decreased to two-dimension by
implementing the IDW interpolation to each two-dimensional layer of the three-dimensional
grid.
Let’s N values of arbitrary function f are known and defined at grid’s points xi : fi =
f (xi ). The interpolated value of the function f at a space point x∗ is calculated by using the
function’s values fi at the points xi (interpolation nodes), i = 1, ..., N :
N
 ∑ ωi (x∗ ) fi
, if d(x∗ , xi ) > 0 for each i;
 i=1

 N
∗ ∗
f (x ) = ∑ ωi (x )
 i=1


fi , if d(x, xi ) = 0 for an arbitrary i;

where ωi = d(x∗1,xi ) p are weights corresponding to data points, d(x∗ , xi ) is the distance between
x∗ and xi , p is a power parameter.

27.3. Multilayer IDW method 331


19.1

27.4. Kriging
Kriging is a general linear regression method using statistical parameters to find optimal es-
timations in terms of minimum mean square deviation when constructing surfaces, properties
and User Maps ([8, 7, 10]). The method is based on the principle of unbiased average value.
This means that all values taken together should have the correct average value. To calculate
unknown value of variable at a space point the Kriging method uses a variogram, a configura-
tion of space data and values at the points in the vicinity of the selected point. A construction
of variograms allows user to match a quantitative model with an available structure of space
data.
In tNavigator there are two possibilities of Kriging implementation:

• Multilayer Kriging;

• 3D Kriging.

In case of Multilayer Kriging method is used, an interpolation is carried out independently


for each grid’s layer, i.e. a three-dimensional interpolation problem is converted to a two-
dimensional one.
The following Kriging methods are supported:

• Simple Kriging;

• Ordinary Kriging;

• Universal Kriging.

General description of the method Let’s N values of function f are known and defined
at points (blocks) xi of grid G: fi = f (xi ). A function value is assumed to be constant inside
a block. A grid is a set of arbitrary shaped non-crossing polyhedrons (blocks) defined by 8
peaks. Some of polyhedron’s peaks may coincide. For each block’s peak the space coordinates
(cx , cy , cz ) are defined. The aim of interpolation is to construct an interpolation function fb,
which is a good approximation of unknown function f : fb(x) ≈ f (x) for each x ∈ G.
At a space point x∗ the Kriging interpolation is linear combination of known values of the
function defined at the points x :
N
fb(x∗ ) = ∑ wk (x∗) f (xk )
k=1

Summation is carried out for known function values defined at corresponding points with
coefficients wk . wk coefficients are calculated by solving the system of linear equations.
Notice that to calculate wk coefficients f1 , ..., fN values do not use. Instead, positions of
points x1 , ..., xN and a model of probability process (variogram) are used.
It is supposed that a function f is a random function. Hence, fi = f (xi ) are random values.
Then, their linear combination is a random value as well. wk coefficients are calculated in
such way that a mathematical expectation of random variable fˆ(x∗ ) is equal to a mathematical

27.4. Kriging 332


19.1

expectation of value of random function f (x) at this point, and dispersion of their difference
is minimal:
M( fb(x)) = M( f (x)), D( fb(x) − f (x)) → min.
Main characteristics of the kriging method:

• In the absence of nugget effects, the result reproduces the raw data;

• The standard deviation is estimated;

• If the variogram and the trend computation is based on a sufficient amount of data,
kriging is the most optimal interpolation algorithm;

• Kriging algorithm it tends to under-estimate large values and over-estimate small ones,
which leads to smoothed results.

27.4.1. About the Kriging Variance


Mathematical meaning.
Mathematically, the kriging variance is calculated using the following formula:

Var {Z(x)} = E [Z(x) − m(x)]2 = E Z 2 (x) −2∗E {Z(x)} m(x)+m2 (x) = E Z 2 (x) −m2 (x)
  

Possible interpretation.
The kriging provides the uncertainty about the estimate. It corresponds to the variance
that would have been calculated on a large number of stochastic simulations. The variance
depends on the distance between the data and the unknown location, the variogram or the
spatial covariance model and on the redundancy between data. Which leads to the fact that
the greater the kriging radius, the less are the kriging variance values, figure 78. It does not
depend on the data values, the multiple point redundancy between data and the estimate itself
(assumption of homoscedasticity).

27.4.1. About the Kriging Variance 333


19.1

Figure 78. Comparison of models obtained by kriging (left side) for different kriging radius
(1000m, 2000m, and 5000m) and the corresponding kriging variance model. The higher the
kriging radius, the less are the kriging variance values.

27.4.1. About the Kriging Variance 334


19.1

27.5. Sequential Gaussian Simulation (SGS) method


Sequential Gaussian Simulation method is similar to the Kriging. To get more details see
[7, 10].
In tNavigator there are two possibilities of implementation of this method:

• Multilayer SGS;

• 3D SGS.

Multilayer SGS method is carried out independently for each grid’s layer, i.e. a three-
dimensional interpolation problem is converted to a two-dimensional one.
General description of the method. Let’s define a grid G composed of arbitrary shaped
non-crossing polyhedrons (blocks) {b} defined by 8 peaks. Some of polyhedron’s peaks may
coincide. For each block’s peak the space coordinates (cx , cy , cz ) are defined.
Let’s consider known values of function f at N sample points xi of grid G: fi = f (xi ),
i = 1, ..., N . A function value fi is assumed to be constant inside a block.
A process of variogram construction for this method coincide with construction in method
Kriging.
In contrast to Kriging method, for the SGS method the result of interpolation at point x∗
is a linear combination of defined number of points Nk (where Nk is the number of kriging
points) selected in the region limited by Kriging Radius.
A summation is carried using known values of function f defined at points xi :
Nk
fb(x∗ ) = ∑ wi (x∗ ) f (xi )
i=1

wi coefficients are calculated by solving a system of linear equations.

27.5. Sequential Gaussian Simulation (SGS) method 335


19.1

27.6. Cokriging and collocated Cokriging


This method is used when a positive correlation can be made out between two variables
(properties). A primary variable (the one which is modeled) and secondary variables positively
correlated to the primary one are defined [11]. The result obtained by kriging of the variable
Zα0 can be written as linear combination of the variables in the vicinity of the point x0 , for
the different variables nα .
K nα
Zα∗ 0 (x0 ) = ∑ ∑ λiα Zα (xi)
α=1 i=1
Where Zα∗ 0 is the kriging result of the function Zα0 . Coefficients λi are determined using
the conditions of zero bias and of a minimized error. A non biased estimator implies:

K nα nα0
E(Zα∗ 0 (x0 ) − Zα∗ 0 (x0 )) = E( ∑ ∑ λi α
Zα (xi ) + ∑ λi α0 Zα0 (xi ) − Zα0 (x0 )) =
α=1 i=1 i=1
α6=α0
K nα nα0

∑ α
(mα ∑ λi ) + mα0 ( ∑ λi α0 − 1) (27.1)
α=1 i=1 i=1
α6=α0

Traditionally, a non-biased estimator condition brings to the fact that all the members of
the sum equal to zero, i.e. the sum of the weights of the primary variable equals to 1, while for
the secondary variables, the sum of the weights equals to 0, which brings to the expression of
the simple cokriging. The traditional cokriging requests a variogram for each variable (prop-
erty), and a cross-variogram, which implies the computation of the relative spatial distribution.
This leads to a more complex system of equations.

In Geology Designer, the collocated Cokriging is used, which helps to eliminate the redun-
dant information of the secondary variable. Consequently, the equation system is simplified
and faster than traditional cokriging. Collocated cokriging assumes a linear relationship be-
tween the covariance of the primary variable and the cross-covariance. Which requires a
variogram only for the primary property, using a correlation coefficient for the secondary
property. The result of the collocated Cokriging can be expressed as the following equation:
n
Zα∗ 0 (x0 ) = ∑ λiα0 Zα0 (xi) + ∑ λi0 β Zβ (x0 )
i=1 β 6=α0

Spatially, the resulting property will follow the same trend as the secondary information.

27.7. Multi-point facies simulation (MPS)


This algorithm is a pixel-based algorithm which can be used to simulate facies object-like
models. The supported property distributions for this method can be more complicated than

27.6. Cokriging and collocated Cokriging 336


19.1

the ones used for the Sequential Indicator Simulation (SIS). This leads to a better modeling
of more complexes geological models than the variogram-based SIS method.
The principle is based on the definition of a training image which corresponds to the
typical structures that can be found in the model. It shows the relationships between the
different modeled facies. Since MPS is a stochastic method, density function values are taken
for each simulated points. The probability density function is build using the training image,
instead of the variogram as it is the case for SIS method [11].
The main advantage of this method is that it allows to reproduce the global structure rep-
resented on the defined training image, which at the same time satisfies the local information
at the measurement points.
The training image and the grid to populate are the input data of MPS method. The interpo-
lation is performed in the IJK space. The algorithm used in Geology Designer is summarized
below:

1. Let s the function F be the function to interpolate. All the points to estimate are randomly
visited (the order is defined by Random Seed value). The point B0 to estimate is
compared to the already simulated and data points Xi (which number is defined by the
MPS Template Points field) and which are situated within the defined radius in the
MPS Template Radius field.

2. B0 is compared to the points of the training map. All the Pi points of the map which
satisfy Xi = Pi are considered.

3. The distance F(Xi ) − Pi is estimated. The minimum is calculated and corresponds to the
searched value Q0 (training image point).

4. If this distance is superior to the MPS threshold value, the estimated point value is
randomly generated.

27.7. Multi-point facies simulation (MPS) 337


19.1

28. Blocked Wells


Blocked Wells are created as grid objects and are available in Geometry Objects. It can be
visualized in 3D, Well Section, and Histograms tabs. Blocked Wells option allows to assign
log data points to the grid in the blocks situated along the well path. Reservoir grids have
cells that are generally at a much coarser resolution than that at which well data is sampled.
So, well data should first be upscaled to the resolution of the reservoir grid block. The data
that intersects the grid can be scaled up to the grid resolution by blocking the values into the
grid and then calculating statistics for those values. During the interpolation these "blocked"
values along the wells will be used in order to populate the entire grid.

Examples of how to use Blocked Wells are shown in training tutorials:

• GD3.1. How To Upscale Log Data.

The following options are available:

• Select a log template

• Create Blocked Wells

• Create Blocked Wells by property

• Calculator

28.1. Select a log template


In order to compute blocked wells, the log template has to be set (to indicate if the property
is a continuous or a discrete one). The template editor is available by right mouse button
click on the log curve and selecting Object Setting or go to the menu Document and select
Templates. A template can be selected from the list of available templates. It is possible to
edit a template or to create a new one by clicking on the ellipsis button. A new template can
be added by clicking on the Add New Template button, corresponding to the green "+" icon.
The new template appears in the list and can be modified in the field Info and Palette in the
right part of the List of Templates window.

28.2. Create Blocked Wells


When the log template is properly defined (see Select a log template for more details), the
following parameters have to be set:

• BlockedWells. Blocked property name;

• Well Filter. Well filter setting. If a well filter is selected, the computation will be
performed only for the wells present in the well filter;

28. Blocked Wells 338


19.1

• Source Log. Raw data used for the computation;

• Averaging type. If a grid block contains several data points, a unique value is assigned
to the entire block using one of the following methods, depending on the type of data
(discrete or continuous) which is used:

– Arithmetic. The value assigned to the entire block is the arithmetic mean of the
data point values situated within the grid block;
– Minimum. The value assigned to the entire block is the minimum value of the
data point values situated within the grid block;
– Maximum. The value assigned to the entire block is the maximum value of the
data point values situated within the grid block;
– Median. The value assigned to the entire block is the median of the data point
values situated within the grid block;
– Mid Point. The value assigned to the entire block is the value of the data point
which is the nearest to the cell center;
– RMS. The value assigned to the entire block is the root mean square of the data
point values situated within the grid block;
– Geometric. The value assigned to the entire block is the geometric mean of the
data point values situated within the grid block;
– Harmonic. The value assigned to the entire block is the harmonic mean of the
data point values situated within the grid block;
– Most of. This blocking method is present only for the discrete data logs. The most
frequent value among all data points within the grid block will be assigned to the
entire grid block.

• Treat log. Indicates the method used to fill the cells with no values. 2 methods are
available:

– As points. No values will be attributed to the grid blocks without data points;
– As lines. Depending on the type of data, a value will be assigned to each grid
block. If the data is discrete, the measurement is valid in the interval between 2
data points, so the cells situated in the upper half of the interval between 2 data
points will present the same values as the lowest value of the upper grid block,
while the cells situated in the lower half of the interval will present the same values
as the upper value of the lower grid block (cf. figure 79.
If the data is a continuous one, the upper half of the interval between 2 data points
grid blocks will present the same values as the maximum value present in the upper
grid block,while the cells situated in the lower half of the interval will present the
same values as the maximum value of the lower grid block (cf. figure 80);

28.2. Create Blocked Wells 339


19.1

Well path

Value assigned by
Treat log the blocking method
as lines
Grid blocks Value of the upper
along the well and lower blocks

Treat log as points

Figure 79. Definition of blocked wells with logs treated as lines and as points for discrete
data. The measurement is valid in the interval between 2 data points, so all the cells between
2 data points will present the same values as the upper and lower grid block values if the logs
are defined as lines, while the grid blocks without values will have no values if the logs are
defines as points.

Well path

Treat log
Value assigned by
as intervals the blocking method

Grid blocks
Value of the upper
along the well and lower data points

Treat log as points

Figure 80. Definition of blocked wells with logs treated as lines and as points for continuous
data. The measurement is valid in the interval between 2 data points, so all the cells between
2 data points will present the same values as the upper grid block if the logs are defined as
lines, while the grid blocks without values will have no values if the logs are defines as points.

28.2. Create Blocked Wells 340


19.1

• Min. number of points in block. Minimum number of data points which should be
within a grid block to be taken into account for the computation. If the number of data
points is inferior to the number set, the data points are ignored.
• Use Bias. This option can be used to compute continuous blocked data using already
existing discrete blocked data. This can be used to avoid bias in continuous blocked
data when an averaging method is used, (cf. figure 81 and figure 82). The continuous
blocked data is computed using the blocked discrete data as a reference;

Blocked data: porosity (in red)


Method: geometric, with lithol-
ogy as bias
Raw Data: porosity. Result: reservoir porosity val-
Blocked data: lithology
The geometric mean is ues coherent with preponderant
Method: Most of (reser-
Raw Data: lithology represented in red lithology
voir facies is preponderant)

Figure 81. Use of bias for blocked wells computation. The first track represents the raw
lithology data, the second one is the blocked lithology data where the method most of is
used. The last track represents the results obtained for blocked porosity computation using the
lithology as bias. Porosity values are coherent with the preponderant lithology.

28.3. Create Blocked Wells by property


The values from 3D properties will be assigned to corresponding Blocked Wells cells.
• Grid. Here is the name of a current 3D grid.
• Property. Select property to be assigned to Blocked Wells.
• Blocked Wells. Select Blocked Wells objects to be written the property.
• Well Filter. Toggle on to apply the operation only for certain wells or groups of wells.

28.3. Create Blocked Wells by property 341


19.1

Blocked data: lithology Raw Data: lithology Blocked porosity Blocked porosity Raw Data: porosity
Method: Most of (reservoir data with blocked data without bias
facies is preponderant) lithology as bias Method: arithmetic

No porosity value is
assigned to the block,
Facies 2 is assigned because there is no
to this block porosity data for facies 2
in this block

Figure 82. Computation of blocked well data using bias: porosity data presented in the track
3 is computed using the blocked lithology data represented in the first track. The last block
will present no values, because it should take the porosity value corresponding to the facies 2
according to the blocked data, and there is no porosity data for facies 2 in this block.

28.4. Calculator
New objects can be created by mathematical calculations. For more information about this
option, see Calculator.

28.4. Calculator 342


19.1

29. Contacts
Contacts are created as grid objects, available in Geometry Objects. They can be visualized
in 3D and can be used to generate volumetric properties (see Calculate Volumetric Properties)
as Gas-Oil contact or Oil-Water contact. The following Calculations are available:

• Create Contact by Horizon.

29.1. Create Contact by Horizon


This calculation allows to compute a contact using a horizon. The following parameters have
to be set:

• Grid. Select the grid for which the contact is created

• Contact. Enter a name for the generated contact or select an existing one;

• Discrete Property. This option can be used to define the contacts by zones. Select
the discrete property which contains the categories which will be used to compute the
contacts. The list contains all the properties of the grid which have a discrete template;

• Description. This column appears only if the Discrete Property option is ticked. The
category for which the contact will be computed has to be defined.

• Geometry Source. Choose the way the contact will be computed. If Z-value is selected,
the contact will be computed using the value entered in the field Z-value, if Horizon is
set, the horizon indicated in the field Horizon will be used to create the contact;

• Horizon. Select the horizon which will be used to compute the contact, if Horizon is
set as Geometry Source;

• Z-value. Set the Z-value which will be used to compute the contact, if Z-value is set
as Geometry Source.

29. Contacts 343


19.1

30. Structural Model


Structural models are used to build a consistent structural framework, and sets of structural
surfaces that take into account all the available source data for their construction.
As input, all types of source data are specified, which will be used in the construction of
surfaces (contours lines, point sets, markers, erosion areas, etc...), and the set of rules which
will define the relationship of the different deposits, which will allow to accurately model,
conformable, discontinuous, erosional and basement types of contacts between the different
lithostratigraphic units.
The resulting surfaces take into account both the depth data (markers, contours, etc.) and
those calculated during thickness mapping, which increases the overall accuracy of the model,
makes it possible to identify data bias (appear on the thickness maps), eliminates unintended
intersections between the horizons, allows you to correctly interpolate structural surfaces in
areas with a lack of input data, such as isolated tectonic blocks. The 3D-grid can be constructed
both by the entire integrated structural model and certain subsets of its horizons. Since the
relationships between the horizons have already been set at the structural modeling stage, they
can also be used in the construction of the grid.
The following computations are available:

• Create Structural Model Box


• Add Faults to Structural Model
• Add Horizons to Structural Model
• Build Horizons of Structural Model

3D grids and horizons can be built using the structural model: see the calculations Create
Horizon by Structural Model and Create Grid by Structural Model.

30.1. Create Structural Model Box


This computation allows to create a box for the structural model. All the further calculations
will be performed within this volume. 2 objects are created: Model Box, which corresponds
to the box and Horizons, the list of all the horizons. The following parameters have to be
entered:
◦ Structural Model.
◦ 2D Grid. Parameters for the 2D-grid. The settings can be detected automatically using the
option Autodetect by (see below).
◦ Angle, degrees. Rotation angle of the new coordinate system with respect to the old
one. Corresponds to the angle between the X axis and the border of the constructed
grid. In order to set an automatic value computed from an object, the icon on the
right has to represent a closed padlock. See below the description of Autodetect
option.

30. Structural Model 344


19.1

◦ Min. X. Minimum X coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along X. Grid length along X axis (METRIC: m, FIELD: f t ).
◦ Step along X. Grid step size in the X direction (METRIC: m, FIELD: f t ).
◦ Min. Y. Minimum Y coordinate of the grid in the new coordinate system (METRIC:
m, FIELD: f t ).
◦ Length along Y. Grid length along Y axis (METRIC: m, FIELD: f t ).
◦ Step along Y. Grid step size in Y direction (METRIC: m, FIELD: f t ).
◦ Autodetect by. Selection of the object which size will be used to compute the grid
(for automatic definition);
◦ XY Margin. (METRIC: m, FIELD: f t ) See the description of Autodetect option.
◦ Autodetect. Automatic detection of boundaries for the 2D grid, using the object
defined in Autodetect by field. Maximum and minimum coordinates (X, Y) are
detected. The minimum rotated rectangle by the defined Angle with respect to the
OX axis and enclosing the object with the given XY Margin is built.

◦ Minimal Z. Top depth of the box;

◦ Maximal Z. Bottom depth of the box.

30.2. Add Faults to Structural Model


This computation is available in the list of calculations associated with the structural Faults
objects. It allows to add faults to the structural model. The faults have first to be created or
loaded as a Geometry Object.

◦ Structural model. Name of the structural model to which the faults are added;

◦ Faults Connection Proximity. Set the distance over which the faults are considered as
being connected and will be connected by projection;

◦ Use. Tick to use the selected fault;

◦ Fault. List of all existing faults;

◦ Add Row. Add a new fault;

◦ Remove Rows. Remove a fault;

◦ Autodetect. Adds automatically all the faults from Geometry Objects.

30.2. Add Faults to Structural Model 345


19.1

30.3. Add Horizons to Structural Model


This computation is available in the list of calculations associated with the structural Horizons
object. It allows creating the horizons objects.
◦ Model Horizon. The name of the structural horizon has to be entered;
◦ Rank. Integer indicating the horizon modeling order. In the case of isochores, it is nec-
essary to indicate which horizon lies above the horizon computed by the isochore (the
isochore corresponds to the difference between the computed horizon and the one lying
above): this horizon should have a rank one less than the rank of the computed horizon
and be situated above the computed horizon in the list of horizons. For the markers, if
a top and base horizon (with a rank one less than the rank of the computed horizon and
listed before and after the horizon) are defined, these horizons will be used as trends for
the interpolation of the markers (cf. figure 83).
◦ Source Horizon. The horizon has to be selected from the list of existing horizons;
◦ Source Marker. Selection of the corresponding marker which will be used for the horizon
interpolation;
◦ Source Point Set. Selection of the corresponding point set which will be used for the
horizon interpolation;
◦ Source Polygon Set. Selection of the corresponding polygon which will be used for the
horizon interpolation;
◦ Source Isochore. Selection of the horizon isochore. If the horizon is not selected,it will
be created by adding the isochore value to the depth of the horizon which lies above.
If the horizon is selected, the interpolation between all the input data will be performed
taking into account the proportions provided by the isochore.

30.4. Build Horizons of Structural Model


This computation allows to build the structural horizons according to the input data defined
during the Add Horizons to Structural Model computation. After the model is built, the hori-
zons (Horizons category in Geometry Objects) can be created, isochores can be computed.
◦ Structural Model. Selection of the structural model;
◦ Well Filter. The interpolation is performed only for the wells selected in the filter;
◦ Default Horizon Type. Horizon type for the horizons which are not selected;
◦ Model Horizon. Select the horizon from the list of available horizons;
◦ Horizon Type. In order to accurately manage the contacts between the horizons, the proper
type of horizon has to be chosen from the following list, available by right-mouse button
click on the field (cf. Fig. 64):

30.3. Add Horizons to Structural Model 346


19.1

Figure 83. A) 4 horizons are defined. First, horizons H1 and H3 are built, since their rank
is 1, then H2, since its rank is 2. H4 is calculated from isochoreH4. Since its rank is 3, the
horizon that will be considered higher is H2 (its rank is 2, that is, 3 - 1) and the values of the
isochore for building H4 will be added to its values. B) The horizon situated above H4 and
used for its computation by the defined isochore is H3. C) Horizons H1 and H2 are used as
trends for calculating H2, since their rank is equal to the rank H2 -1 (2-1). D) To calculate
H2, the trend is not used, since there are no horizons with rank 2.

– Conformable. Use for conformable deposits. The horizon will cut all lower horizons
it intersects, except the Basement;
– Discontinuous. Use for unconformable deposits. All the horizons lying upon and
below will be truncated, including the basement;
– Erosional. The horizon will cut all lower horizons it intersects, including the base-
ment
– Basement. Use for horizons defining the basement top. It will cut all upper horizons
it intersects;

◦ Interpolation Parameters. Horizons are interpolated using the Least Square method. The

30.4. Build Horizons of Structural Model 347


19.1

smoothness of interpolated horizon can be improved by varying coefficients in the range


[0.01, 100] (see the formula of LSM).

• Coefficients:
– First Derivative.
– Second Derivative.
• Advanced settings. If this check box is checked the additional option Grid refine-
ment will be available. This allows to improve the accuracy of the interpolation,
however, it increases a computational time. The interpolation is carried out Re-
finement Steps number of times. At initial interpolation step the number of points
in X and Y directions is defined:
– Start Count of Points by X.
– Start Count of Points by Y.
At the first interpolation step it is recommended to use a rough grid, i.e. the number
of points in X and Y directions should be minimal. At each iteration the number of
points in X and Y directions increases in such way that after the defined number
of iterations (steps) the final number of points becomes equal to the number of the
horizon points.

30.4. Build Horizons of Structural Model 348


19.1

31. Fractures
31.1. Introduction

An example and a complete step-by-step instruction on Hydraulic Frac-


tures modeling is provided in the Training Tutorial:

• MD2.3. How To Create Fractures via LGR in Designer.

Hydraulic Fractures modeling via LGR is base on the local grid refinement in Stimulated
Rock Volume (SRV). SRV comprises two zones of reservoir:

• Fracture Zone (FZ) – hydraulic fracture itself;

• Non-Fracture Zone (NFZ) – part of reservoir rocks affected by the fracturing process. It
is assumed that the rock properties in NFZ might be altered due to propant propagation
and reopening of natural fractures.

Extensions and geometry of FZ and NFZ can be defined by Fracture Paths or Fracture
Planes objects.

Grid properties can be FZ and NFZ can be set separately by Fracture Template XYZ ob-
jects. Additionally the properties can be interpolated within SRV by Fracture Arithmetic.

The fracture is attached to the wellbore by Fracture Stage.

Description of Hydraulic Fractures modeling workflow is also available in tNavigator Used


Manual - section 5.8.

31. Fractures 349


19.1

31.2. Unstructured Grids

Unstructured Refinement is enabled by default. If other refinement type (Uni-


! form or Logarithmic) is needed then the corresponding flag of TNAVCTRL
settings should be changed in Runspec section.
Unstructured grids are composed of several nested refinement levels. This grid partition
type is used to reduce the total number of refined blocks and for more accurate depiction of
Fracture Zone (see. Picture 84).

Figure 84. Examples of Grid Refinement using Unstructured Grids.

Unstructured refinement settings are defined in Runspec section of Cases tab (Main set-
tings → Tuning → Settings of model reading and calculation (TNAVCTRL)).

Figure 85. Unstructured grids Settings.

31.2. Unstructured Grids 350


19.1

Two Settings correspond to unstructured grids:

• FRACTURE_BUILD_LOGIC – flag that specifies refinement type:

– UNSTRUCTURED_GRID – in all Fracture Template XYZ unstructured grids re-


finement will be used.
– LOGARITHMIC_PARTITION_GRID – in all Fracture Template XYZ regular re-
finement types (Uniform or Logarithmic) will be used.

• UNSTRUCTURED_FRACTURE_GRID_LEVELS – the maximum number of nested re-


finements

Figure 86. Impact of maximum refinement levels on the grid pattern.

31.2. Unstructured Grids 351


19.1

31.3. Fracture Paths

The settings of this object correspond to the FRACTURE_PATH


i (see 12.2.125) keyword that will be generated in the GRID section of dy-
namic model’s file.
Fracture Path is the polygon that follows the Fracture Geometry in 3D dimension. It can
have an arbitrary configuration and propagate both in lateral and vertical directions. One of
the polyline’s points should be defined as an Anchor Point – it will denote the intersection of
Fracture Path and Well Trajectory.

Figure 87. Fracture geometries initialized by Fracture Paths

Fracture Path geometry can be defined in two ways:

1. Explicitly in Fracture Path Settings – this menu can be accessed via Right Click on the
object’s name. X, Y and Z the of Path’s points should be entered in the table. One of
the Table’s points must be set as an Anchor.

2. Calculated from polygon. This calculation allows to construct Fracture Path from the
selected Polygon. One of the Polygon’s points must be set as an Anchor.

31.3. Fracture Paths 352


19.1

Figure 88. Fracture Path Settings

Figure 89. Fracture Path Calculation from Polygon

31.3. Fracture Paths 353


19.1

31.4. Fracture Planes

The settings of this object correspond to the FRACTURE_PLANE


i (see 12.2.126) keyword that will be generated in the GRID section of dy-
namic model’s file.
In case of complex geometry, several Fracture Paths can be combined into one set –
Fracture Plane. Fracture Plane Editor can be accessed via Right Click on the object’s name.

Figure 90. Fracture Plane Constructed from two Fracture Paths (from left to right: ob-
jects tree, Fracture Paths and their points on 2D View, 2D View of the Fracture after model
initialization)

31.5. Fracture Template XYZ

The settings of this object correspond to the FRACTURE_TEMPLATE


i (see 12.2.127) keyword that will be generated in the GRID section of dy-
namic model’s file.
Fracture Template defines the SRV extension (calculated from Fracture Path or Fracture
Plane and additional parameters), grid properties in Fracture zone (FZ) and Non-Fracture Zone
(NFZ), and Refinement pattern (if Unstructured Refinement is disabled). One Fracture Temlate
can be used for several Fracture Stages.
By default, some parameters of Fracture Template are ignored, since Unstruc-
tured Refinement is used for LGR creation:

• The number of block’s refinement along X, Y and Z axis.


! • Refinement type

• Maximum layer numbers Up (level up)

• Maximum layer numbers Down (level down)

31.4. Fracture Planes 354


19.1

31.5.1. Required parameters


These parameters do not have any default values and should be defined by user.

• LGR Size Nx.


The number of refined blocks along X axis;

• LGR Size Ny.


The number of refined blocks along Y axis;

• LGR Size Nz.


The number of refined blocks along Z axis;

• Plane Name / Path Name.


Name of the Fracture Path or Fracture Plane for fracture’s geometry definition;

• Up.
A fracture height measured upward from an anchor point;

• Down.
A fracture height measured downward from an anchor point;

• Effective Width.
Width of the Fracture Zone (FZ) on the grid. This value is used for Logarithmic and
Unstructured refinement methods;

i This value is used for the LGR construction and does not have to corre-
spond to the width of real fracture.

• SRV Expansion to the Left.


A width of the fracture stimulated zone to the left from an anchor point;

• SRV Expansion to the Right.


A width of the fracture stimulated zone to the right from an anchor point.

31.5.2. Optional parameters


• Max Layers Up.
A restriction of fracture length (in terms of coarse grid blocks) measured upward from
an anchor point;

• Max Layers Down.


A restriction of fracture length (in terms of coarse grid blocks) measured downward
from an anchor point;

• Permeability in FZ.
Constant for all blocks in FZ. Can be overwritten by Fracture Arithmetic.

31.5.1. Required parameters 355


19.1

• Permeability in NFZ.
Constant for all blocks in NFZ. Can be overwritten by Fracture Arithmetic.
• Increment Size of SRV (stimulated delta).
The increment size of SRV around the Fracture (see figure 91).
• Multipliers of Fracture Lenghth to the left and to the right from Anchor Point.
The multipliers of increment size of SRV around the Fracture (see figure 91).

Figure 91. Increment Size of SRV and Fracture Length Multipliers.]

• Angle of Fracture rotation in Fracture Plane around Anchor Point.


This parameter can be visualized in Fracture Rotation tab (see figure 92).
• Angle of Fracture rotation in Horizontal Plane around Vertical Axis.
This parameter can be visualized in Fracture Rotation tab (see figure 92).

Figure 92. Rotation Angles (from left to right: Fracture Plane rotation around Anchor Point
(ROTATE_Z), Fracture rotation around Vertical Axis (Rotate_XY).]

• Grid properties of inactive blocks in FZ.


If inactive blocks are penetrated by Fracture, their pore volume will be recalculated
according to refined grid properties. The following parameters can be specified here for
each refined block: NTG, Porosity, Permeability.
• Refinement.
Method of grid refinement in SRV (FZ and NFZ). This parameter is available for edit-
ing only if unstructured refinement is disabled. Three refinement types are available:
Logarithmic Detailed, Logarithmic Simple and Uniform.

31.5.2. Optional parameters 356


19.1

31.5.3. Optional parameters - Dual Porosity (DP)


In case of Dual Porosity or Dual permeability modeling all grid properties defined above will
be assigned to Matrix. Porosity, Permeability and inactive blocks properties in Fracture media
are indicated separately.

An overview of dual porosity modeling is provided in the Training Tu-


torial:

• MD3.1. How To Create Dual Porosity Models.

31.5.4. SRV boundary shape


A fracture stimulated zone can be subdivided into 4 regions. In each region a curvature α
can be different. Figure 93 shows the distribution of curvatures formed the fracture stimulated
zone and projections of the fracture and the fracture stimulated zone on XY , XZ and ZY
planes.

xαxy1 yαxy1

+ in I,

 α α
a1 xy1 b1 xy1










xαxy2 yαxy2




 α + α in II,
a2 xy2 b1 xy2




f (x, y) =


 xαxy3 yαxy3
αxy3 + αxy3 in III,



a b2




 2




xαxy4 yαxy4



 αxy4 + αxy4 in IV;


a2 b2

where f (x, y) = 1.

31.5.3. Optional parameters - Dual Porosity (DP) 357


19.1

x y
αxz3 αxz4
αyz3 αyz4

III IV
III IV
WELL
WELL
II I II I
αxz2 αxz1 αyz2 αyz1
z z
x
y
WELL y αxz3 αxz4
αyz3
αxy2 b1 αxy1
αyz4
II I αxy3 αxy4
a2 a1
III IV αxy2 αxy1
αxy3 b2 αxy4
αyz1 αyz2
x αxz2 αxz1
z
Figure 93. Distribution of curvatures: Front view (plane XZ ). Side view (plane ZY ). Top
view (plane XY ).

On each plane (XY , XZ , Y Z ) four Shape parameters can be specified varying from
1 to 150. The higher SHAPE value, the wider SRV boundary. The values can be either
input directly in the table in the left bottom corner or adjusted by sliders in Distribution of
Curvatures tab.

Figure 94. Different SRV shapes (from left to right: Rhomboid boundary (Shape=1), Ellipsoid
boundary (Shape=2), Rectangular boundary (Shape=150).)

31.5.4. SRV boundary shape 358


19.1

31.6. Fracture Stage

The settings of this object correspond to the FRACTURE_STAGE


i (see 12.19.147) keyword that will be generated in the SCHEDULE section
of dynamic model’s file.
Fracture Stage object is used to initialize hydraulic fractures for particular well with the
use of previously defined Templates. It attaches Fracture Template to the certain interval of
the well trajectory (Measured Depth (MD) or True Vertical Depth (TVD)). One object can set
Single Stage or Multi-Stage Fracturing.

Fracture Stage Editor can be accessed via Right Click on the object’s name (Fracture Stage
Settings).

Fracture Stages can be visualized on 3D view in a form of rectangular planes that follow
the fractures geometry:

Figure 95. Fracture Stages visualization (Single Stage and Multi-Stage).

The Stage can be activated on any timestep in Development Strategy by the rule Enable
Fracture. Perforations around Fracture Stage can be created by the rule Fracture Stage Anchor.

31.6. Fracture Stage 359


19.1

31.7. Fracture Arithmetic

The settings of this object correspond to the FRACTURE_ARITHMETIC


i (see 12.2.129) keyword that will be generated in the GRID section of dy-
namic model’s file.
Fracture Arithmetic provides an advanced way of grid properties definition in FZ and NFZ.
All parameters can be entered in Fracture Arithmetic Editor which opens by right click on the
objects name (Fracture Arithmetic Settings).

Figure 96. Fracture Arithmetic Editor.

Properties available for definition via Fracture Arithmetic:

• Volumetric properties
PORO (see 12.2.24), NTG (see 12.2.25), MULTPV (see 12.2.28);

• Permeabilities
PERMX (see 12.2.13), PERMY (see 12.2.13), PERMZ (see 12.2.13);

• Saturations
SWAT (see 12.16.14), SOIL (see 12.16.16), SGAS (see 12.16.15);

• Regions indexes
SATNUM (see 12.4.3), ROCKNUM (see 12.4.14), PVTNUM (see 12.4.2);

• Sigma-factor
SIGMAV (see 12.2.73).

31.7. Fracture Arithmetic 360


19.1

The data can be indicated separately for FZ and NFZ, and in case of Dual Porosity mod-
eling for Matrix or Fracture media.

In the selected zones one value can be assigned to all blocks (constant Expression Type),
or property values can be distributed by interpolation. Two interpolation types are available:
• Vertical
Interpolation to the right and to the left from an Anchor Point;
• Radial
Interpolation in radial direction from an Anchor Point.
Interpolation is performed between two value: one value in indicated at the zone center,
another is indicated at the zone boundary. For both types linear or exponential interpolation
law can be selected.

Figure 97. Permeability Interpolation in Non-Fracture Zone.

Additionally, it is possible to use arithmetic operators instead of 0 = 0 :


0+ = 0 – The specified value will be added to the current grid property.
0− = 0 – The specified value will be substracted from the current grid property.
0∗ = 0 – The current grid property be multiplied by the specified value.
0/ = 0 – The current grid property be divided by the specified value.

31.7. Fracture Arithmetic 361


19.1

31.8. Fracture Tables

An example of tabular fracture data input is shown in the Training


Tutorial:

• MD2.7. How to use fracture tables.

Fracture Table is an alternative way to model planar hydraulic fractures via LGR. In
this case it is easier to manage large amount of data comparing to conventional work-
flow (FRACTURE_PATH → FRACTURE_PLANE → FRACTURE_TEMPLATE → FRAC-
TURE_STAGE → FRACTURE_ARITHMETIC).

Each line of the table corresponds to one fracturing event (single or multi-stage fracturing).
Fracture geometry is defined by two Half-lengths and heights upward and downward from an
anchor point.

! Only Planar Fractures can be defined by the table.

Figure 98. Fracture Table and Fracture Stages visualization.

31.8. Fracture Tables 362


19.1

The table itself can be visualize in Table tab. The data can be copied from any text edi-
tor or imported . Fracture tables, created in the project can be exported to the text file.

All Fracture Template parameters can be indicated in the table’s columns. Additionally,
the Schedule data corresponding to Fracture Stages can be defined in the table. In particular,
it is possible to specify:

• Whether the perforations are created around Stage (Create Perforation flag);

• Perforation parameters (see the rule Fracture Stage Anchor);

• Dates of Fracture Stages and its Perforations closure;

Figure 99. Available parameters of Fracture Table.

All data from the table can be input to dynamic model by the Global Rule of the Strategy
– Enable Fracture Table.

31.8. Fracture Tables 363


19.1

31.9. Fractures Intersection


SRV zones of different Fracture Stages may intersect each other. In this case:

• Unstructured LGR will be created taking into account all objects on the plane including
points of fractures intersection;

• If tho SRVs with different grid property have an intersections then the higher of two
values will be assigned to the common blocks (both in Fracture Zone (FZ) and Non-
Fracture Zone (NFZ)).
Example. One the picture 100: WELL_1 FZ Permeability is 1000mD, WELL_2 FZ
Permeability is 300mD. Permeability value in the blocks, where fractures intersect each
other will be set equal to 1000mD.

Figure 100. Intersecting Fracture Stages.

31.9. Fractures Intersection 364


19.1

31.10. Integration with third party software


GSLIB files can be generated in any external software and imported into Model Designer
project.

31.10.1. GSLIB files


tNavigator automatically detect the data while loading .gslib file into the project.

The .gslib file consists of several parts:

• File name (optional);

• List of parameters. Each parameter name is located on a separate line. The measuremet
units can be indicated in brackets ();

• The table of parameters values.

Example of this file format


GSLIB sample file
i_index
j_index
k_index
x_coord (ft)
y_coord (ft)
z_coord (ft)
PERM.md
PORO
1 1 100 1053453.1 610896.7 -9000 0.0119874 0.0843136
2 1 100 1053225.3 610953.0 -9000 0.0119874 0.0843136
3 1 100 1052997.5 611009.2 -9000 0.0119874 0.0843136
4 1 100 1052769.7 611065.4 -9000 0.0119874 0.0843136
5 1 100 1052541.9 611121.7 -9000 0.0119874 0.0843136
... ... ... ... ... ... ... ... ... ...
In this example:

• First line corresponds to the file’s name. It will be ignored.

• First three columns of the table refer to blocks I, J and K indexes. If only pointset is
loaded, these columns will be ignored.

• The following three columns refer to X, Y and Z coordinates of the points or blocks
centers.

• The last two collumns refer to the loaded parameters (PERM and PORO) that can be
treated either as grid properties or as fracture pointset attributes.

31.10. Integration with third party software 365


19.1

31.10.2. Fracture Pointsets


The following Calculations are available for Fracture Pointset objects:

• Import Grid - GSLIB Format


This calculation enables direct import of the grid constructed in external software with
all its properties. In this case .gslib file should have the I, J, K indexes of all blocks, X,
Y, Z coordinates of blocks centers and, optionally, grid properties.

All .gslib file’s data is detected automatically during the import and, if needed, length
units are converted to the project’s units (METRIC or FIELD).

• Import Fracture Pointset from GSLIB file


This calculation enables data import in form of pointset where each point may have
various attributes (Numeric and String types).

• Copy Attribute on Grid


This calculation transfers the values of selected pointset attributes to the grid creating
new grid properties. If several points are located in one block (see picture 101) then their
attribute values will be averaged according to selected algorithm. Calculation algorithms
depend on the objects types.

Figure 101. Copy Attribute on Grid. Example for one block.

i If the property type is not set (i.e. it has Non-defined template), then it
will be treated as continuous object.
The syllables below:
cgrid – grid property value in the block, ci – attribute value of each point.

31.10.2. Fracture Pointsets 366


19.1

◦ For Discrete Properties:


– Most of — the most frequent property value is used for coarse grid block;
– Median — the middlemost value is used;
– Minimum — the minimum value is used;
– Maximum — the maximum value is used;
– Count — Displays the number of entries (i.e. number of points in each block).
◦ For Continuous Properties:
– Sum — the property is calculated as cgrid = ∑ ci ;

– Arithmetic Mean — cgrid = ∑ ci n;

– Geometric Mean — cgrid = n ∏ ci ;

– Harmonic Mean — cgrid = n ∑(1/ci ) ;
q
∑ c2i n ;
 
– RMS — cgrid =
– Minimum — the minimum value is used;
– Maximum — the maximum value is used;
– Median — the middlemost value is used;
– Count — Displays the number of entries (i.e. number of points in each block).

Figure 102. Copy Attribute on Grid. Calculation results.

• Create LGR
The grid can be refined with new grid properties used as a filter. The calculation is
similar to Create LGRs by Filter Property operation.

• Export grid Property to GSLIB


Any grid property can be saved as .gslib file.

31.10.2. Fracture Pointsets 367


19.1

32. Fluid Properties


This section deals with setting up the properties of physical, chemical, and Initial Equilibrium
models.

32.1. General Overview


To set up a property for a region:

• Specify model type and, if needed, trigger the usage of special options (see Runspec).

• Specify the property as a table or import it.


On the left panel under Fluid Properties, there are multiple second-level tabs associated
with various properties. The most important ones are already present by default. The
rest can be added with the More Properties button below. Upon hovering over a tab, a
pop-up message is displayed containing the related keywords.
Once a property is selected, it is possible to create an arbitrary number of tables with
this property in either of the two ways:

– On the Settings tab (if it is closed, press Settings to open) add new tables
using button below and fill in the values by hand or via correlations available
for this particular property.
– Press Import on the right panel to import the table from an external source.

• In Static section of Cases tab: create the region(s) to apply the property to.

• In Fluid section of Cases tab: map the created tables to corresponding regions.

All the properties defining physical, compositional and thermal; features of the model can
be defined in Fluid Properties tab. These features are discussed in details in corresponding
sections of tNavigator User Manual (Physical model, Compositional model, Compositional
thermal model with chemical reactions).

Among all these properties, four major categories can be identified:

• Relative Permeability.

• PVT.

• Initial.

• Rock.

32. Fluid Properties 368


19.1

32.2. Relative Permeability


This section is dedicated to rock-fluid models definition. The data can be input by user directly
or imported from external files.

32.2.1. RP Tables and Corey functions


Relative Permeabilities can be defined as the tabulated tables or by correlations (Corey func-
tions or LET).

Settings panel contains the list of existing RP tables. To create a new one, press .
During the creation of an RP table, the following parameters have to be specified:

• Model Type: Oil/Gas/Water, Gas/Water, or Oil/Water.

• Keyword Family (essentially the type of RP and capillary modeling) is selected from:

• Water-Oil/Gas-Oil (Tables) – keywords SWOF (see 12.6.1), SGOF (see 12.6.2);


• Water/Gas/Oil Sat. Functions (Tables) – keywords SWFN (see 12.6.13), SGFN
(see 12.6.14), SOF3 (see 12.6.15).
• Corey Correlation – keywords COREYWO (see 12.6.3), COREYGO (see 12.6.4),
COREYWG (see 12.6.5);
• LET Correlation – keywords LETWO (see 12.6.8), LETGO (see 12.6.9), LETWG
(see 12.6.10).

• Use Table for Capillary Pressure (for Corey Correlation and LET Correlation RP
types) provides a way to define capillary pressure via a table, while using Corey or
LET correlations for RP.

The following common interface elements are available:

• Import. Standard E1, E3 and MoReS keywords with RP data can be load. Capillary
pressure data will also be loaded if available.

• Export. An include file will be exported containing the keywords appropriate to the
selected RP type.

• If more than one table or function are presented in the project, all graphs can be dis-
played on the same plot (see Figure 103) when the corresponding check boxes are ticked
in the Settings tab.

32.2. Relative Permeability 369


19.1

Figure 103. Simultaneous display of two RP functions.

32.2.2. Operations with RP Tables


The created tables may be edited.

• Hold Shift and drag any graph point. Values in the table to the right will change accord-
ingly.
Bounds for dragging a point in both coordinates are determined by the positions of the
neighboring points on the same curve. The vertical motion applies to the dragged point
alone; the horizontal motion applies to the group of points having common abscissa.

• Double click on any table cell to edit the value in it. The corresponding curve will be
recalculated automatically.

• In the context menu (opens via right-click) there are items Convert to Corey and
Convert to LET. Formulas are presented in the sections Corey correlation and LET
correlation of the tNavigator User Manual.

Note. Dotted curves are current RP curves (figure 104). Solid curves are RP curves trans-
formed to Corey correlation. You can edit RP points and a curvature via changing correspond-
ing values in table on the right. Curves will be rebuilt automatically.

32.2.2. Operations with RP Tables 370


19.1

Figure 104. Conversion to Corey correlation.

32.2.3. Operations with RP functions


In case the properties are set via Corey or LET correlations:
• Double click on any table cell to edit the value in it. Corresponding curve will be
recalculated automatically.
• Right click on the functions name displayed in the tabs above the plot (see Figure 105).
The following operations can be performed:
– Convert to Table. This operation converts both Relative Permeabilities and Cap-
illary Pressure curves defined as Corey/LET functions to table form (SWOF
(see 12.6.1) and SGOF, see 12.6.2).
– Convert Cap. Pressure to Table. Only Capillary Pressure curve will be converted.
– Use Capillary Pressure from other Table. This operation allows to choose the
Capillary Pressure table from other KRP objects defined in the project.

32.2.3. Operations with RP functions 371


19.1

Figure 105. Conversion of Corey functions to RP Tables.

32.2.4. Additional features


All other properties can be accessed via the button More Properties. It is possible to define or
import the following options:

• Leverett J-function definition.

• Relative Permeability and Capillary Pressure Hysteresis modeling.

• Request for 3-phase permeability models (Stone 1 and Stone 2) and its parameters.

• Approximation of RP functions (COREYWOMOD (see 12.6.6) and COREYGOMOD,


see 12.6.7).

• Smoothing of Relative Permeability Tables (KRSMOOTH, see 12.6.89).

• Input of End Points as a function of depth, temperature or composition.

• And other options.

32.2.4. Additional features 372


19.1

32.3. PVT
This section is dedicated to fluid model definition. Black-oil, Compositional and Thermal fluid
models can be defined in PVT-Designer.

• The guidance for fluids models creation via Graphical Interface


is provided in tNavigator PVT Designer Guide;

• Theoretical background for fluid modeling is provided in tNavi-


gator User Manual

– Section PVT properties


– Section Compositional model
– Section Compositional thermal model with chemical reac-
tions

To work with fluid models:

1. Click on the property referring to Black Oil or compositional variant (PVT (blackoil)
or Component Data).

The properties can be accessed by clicking on More Properties button.


• Black-Oil properties are stored in PVT folder.
i • Component properties are stored in Compositional Model folder.
• Thermal properties are stored in Thermal Model folder.

2. Launch PVT Designer by clicking on button on the right panel.

3. In PVT Designer:

• Create fluid models from scratch...


• ...or import the data from external files.
• If the Model Designer project was created by importing the data from existing
model, the PVT and compositional properties can be modified in PVT Designer.

4. Save the PVT project and simply close PVT Designer. All modification will automati-
cally be transferred to Model Designer project.

5. The properties that are not available in PVT Designer (ex. Gas Plant Tables) can be
selected for definition by clicking on More Properties button.

32.3. PVT 373


19.1

32.4. Initial
This section is dedicated to the definition of Initial Equilibrium via EQUIL (see 12.16.2) tables.

The description of all available Initialization options is provided in tNavigator User Man-
ual, section 2.3.

!
The non-equillibrium Initialization can be performed by defining explicitly
the Initial Grid Properties in Geometry Objects tab. These Properties should
be then assigned to the model in Static section of Cases tab.
In Settings panel the following operations can be performed with Equillibration data
specification property:
• Duplicate or Remove.
• Reset to default. This option assigns the default Settings to the Equilibrium data: ref-
erence depth will be set at the model’s center (top plus bottom depth divided by two),
WOC will be set 100 m below reference depth, GOC will be set 100 m above reference
depth.

And example of this option utilization is provided in training tu-


torial MD1.3. How To Load Rescue And Create Model

In this case the settings will be taken from the default 3D Grid (main_grid).
• Create Default by Grid. This option is similar to Reset to default but it allows to
choose the 3D grid from the project that will be used for default settings calculation.

32.5. Rock
This section is dedicated to the definition of Rock properties.

The basic geomechanical rock properties can be defined via:


• Rock Compressibility as a function of reservoir pressure
• Rock Compation Tables (ROCKTAB (see 12.5.21) and ROCKTABH, see 12.5.22).
• Rock Overburden Pressure tables (OVERBURD, see 12.5.32).
• Additionally, for Dual Porosity models the evolution of SIGMA-factor can be defined
via its Multipliers depending on Reservoir Pressure (ROCKTSIG, see 12.5.19).

!
The advanced features of Geomechanical model can be accessed by clicking
on More Properties button. These properties are stored in Geomechanical
Option folder.

32.4. Initial 374


19.1

32.6. More Properties


Besides the functionality mentioned in the previous sections, there is a long list of the property
functions available for the definition in Model Designer. This list can be accessed by clicking
on More Properties button on the bottom of Fluid Properties tab.

Figure 106. Add More Properties.

The description of available properties is provided in tNavigator User Manual:

• Section Physical model

• Section Compositional model

• Section Compositional thermal model with chemical reactions

32.6. More Properties 375


19.1

33. Wells Data.


The tab Wells Data contains the following settings:

• Tables:

– Production Tables – records of historical observations;


– Well Structure Tables – wells trajectories and completions;

• Strategy – Rules and Timesteps defining Development Startegy;

• VFP Designer. VFP tables can be built in tNavigator module – VFP Designer, and then
imported into Model Designer project.

• Schedule (the keywords of SCHEDULE (see 12.19.1) section that are generated via
Rules);

34. Wells Data. Tables


34.1. Well Production Tables
Well Production/Injection data can be loaded in the following formats:

• Import History – One Table;

• Import History – Grouped by Wells;

• Import History – Field History File format;

• Import History – MoRes format;

• Load Wells History from Database.

Group Production/Injection data can also be loaded in a table form:

• Group Production Tables.

All tables can then be used to provide data for Development Startegy Rules:

• Create Historical Well Controls by Table;

• Create Forecast Well Controls by Table;

• Create Group Controls by Table.

33. Wells Data. 376


19.1

34.1.1. Import History – One Table


Import file type: Production/Injection History Table.
Import file format – .txt.

Data description:
• mandatory columns: Well name or Well UWI, Date;

• optional columns:

– Rates: Oil/Gas/Water/Liquid Production and Injection Rates;


– Cumulative parameters: Oil/Gas/Water/Liquid Production and Injection;
– Pressures: BHP, THP;
– Well Efficiency Factor: WEF
– Thermal properties: Enthalpy, Steam Quality;
– Special properties: Salt/Alkaline/Surfactant/Polymer concentration;
– and other parameters.

Columns that are in the file should be selected in the drop-down menu. Order of boxes
can be changed (in accordance with the data in the file).

An example of Well History table import is provided in the Training


Tutorial MD2.4. How To Update Schedule.

Example 1. How loaded historical data is used.


Example of this file format
--Well Date WOPRH WWPRH WWIR
WELL15 01.10.2014 19.6224 130.378 0
WELL15 01.11.2014 19.1517 130.848 0
WELL15 01.12.2014 18.7443 131.256 0
In this example we load historical data for WELL15: oil rate (column WOPRH), water
rate (column WWPRH) and water injection rate (column WWIR).
Loading the data in this format we consider that the well works in the following way:
• Oil rate 19.6224 sm3 /day and Water rate 130.378 sm3 /day, from 01.10.2014 to
01.11.2014;

• Oil rate 19.1517 sm3 /day and Water rate 130.848 sm3 /day, from 01.11.2014 to
01.12.2014;

• Oil rate 18.7443 sm3 /day and Water rate 131.256 sm3 /day, from the date 01.12.2014.

34.1.1. Import History – One Table 377


19.1

There are two possible scenarios:

• If the last date in the model is 01.12.2014, then the rates from the last line are not taken
into consideration in cumulative production calculation. Oil cumulative production
from 01.10.2014 is calculated as 19.6224∗31+19.1517∗30 (only October+November).
To take December into account add the last date 01.01.2015 to the model (DATES,
see 12.19.124).

• If the last date in the model is 01.01.2015, then the rates from the last line are taken
into consideration in cumulative production calculation. Oil cumulative production
from 01.10.2014 is calculated as 19.6224 ∗ 31 + 19.1517 ∗ 30 + 18.7443 ∗ 31 (Octo-
ber+November+December).

Note. In graphical interface on the Graphs tab in the table on the right rates are visualized
with date shift, see the picture 107.

Figure 107. Load historical data

34.1.1. Import History – One Table 378


19.1

Example 2. Additional Settings.


Example of this file format
--Well Date WOPRH WWPRH WWIR
WELL15 01.06.2014 26.2376 123.341 0
WELL15 01.07.2014 24.5654 0
WELL15 01.09.2014 20.1092 129.891 0

• Replace missing values with zero. If this option is used, the parameters for the well
that are missing in the file on the specific date will be replaced with zeros. In the
example above for the date 01.07.2014 water rate (column WWPRH) of the WELL15
is considered as zero. If this option is not used then water rate at this date is equal to
the value from previous time step (01.06.2014).

• Data Filter. If Data Filter is used, then historical data will be loaded only in the specified
time period, including the First Date and the Last Date.

• WEFac Units. If well efficiency factor is set in Days then it is divided by number of
days in a month to convert to Relative.

• Time Units. If Month time units are used then day rates are calculated as:
monthrate
monthdays ∗W EFAC

where:

– monthrate – month rate;


– monthdays – number of days in a month;
– W EFAC – well efficiency factor.

34.1.1. Import History – One Table 379


19.1

34.1.2. Import History – Grouped by Wells


Example of this file format
*METRIC
*Daily
*Date *Oil *Gas *Water
*Name SN-17H1
01.04.2009 22.32 124000.00 0.00
01.05.2009 25.31 140600.00 0.00
01.06.2009 36.36 202000.00 0.00
01.07.2009 32.94 183000.00 0.00
01.08.2009 19.26 107000.00 0.00
*Name SN-22H1
01.10.2012 200.00 200000 0.22
01.11.2012 170.00 170000 0.22
01.12.2012 166.16 150000 0.26
01.01.2013 188.85 130000 0.22
..............................
The beginning of the file contains the keywords which describe the data. It is followed by
history tables for each well. The keywords begin with the symbol*.
Special keywords:
• *READON – the part of the file included in the interval between this keyword and the
keyword *READOFF is not read.

• *READOFF – see above.


Units:
• *METRIC;

• *FIELD.
Units for concrete quantities:
• *MSTB – quantity of liquid measured in STB (is used only with *FIELD );

• *MMSCF – gas volume measured in thousands of MSCF (is used only with *FIELD );

• *MSM3 – all volumes are measured in 1000 sm 3 (is used only with *METRIC);

• *MSM3GAS – gas volume measured in 1000 sm 3 (is used only with *METRIC);

• *MSM3LIQUID – liquid volume measured in 1000 sm 3 (is used only with *METRIC).
Interval of time for which the data is available in the tables:
• *DAILY – daily rate;

34.1.2. Import History – Grouped by Wells 380


19.1

• *MONTHLY – monthly rate;

• *YEARLY – annual rate.

Other keywords:

• *CUMULATIVE – indicates that the tables contain cumulative quantities instead of


rates (injection/production speed). During the loading these quantities are converted
into rates.

• *KEYLENGTH – defines the number of first signs of the keyword which are used for
recognizing it.

• *MISSING_VALUE – defines the value which will replace the missing one during the
import.

One of the following keywords can be used to define the well and to indicate the beginning
of the history table for this well. It is followed by the name of the well and the history table
itself (corresponding to the well).

• *WELL;

• *KEYLABEL;

• *UNIQUEUD;

• *NAME;

• *WELLNAME;

• *KEYNAME.

The following keywords are used to describe the format of the tables. Each of these
keywords represents a column with the corresponding type of data which is present in the
table.
Date Format. Several methods can be used to define the dates:

1. One column *DATE – date related to the historical data.

2. Detailed Data. Instead of a single column, one or more columns can be used from the
following list:

• *DAY – day (day of the month);


• *MONTH – month;
• *YEAR – year;
• *HOUR – hours;
• *MINUTE – minutes;

34.1.2. Import History – Grouped by Wells 381


19.1

• *SECOND – seconds.

3. Date in a particular format. The year and the month have to be set. The day is optional,
but can be indicated. The corresponding fields are defined as follows: YY or YYYY (if
the year is defined by 4 numbers), MM, DD. For example:

• *YY.MM.DD,
• *YYYY.MM.DD,
• *DD/MM/YYYY,
• *YYYYMMDD,

Then the keyword *DAYS is used to define the number of days in the month during which
the production has occurred.
Definition of history data. Keywords defining the production history data for the corre-
sponding dates:

• *OIL – oil rate;

• *GAS – gas rate;

• *WATER – water rate;

• *WINJ – water injection rate;

• *GINJ – gas injection rate;

• *BHP – bottom hole pressure;

• *THP – tubing head pressure.

34.1.2. Import History – Grouped by Wells 382


19.1

34.1.3. Import History – Field History File format


File type: Prod. and Pressure history.
File format – .fhf.
Data description: date; gas rate; oil rate; water rate; BHP.

Example of this file format


2013 12 10
’4600 Production and Pressure’

2011 12 10
’YYYY/MM/DD’

4
’Oil Rate SC’ ’Gas Rate SC’ ’Water Rate SC’ ’Well BHP’
’bbl/day’ ’ft3/day’ ’bbl/day’ ’psi’

’E1’

2011/12/10 0 0 0 10362
2011/12/17 2999 4512234 0 10068
2011/12/18 8411 8117802 0 9694
2011/12/19 5140 3468024 0 9965
2011/12/20 2812 4490000 0 10148
2011/12/21 2825 4248000 0 10156
2011/12/22 2758 4358000 0 10154
2011/12/23 1261 1872542 0 10171

2011/12/26 2439 2163277 0 10197


2011/12/27 2471 3970000 0 10181
2011/12/28 2490 4180000 0 10174
2011/12/29 1676 2924000 0 10156
2011/12/30 4390 6100000 0 10011
2011/12/31 3032 5982000 0 10042
2012/01/01 6827 14256000 0 9776
2012/01/02 4547 8027000 0 9684

34.1.3. Import History – Field History File format 383


19.1

34.1.4. Group Production Tables


This table is similar to Well Production Tables, but the loaded information is provided per
wells group.
Import file type: Production/Injection History Table.
Import file format – .txt

Example of this file format


Group Date Molar_Rate,kg-m/d Water_Rate,sm3/day
FIELD 01.07.2008 0,00000 0,00000
FIELD 08.12.2008 26878,77240 0,62000
FIELD 15.12.2008 26879,00502 0,86513
FIELD 22.12.2008 26556,99346 1,01880
FIELD 29.12.2008 26413,00206 1,00557
FIELD 01.01.2009 25808,00690 0,96595
FIELD 05.01.2009 25807,99794 0,96338
FIELD 12.01.2009 25303,99232 0,92817
FIELD 19.01.2009 25191,00565 0,91742
FIELD 26.01.2009 25693,00214 0,94375
FIELD 02.02.2009 25580,00235 0,93288
FIELD 09.02.2009 25603,00804 0,93027
In this example historical data is loaded for the group 'FIELD': molar production rate, and
water production rate.
First line of the files contains the comments for each column. These comments can be visible
in preview window the import into Model Designer project. It is necessary to skip the lines
that contain the commented out information.

34.1.5. Load Wells History from Database


This calculation is available only via workflows (see 40).
Loading wells history from database is done by means of a Python script. An example script is
available upon request. To import from a database with different structure (or any other source
of data, for that matter) the script has to be modified accordingly. The script must implement a
method get_prod_lines () that returns a complex data structure with well names and history.

34.1.4. Group Production Tables 384


19.1

34.1.6. Operations with production tables


There are several operations available for Production Tables transformation (both for Well
Tables and for Group Tables). The options can be accessed via right click on the table.
Modification can be either applied to the current table or a new table can be created.

1. Filter Table
This option excludes certain data from the table. Two filters are available:
• Well filter – only the wells from the filter will be kept in the table. Data, related
to the other wells will be erased.
• Date filter – only a certain time period will be kept in the table. Data, related to
the timesteps outside this timeframe will be erased.

34.1.6. Operations with production tables 385


19.1

2. Apply Historical data to pervious time step


This option moves each table entry one timestep backward.

3. Calculate cumulative from rate


If the table contains production or injection rate data, then the corresponding cumulative
values can be calculated.

34.1.6. Operations with production tables 386


19.1

4. Calculate rate from cumulative


If the table contains cumulative production or injection data, then the corresponding rate
values can be calculated.

5. Rebuild table for other time steps


If the data input in Production table does not coincide with the time steps defined in the
Strategy, the table can be recalculated. In this case the timesteps will be taken from the
Strategy. Depending on the data type the parameters will be recalculated for new dates
with a use of the special rules:

• The parameters affecting cumulative values (Production or Injection Rates, WEF


etc.) will be recalculated is such a way that the historical controls based on both
initial and recalculated tables would yield the equivalent results in terms of Total
Historical Production and Total Historical Injection. The example of this recalcu-
lation is shown on figure 108
• For the parameters that can be treated as a discrete entries (BHP, THP, etc.), there
are two rules available:
– Keep on existing steps. The data will be kept only for the table entries that
match the timesteps from the Strategy.
– Shift to nearest steps. The data for the timestep will be copied from the
nearest table entry.
An example of these calculations is shown on figure 109

34.1.6. Operations with production tables 387


19.1

Figure 108. Comparison of monthly and yearly historical rate controls

Figure 109. Table recalculation with different rules for discrete properties

34.1.6. Operations with production tables 388


19.1

34.2. Well Structure Tables


The following formats are available for the import of the well structure:

• Events – One Table;

• Events – Grouped by Wells;

• Events – OWX format;

• Events – MoRes format.

If the Well Structure Tables data can be added to Development Strategy via Input Well
Structure Global Rule.

34.2.1. Events – One Table


File type: Events – Table.
File format – .txt.
Data description: well name; branch, date; event; layer; lower depth; upper depth; radius; di-
ameter; skin; multiplier.
Columns that are in the file should be selected in the dropdown menu. Order of boxes can be
changed (in accordance with the data in the file).

Possible events:

• Perforation – open connections in all grid blocks where the trajectory intersects grid.
Lower depth and upper depth should be specified;

• Squeeze – shut connections in all grid blocks where the trajectory intersects grid. Lower
depth and upper depth should be specified;

• Plug – shut connections in all grid blocks where the trajectory intersects grid. Upper
depth should be specified, lower depth is calculated as the end of the trajectory;

• Barefoot – open connections in all grid blocks where the trajectory intersects grid.
Upper depth should be specified, lower depth is calculated as the end of the trajectory.

Example 1.

Example of this file format


WELL1 1.7.1997 perforation 3354.8 3358.8 0.2 -3
WELL1 1.7.1997 perforation 3378.2 3381.6 0.2 -3
WELL1 1.7.1997 perforation 3383 3390.6 0.2 -3
WELL1 1.7.1997 perforation 3393.4 3394.2 0.2 -3
WELL1 1.7.1997 perforation 3397.5 3399.7 0.2 -3

34.2. Well Structure Tables 389


19.1

Example 2.
Load perforations for multilateral wells. For the main well branch (first row) the default ranch
number is used 1∗; the next branch is set via number – 1. For each branch we set depth for per-
forated interval. Please choose branch for the corresponding column in the graphical interface.

Example of this file format


’WU20’ 01.07.2012 1* 1440 1473 PERF 0.16
’WU20’ 01.07.2012 1 1430 2150 PERF 0.16
Additional Settings.

• Replace missing values with zero. If this option is used, the parameters for the well
that are missing in the file on the specific date will be replaced with zeros.

• Data Filter. If Data Filter is used, then historical data will be loaded only in the specified
time period, including the First Date and the Last Date.

34.2.2. Events – Grouped by wells

Example of this file format


UNITS METRIC
UNITS DEPTH FIELD
WELLNAME ’SN-18H1’
06/29/1986 Squeeze 7758.00 7770.00
06/16/1986 Perforation 7551.33 7591.83
01/21/2009 Perforation 7581.06 7621.56
WELLNAME ’SN-21H1’
01/12/1988 Perforation 7728 7758
01/25/2009 Perforation 7530 7545
In this example the events for 2 wells are defined. All the units except for the depth are
measured in the METRIC system. The units of depth are measured in the FIELD system.
Specify Units explicitly. The keyword UNITS is used with one of its parameters:

• FIELD;

• METRIC;

• LAB.

If some of the quantities are measured in one units and some others in other units it is
necessary to add one of the following lines (in addition to the one described above):

• UNITS DEPTH – to indicate the depth units;

• UNITS PRESSURE – to indicate the pressure units;

34.2.2. Events – Grouped by wells 390


19.1

• UNITS DIAMETER – to indicate the diameter units.

See the example below.


Well identification and definition of the beginning of the corresponding table. One of
the following keywords can be used:

• WELLNAME;

• NAME;

• KEYNAME;

• UNIQUEID;

• KEYLABEL;

• WELL.

34.2.3. Events – OWX format


OWX format is a universal format. For these kind of files, the information about trajectories,
markers, events and logs can be loaded. A description of this format can be found here.

34.2.3. Events – OWX format 391


19.1

35. Wells Data. Strategies.

Examples of Development Strategy managements are provided in Train-


ing tutorials:

• MD2.1. How To Add Wells.

• MD2.4. How To Update Schedule.

• MD2.5. How To Build Big Model Use Well Rules.

Strategies tab is used to define the rules for each step. Keywords are automatically gen-
erated for each rule and will be written into the Schedule section when dynamic model is
exported. Switching to the Schedule tab all generated keywords can be seen. Added steps are
displayed as a list on the left under Wells Data. The rules are displayed under each step. Each
rule can be edited on the right under Strategies. Two sets of buttons allow to manage the time
steps and the keywords (see Fig. 110).
Four categories of rules can be added:

• Global Rules;

• Wells;

• Groups;

• Other.

Moreover, several strategies can be created. A strategy corresponds to a set of rules and
time steps. A unique strategy for each model has to be selected during the dynamic model
creation step.

35. Wells Data. Strategies. 392


19.1

Figure 110. Model Designer interface for Strategies tab. A) List of defined strategies and
corresponding time steps and rules (global and affected to a particular time step). B) Editing
area for the rules. This area is displayed by clicking on a rule in the area A). C) Set of buttons
used to manage rules. D) Set of buttons which allows to manage the loaded keywords and to
define a well filter.

35. Wells Data. Strategies. 393


19.1

35.1. Time Steps and Rules management


Under the list of rules and time steps in Strategies Tab, the following buttons are available:

• Add New Rule. The rule is added for the selected time step or as a Global Rule.
The rule has to be selected from the list. A new rule can also be added by right mouse
button click on a time step;

• Duplicate Rule. A rule can also be duplicated by right mouse button click on a time
step. After that rule can be moved holding left mouse button to another time step;

• Remove Rules. Removes the selected rules from the list;

• Time Step Editor.


The time steps can also be added using the button Add Steps which is available by right
mouse button click on the white field under Global Rules, on the panel A (cf. Fig. 110)
and in the menu Time Step Editor situated in the Top Panel Buttons.

– Add Steps.
Step Length. Time step length: One step, Year, Six Months, Three Months, Month,
Week, Day;
– Remove Steps. A rule can also be removed by right mouse button click on a
time step;
– Add Time Steps from Tables. Timesteps will be taken from the specified
table and added to the Strategy. Avaliable table types:
∗ Well Production Tables;
∗ Well Structure Tables;
∗ Group Production Tables;
∗ Fracture Tables.
– Add Time Steps from RFT Logs. The recording dates from the selected
RFT/PLT log will be added to the Strategy.

• Remove Steps. A rule can also be removed by right mouse button click on a time
step;

• Verify Rules. The button is used to check correctness of created rules. In case of a
rule is not correct the following warning will appear on log–panel (located at the bottom
part of project window) or/and in a log–file:
Some problems are found in schedule rules. May be not all rules are applied correctly
due to contradictory or insufficient input data. Press button ’Verify rules on ’Strategies’
tab to see all warnings.

35.1. Time Steps and Rules management 394


19.1

Information about problem for particular rule does not appear automatically on log–
panel. Therefore, to see detailed information about a problem press this button or select
the option Verify Rules from the menu which is available by right mouse button click
on the panel A (cf. Fig. 110).
For example, if for well ”32” both oil rate and water injection are specified in well
production table, then the following warning will appear on the log–panel:
Warning: contradictory historical events for well ”32” are found on 01.05.2014.

By right mouse button click on the white field under Wells Data, the following options
can also be set (cf. Fig. 111):

Figure 111. Menu accessible by RMB on the field under Well Data in Model Designer. This
menu gathers rules, time steps, and strategies managment options.

• Hide Steps Without Rules. If this option is ticked, only the steps with rules will be
displayed;

• Add new strategy. Allows to add a new strategy. The new strategy will be added to the
list of strategies. The corresponding steps and rules will also be displayed and could be
edited;

• Duplicate Strategy. Allows to duplicate a strategy. The copy can be modified indepen-
dently;

• Remove Strategies. Allows to remove a strategy.

35.1. Time Steps and Rules management 395


19.1

35.2. Right Panel Buttons


On the right panel, the following buttons are available:

• Import Keywords.

– Load Well Controls from MoRes format. Standard MoReS format is supported.
∗ Add Rows. Add a file;
∗ Remove Rows. Delete a file from the list;
∗ Preview. Number of Lines. Number of the file lines shown in the Preview
window;
∗ Well History. Set the production table which will be used. The production
table has to be chosen from the list;
∗ Clear Tables. Clears the tables which are already present in the project and
replaces it by a default table.
– Load User Keywords from E1/E3 formats. Standard E1/E3 schedule keywords
are supported.
∗ Select file for load. Browse to find the file to load;
∗ Choose starting date for Load Schedule. Indicate the starting date for the
loaded schedule.

• Well Filter. Set the current well filter. All the rules and the list of keywords in
Wells Data tab will be displayed only for the wells selected in the filter. When this filter
is active its icon is displayed as .

• User Date Filter. All the rules and the list of keywords in Wells Data tab will be
displayed only for the dates selected in the filter. When this filter is active its icon is
displayed as .

• User Date Filter. Only the rules from the selected categories will be displayed.
When this filter is active its icon is displayed as .

35.2. Right Panel Buttons 396


19.1

35.3. Global Rules


Global rules are general well specifications (e.g., structure, trajectories and VFP tables). Other
rules should be specified for selected dates.

35.3.1. Input Wells Trajectories


Adds the keyword WELSPECS (see 12.19.3) and WELLTRACK (see 12.19.9) to the Schedule.
The following options are available:

• Wells. Set the wells to which the rule will be applied.

– Well: selection of a particular well from the list of wells.


– Wells from filter: the rule will be applied only to the wells selected in the filter.
– All Wells: the rule will be applied to all the wells present in the project.

35.3.2. Input VFP tables


Adds the keyword VFPPROD (see 12.19.66) or VFPINJ (see 12.19.65) to the Schedule, if a
VFP table is added via the VFP Designer tab.

35.3.3. Input Well Structure


Adds the keyword COMPDATMD (see 12.19.10) and COMPORD (see 12.19.31) to the Sched-
ule. The following options are available:

• Wells. Set the wells to which the rule will be applied.

– Well: selection of a particular well from the list of wells.


– Wells from filter: the rule will be applied only to the wells selected in the filter.
– All Wells: the rule will be applied to all the wells present in the project.

• Well Structure. Choose a table from the list of well events tables.
It is possible when we have several events tables, for example: historical table, data for
2017 and data for forecast:

– To load or create a new table go to the Table tab;


– If several tables are loaded, you should create several Input Well Structure rules
in order to assign different tables to different rules;
– In order to apply a rule to new loaded events you need to right-click any of the
Input Well Structure rules and press Duplicate. Select the created copy of the
rule and from the drop-down menu select new table as shown in the figure 112.

35.3. Global Rules 397


19.1

Figure 112. Specifying events for global rules.

35.3.4. Gas Lift Optimization


Adds the keyword LIFTOPT (see 12.19.239) to the Schedule. The following parameters should
be specified:

• Increment size for lift gas injection rate;

• Min. economic gradient of improvement in oil production rate for increase in lift gas
injection rate by one;

• Min. interval between gas lift optimizations.

35.3.5. Enable Fracture Table


This keyword transfers all data from the selected Fracture Table into the model. Both GRID
and SCHEDULE fractures related keywords will be generated.

Input of Hydraulic Fractures in a table form is discussed in the Training


tutorial:

• MD2.7. How to use fracture tables.

35.3.4. Gas Lift Optimization 398


19.1

35.4. Well Rules


Well Specification Parameters.
This rule introduces new well to the Schedule, specifies its name (or number), attaches it
to well group and defines its wellhead coordinates. The rule corresponds to WELSPECS
(see 12.19.3) keyword.

Well Connection Factor Multiplier.


This rule is used to multiply well connection transmissibility factors by specified value
for well approximation (see section 2.14.1 of tNavigator User Manual for more infor-
mation). The rule corresponds to WPIMULT (see 12.19.35) keyword.

Well Gas Lift Optimization.


This rule sets the well parameters for lift gas allocation. The description of Gas Lift Op-
timization is provided in tNavigator User Manual, section 2.14.9. The rule corresponds
to WLIFTOPT (see 12.19.242) keyword.

35.4.1. Control
Create Historical Well Control by Table.
This rule creates the historical well controls and limitations based on the data from
the specified table. The controls are defined by writing the keywords WCONHIST
(see 12.19.43) or WCONINJH (see 12.19.47), and, optionally, WEFAC (see 12.19.83) (if
the checkbox Well Efficiency Factor is ticked) in the Schedule section. The rule can be
applied to one well only, to the wells from filter, or to all wells from the current strategy.

It is mandatory to indicate the Well Production Table that will be used as a data input,
and the Wells Type. The Wells Type can be either set explicitly (Producers, Injectors,
Water Injectors, Gas Injectors, or detected by Rate or by BHP.

The controls are set separately for Producers, Water Injectors and Gas Injectors.
Additionally, Enhanced Oil Recovery settings can be indicated. In this case, depending
on the specified parameter, the keywords WALKALIN (see 12.19.173), WPOLYMER
(see 12.19.174), WSALT (see 12.19.175), WINJTEMP (see 12.19.178) and WSURFACT
(see 12.19.172) will be be generated.

Create Forecast Well Control by Table.


This rule creates the forecast well controls and limitations based on the data from the
specified table.

The input format of this rule is similar to Create Historical Well Control by Table.
The only difference is that instead of historical control, (WCONPROD (see 12.19.42) or
WCONINJE, see 12.19.44) the forecast control modes will be set.

35.4. Well Rules 399


19.1

Drawdown Limit for Wells.


This rule sets maximum drawdown allowed for production wells. This limitation is
taken into account for calculation of well potential (see section 5.6.7 of tNavigator User
Manual). The rule corresponds to WELDRAW (see 12.19.123) keyword.

Reset Well Target.


This keyword alters certain well target or limit without changing all other controls. The
rule corresponds to WELTARG (see 12.19.60) keyword.

Well Cycling.
This rule defines the automation cycling well operating mode (see keyword WCYCLE
(see 12.19.50) for details).

Well Efficiency Factor.


This rule sets the values of Wells Efficiency Factors (WEFAC (see 12.19.83) keyword).

Well Injection Limits (Forecast).


This rule sets the control and limitations for Injection Wells operating modes (see key-
word WCONINJE (see 12.19.44) for details).

Well Production Limits (Forecast).


This rule sets the control and limitations for Production Wells operating modes (see
keyword WCONPROD (see 12.19.42) for details).

Well Status.
This rule indicates the current status os the wells (Open, Shut or Stop). The rule corre-
sponds to WELOPEN (see 12.19.128) keyword.

Add WAG Injection Targets.


This rule set the parameters of cyclic Injection (for example, Water Alternating Gas).
The rule corresponds to WELLWAG (see 12.19.51) keyword.

This rule can be added to the Strategy only when the Well Injection con-
! trol is already defined by the rule Well Injection Limits (Forecast)
or Create Forecast Well Control by Table.

35.4.1. Control 400


19.1

35.4.2. VFP tables for wells


These rules assignes loaded VFP Tables to the specified wells. The VFP Tables should be
imported to the project in VFP Designer tab. Two rules are available:

Assign VFP Tables to Production Wells.


This rule corresponds to the 11 −th parameter of WCONPROD (see 12.19.42) keyword.

Assign VFP Tables to Injection Wells.


This rule corresponds to the 9 − th parameter of WCONINJE (see 12.19.44) keyword.

35.4.3. Economical Limits


These rules add economic limitations to the current well operation control.
Two rules are available:
Economic Limits for Injection Wells.
This rule corresponds to the WECON (see 12.19.74) keyword.

Economic Limits for Production Wells.


This rule corresponds to the WECONINJ (see 12.19.81) keyword.

35.4.4. ASP Flooding


The description of ASP model and main equations are provided in section 5.9 of tNavigator
User Manual. If this rule is used, then the corresponding options (ALKALINE (see 12.1.52),
SURFACT (see 12.1.49), POLYMER, see 12.1.51) should be selected in Runspec section.

ASP Flooding.
This rule sets the Alkaline concentration (WALKALIN, see 12.19.173), Surfactant
concentration (WSURFACT, see 12.19.172) and Polymer concentration (WPOLYMER,
see 12.19.174).

35.4.5. Thermal properties

Thermal Properties of Injected Fluid.


This rule can be used in THERMAL (see 12.1.54) runs. It sets the Steam Quality, Steam
Temperature, Pressure and Enthalpy of injected water. The rule corresponds to WIN-
JTEMP (see 12.19.178) keyword.

35.4.6. Brine
Salt Concentration.
This rule sets the salt concertation in injected fluid stream. The description of water
injection into saline reservoirs is provided in tNavigator User Manual (section 2.24.1).
The rule corresponds to WSALT (see 12.19.175) keyword.

35.4.2. VFP tables for wells 401


19.1

35.5. Group Rules

Example of Development Strategy with Group Rules are provided in


Training Tutorials:

• MD2.5. How To Build Big Model Use Well Rules.

• MDAHM1.1. How To Use Molar Rates In AHM.

Create Group Hierarchy.


This rule defines the tree structure for multi-level group control. The tree can consist
of an arbitrary number of levels. The group FIELD is always located at the top of
this tree. Groups that have other groups as children cannot have wells. Thus a group
either contains wells (that is a well-group) or has other groups as children (that is a
node-group).

Group Gas Lift Optimization.


This rule sets the group parameters for lift gas allocation. The description of Gas Lift
Optimization is provided in tNavigator User Manual, section 2.14.9. The rule corre-
sponds to GLIFTOPT (see 12.19.241) keyword.

35.5.1. Control
Create Group Controls by Table.
This rule creates the controls and limitations for production groups based on the data
from the specified table. The controls are defined by writing the keywords GCONPROD
(see 12.19.86), GCONINJE (see 12.19.95), GRUPTARG (see 12.19.63) and, optionally,
GEFAC (see 12.19.84) (if the checkbox Group Efficiency Factor is ticked) in the Sched-
ule section. The rule can be applied to one well only, to the wells from filter, or to all
wells from the current strategy.

The controls are set separately for Producers, Water Injectors and Gas Injectors.

Group Efficiency Factor.


This rule sets the values of Group Efficiency Factors (GEFAC (see 12.19.84) keyword).

Group Injection controls.


This rule sets the Group control and limitations for Injectors (see keyword GCONINJE
(see 12.19.95) for details).

Group Production Controls.


This rule sets the Group control and limitations for Producers (see keyword GCONPROD
(see 12.19.86) for details).

35.5. Group Rules 402


19.1

Reset Group Target.


This keyword alters certain group target or limit, without changing all other controls.
The rule corresponds to GRUPTARG (see 12.19.63) keyword.

35.5.2. Economical Limits


Economic Limits of Production Wells.
These rules add economic limitations to the current group operation controls (see key-
word GECON (see 12.19.121) for details).

35.6. Other Rules


Comment.
This rule allows to add a text comment to the schedule section. The comment will
appear in the Schedule tab as an EDITOR_TEXT operation.

Edit Grid Property.


This rule allows to edit Grid Properties (MULTX (see 12.2.15), MULTY (see 12.2.17),
MULTZ (see 12.2.19)...) on a certain timestep.

Wells and Group Filter.


This rule allows to create a Wells and Groups Filter that works the following way:

• Wells and Groups Filter is set on a specific time step. Starting from this time step
all rules are applied only for selected wells and groups (not to all wells available
in the project).
• In case if on the further step a new rule Wells and Groups Filter is set, then
the previous one stops working and only new rule works.
• When dynamic model is exported the keywords are written to Schedule section to
each date according to the filters that are used for wells and groups (and not for
all wells available in the project). Schedule section can be checked in advance in
the tab Schedule .

The rule Wells and Groups Filter can be created via existing filters (added before using
button on the right panel ) or new filters.

Please note that the rule Wells and Groups Filter is different from the
i button on the right panel that is used for visulization settings adjest-
ment.

35.5.2. Economical Limits 403


19.1

35.6.1. Fractures
Enable Fracture.
This rule activates Fracture Stage and, optionally, assigns to it Fracture Arithmetic. The
rule corresponds to FRACTURE_STAGE (see 12.19.147) keyword

Fracture Stage Anchor.


This rule creates well perforations around Fracture Stages. The following columns are
mandatory for each Stage:

• Stage name;
• Delta 1 – perforation interval to the left from an Anchor Point;
• Delta 2 – perforation interval to the right from an Anchor Point;

The rule corresponds to COMPDATMD (see 12.19.10) keyword


(with 2-nd parameter = STAGE).

35.6.2. User keywords

User Keywords.
This rule allows to add E1/E3 and tNavigator format keywords. The following options
are available:

• Add keyword. Allows to add a new keyword;


– Text. This option allows to enter keyword parameters manually in the field
situated below the description of the keyword (parameters order has to be
respected) (see Fig. 113);
– Table. This option allows to fill keyword parameters using a predefined table
(only E1/E3 and tNavigator formats, see Fig. 114);
– Keyword. Selection of the keyword which has to be added. The list shows all
the keywords which are available.

• Edit Keywords. Allows to edit the selected keyword;


• Duplicate Keywords. Allows to duplicate the selected keyword;
• Remove Keywords.Allows to remove the selected keyword.

35.6.1. Fractures 404


19.1

Figure 113. User keyword in text format.

Figure 114. User keyword in tabular format.

User Keywords (IM format).


This rule allows to add IM format keywords.

User Keywords (GE format).


This rule allows to add GE format keywords.

User Keywords (ST format).


This rule allows to add ST format keywords.

35.6.2. User keywords 405


19.1

36. Wells Data. VFP Designer.


VFP Designer is integrated with the Model Designer, this allows to import full VFP projects
and only VFP tables as well. In the Model Designer each well corresponds to a VFP project.
When importing a VFP project into the Model Designer in addition to the VFP table, all other
well parameters are replaced with ones specified in the project: well basic data (WELSPECS,
see 12.19.3), well trajectory (WELLTRACK, see 12.19.9) and perforations (COMPDATMD,
see 12.19.10).

The description of VPF projects is provided in tNavigator VFP Designer User Guide.

In Model Designer to import a VFP project select on the tab Wells Data VFP Designer.
The tree of imported VFP projects is located on the left and the tree of imported VFP tables
is located below.
On the right panel the following buttons are placed:

• Open VFP Designer. Call the VFP Designer to edit the selected VFP project;

• Export well data to VFP Designer;

• Import VFP Designer project;

• Import VFP Table From File;

• Export VFP Table. This button is active if a VFP table is selected (on the left).

Figure 115. Integrating VFP Designer with Model Designer.

36. Wells Data. VFP Designer. 406


19.1

37. Wells Data. Schedule


All the data, defined in the current Development Strategy can visualized in Schedule tab.
In this tab, the tables summarizing the rules and controls are available by categories (Well
Definition, Well Production, etc...) For visualization settings two filters can be used: Well
Filter and Time Filter .
Development Strategy defined in the Model Designer can be exported as a text file (.inc
format) which can be added directly to the dynamic model .data file via keyword INCLUDE
(see 12.1.80).

37. Wells Data. Schedule 407


19.1

38. Data Analysis


The tab Data Analysis allows to create variograms by logs, markers and blocked wells and
to perform a complete analysis by zones, by facies or by any defined discrete category.
The Statistics tab allows to visualize all the parameters related to the objects selected
under Data Analysis. The tabs can be duplicated by clicking on the black cross and the tabs
can be detached in order to create independent views. The following objects are available in
the Data Analysis tab:

• Variograms

– Variogram models
– Variogram Calculations

• Analyze Blocked Wells data

– Create and analyze variograms by zones and regions


– Create and analyze VPCs by zones and regions

38.1. Variograms
38.1.1. Variogram models
Variograms are key tools in classical geostatistic, which are applied for analysis and mod-
elling of space correlation [10]. Further, the approach of variograms construction is briefly
outlined. Physical intuition suggests that values at two points, placed close to each other, are
close because these values are generated under similar physical conditions (have the same
”geological environment”). On the contrary, at long distance the conditions are different and
greater variations are to be expected. The value variability with the distance can be quantified
with the variogram cloud. Variograms are important tools for trend, cyclicity, geometric and
zonal anisotropy detection.
Let’s consider known values of f at N sample points {xi }, i = 1, ..., N , for which a
variogram will be constructed. All possible pairs of available points xi , x j , where 1 6 i <
j 6 N , are considered. For each pair the distance ρ = |xi − x j | and square of the difference
between values at these points v = ( fi − f j )2 are computed. The obtained set of points on a
plane (ρ, v) is called a variogram cloud.
A variogram cloud can display anisotropy (i.e. shows different behaviors along the dif-
ferent directions). This is frequent in 3D cases, where vertical variability is rarely of the
same nature as horizontal variability (layer media). The main anisotropy directions are of-
ten suspected from geological knowledge, and a variogram cloud is calculated along these
directions.
Depending on the function v(ρ) which is used to construct the curve that approximates
the cloud, the following variogram models are implemented:

38. Data Analysis 408


19.1

Model type Formula


 ρ

Exponential v(ρ) = c 1 − e − a

c 3ρ − ρ 3 ,

  
2a 2a3
if ρ < a;
Spherical v(ρ) =


c, if ρ > a

2
 
− ρ2
Gaussian v(ρ) = c 1 − e a
3 7ρ 5 3ρ 7
 
Cubic v(ρ) = c 7 ρa − 35ρ
4a3
+ 2a5
− 4a7
 
Nugget effect v(ρ) = c 1 − ρa sin ρa

Power law v(ρ) = cρ a

Cauchy v(ρ) = c log ρ


2
De-Vijs v(ρ) = c ρ 2ρ+a2

The output of a variogram computation is a plot where X-axis represents the distances
between wells (data points) split into the number of intervals assigned by the user. All well
pairs are considered and distances between them (i.e. the distances between wells in the same
layer) are computed. For each pair of wells the difference between corresponding values of
the selected property is computed. The Y-axis displays the squared difference of the selected
property values.
In the case of a large number of wells, the variogram cloud (as shown by a cross on the
interface) represents a group of well pairs, rather than a single pair. The wells are grouped
by the distance between the wells and a variogram point displays the average X-axis and
Y-axis values. The red curve is created depending on the selected variogram model type.
In tNavigator, the most optimal curve is calculated automatically using the Polak-Ribiere
conjugate gradient method. This curve can be further modified by the user. The variogram
model has to be carefully set, since the experimental points themselves are not used in property
computations.
A 2D variogram can also be computed for anisotropic models. The algorithm is the same
as for 1D plots: first, the model is discretized along X and Y in order to create a variogram
grid. If several data points are located in the same grid cell, an average value is computed
for the entire cell. So obtained data points are compared as for 1D plot and the square of the
difference between values at these points are computed and filled in the grid (in tNavigator
colors represent variogram values). This 2D plot allows to detect the main anisotropy direction.
The same can be performed in the case of spatial anisotropy for the XZ plane (cf. figure 116).

38.1.1. Variogram models 409


19.1

Figure 116. A) Display of a 2D variogram and of the main and orthogonal directions. The
2D grid is defined by the number of X and Y intervals and the colors correspond to variogram
values, blue colors represent the minimum data variation, while the red ones, display the
maximum anisotropy. The main variogram azimuth has to be set along the minimum data
variation. B) Display of a 1D variogram computed along the main direction. The number of
points is given by the number of intervals

38.1.1. Variogram models 410


19.1

38.1.2. Variogram Calculations


The following calculations are available:
• Build Isotropic Variogram by Markers;
• Build Isotropic Variogram by Logs;
• Build Anisotropic Variogram by Markers;
• Build Anisotropic Variogram by Logs;
• Build Isotropic Variogram by Blocked Wells;
• Build Anisotropic Variogram by Blocked Wells.
Build Isotropic Variogram by Markers
This calculation allows to create an isotropic variogram using well markers. The markers
depth will be considered. The following parameters have to be set:
• Variogram Name. Output name of the computed variogram;
• Well Marker. Set the well markers which will be used to compute the variogram;
• Well Filter. The variogram will be computed only for the wells selected in the filter;
• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);
• Correlation Radius. Distance between the data points. The wells separated by distances
exceeding the assigned radius are excluded from the variogram construction. If the
distance between wells is within the radius the wells are included in the variogram
computation;
• Number of Intervals. Number of lags (corresponds to the number of points of the vari-
ogram) (see figure 117).
In variogram tabs, the following parameters can be set:
• Range. Starting point of the near-straight-line section of the curve. Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;
• Sill. Height of the near-straight-line section of the curve. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;
• Nugget Effect. Value of the variogram at the origin. The nugget effect can be due to
measurement errors or to variations at microscales (inferior to the sampling distances).
The value can be entered in the corresponding field or the cursor can be moved to fit
the experimental variogram curve to the points.

38.1.2. Variogram Calculations 411


19.1

Build Isotropic Variogram by Logs


This calculation allows to create an isotropic variogram using well logs. Logs values will
be considered. The following parameters have to be set:

• Variogram Name. Output name of the computed variogram;

• Well Log. Set the well logs which will be used to compute the variogram (raw data);

• Well Filter. Well filter setting. If a well filter is selected, the computation will be performed
only for the wells present in the well filter;

• User Cut. The variogram will be computed only for the points situated in the selected
area. Only the points situated in the selected blocks will be taken into account. To select
an area, the property or the region has to be selected from the list and the condition
has to be set with the operator (the proper operator has to be selected from the list)
and the corresponding value (which has to be entered in the corresponding field). This
option can be particularly useful when a Net-To-Gross property is defined: a variogram
containing only reservoir data can be computed using the condition NTG = 1;

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Correlation Radius. Distance between the data points. Points separated by distances ex-
ceeding the assigned radius are excluded from the variogram construction. If the distance
between the points is within the radius the points are included in the variogram compu-
tation;

• Number of Intervals. Number of lags (corresponds to the number of points of the vari-
ogram, see figure 117);

In variogram tabs, the following parameters can be set:

• Range. Starting point of the near-straight-line section of the curve. Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Sill. Height of the near-straight-line section of the curve. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Nugget Effect. Value of the variogram at the origin. The nugget effect can be due to
measurement errors or to variations at microscales (inferior to the sampling distances).
The value can be entered in the corresponding field or the cursor can be moved to fit
the experimental variogram curve to the points.

38.1.2. Variogram Calculations 412


19.1

Build Anisotropic Variogram by Markers


This calculation allows to create an anisotropic variogram using well markers. The markers
depth will be considered. In the case of anisoptropic variograms, first, a 2D variogram is com-
puted. Then, classical 1D variograms are calculated and the plot is displayed. The following
parameters have to be set (see figure 117):

• Variogram Name. Output name of the computed variogram;

• Well Marker. Set the well markers which will be used to compute the variogram;

• Well Filter. The variogram will be computed only for the wells selected in the filter;

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Anisotropy. Selection of the anisotropy type (Plane or Spatial). If the anisotropy is a plane
one, the vertical variogram will not be computed.

• 2D Variograms. Parameters which concern the 2D variogram (along X and Y axis) which
will be computed. The following settings are available:

◦ Same Parameters for All Axes. This option allows to set the same parameters along
X and Y axis;
◦ X Correlation Radius. Distance between the wells (data points). Points separated
by distances exceeding the assigned radius are excluded from the 2D variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Number of X Intervals. Discretization intervals number along X axis. If the model
contains a high number of wells, it is recommended to increase the number of
intervals;
◦ Y Correlation Radius.
◦ Number of Y Intervals.
◦ Z Correlation Radius.
◦ Number of Z Intervals.

• Directional Variograms.

◦ Same Parameters for All Directions. This option allows to set the same parameters
along the main, the orthogonal and the vertical direction;
◦ Main Direction. Correlation Radius. Distance between the data points. Points sep-
arated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;

38.1.2. Variogram Calculations 413


19.1

◦ Main Direction. Number of Intervals. Discretization intervals number along the


direction of computation;
◦ Main Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the com-
putation;
◦ Normal Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Normal Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Normal Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;
◦ Vertical Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Vertical Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Vertical Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;

In variogram tabs, the following parameters can be set:

• Range. Starting point of the near-straight-line section of the curve. Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Sill. Height of the near-straight-line section of the curve. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Nugget Effect. Value of the variogram at the origin. The nugget effect can be due to
measurement errors or to variations at microscales (inferior to the sampling distances).
The value can be entered in the corresponding field or the cursor can be moved to fit
the experimental variogram curve to the points.

For anisotropic variograms the following additional parameters are computed (see fig-
ure 117):

38.1.2. Variogram Calculations 414


19.1

• Azimuth. Sets the azimuth of the main anisotropy direction (angle between the direction
and X axis). This estimation can be based on the result obtained by 2D variogram com-
putation. The azimuth has to be chosen in order to accurately characterize the variability;

• Dip. Sets the dip for the vertical variogram computation;

• Range Main. Starting point of the near-straight-line section of the curve displaying the
variogram build along the main direction (given by the azimuth). Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Range Normal. Starting point of the near-straight-line section of the curve displaying the
variogram build along the normal direction (orthogonal to the main one). Corresponds
to the point where the curve has reached 95% of the sill. The value can be entered in
the corresponding field or the cursor can be moved to fit the experimental variogram
curve to the points;

• Range Vertical. Starting point of the near-straight-line section of the curve displaying the
variogram build along the vertical direction. Corresponds to the point where the curve
has reached 95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points.

Build Anisotropic Variogram by Logs


This calculation allows to create an anisotropic variogram using well logs. Logs values
will be considered. The following parameters have to be set (see figure 117):

• Variogram Name. Output name of the computed variogram;

• Well Log. Set the well logs which will be used to compute the variogram (raw data);

• Well Filter. Well filter setting. If a well filter is selected, the computation will be performed
only for the wells present in the well filter;

• User Cut. The variogram will be computed only for the points situated in the selected
area. Only the points situated in the selected blocks will be taken into account. To select
an area, the property or the region has to be selected from the list and the condition
has to be set with the operator (the proper operator has to be selected from the list)
and the corresponding value (which has to be entered in the corresponding field). This
option can be particularly useful when a Net-To-Gross property is defined: a variogram
containing only reservoir data can be computed using the condition NTG = 1;;

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Anisotropy. Selection of the anisotropy type (Plane or Spatial). If the anisotropy is a plane
one, the vertical variogram will not be computed.

38.1.2. Variogram Calculations 415


19.1

• 2D Variograms. Parameters which concern the 2D variogram (along X and Y axis) which
will be computed. The following settings are available:

◦ Same Parameters for All Axes. This option allows to set the same parameters along
X and Y axis;
◦ X Correlation Radius. Distance between the wells (data points). Points separated
by distances exceeding the assigned radius are excluded from the 2D variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Number of X Intervals. Discretization intervals number along X axis. If the model
contains a high number of wells, it is recommended to increase the number of
intervals;
◦ Y Correlation Radius.
◦ Number of Y Intervals.
◦ Z Correlation Radius.
◦ Number of Z Intervals.

• Directional Variograms.

◦ Same Parameters for All Directions. This option allows to set the same parameters
along the main, the orthogonal and the vertical direction;
◦ Main Direction. Correlation Radius. Distance between the data points. Points sep-
arated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Main Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Main Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the com-
putation;
◦ Normal Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Normal Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Normal Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;

38.1.2. Variogram Calculations 416


19.1

◦ Vertical Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Vertical Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Vertical Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;

In variogram tabs, the following parameters can be set:

• Range. Starting point of the near-straight-line section of the curve. Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Sill. Height of the near-straight-line section of the curve. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Nugget Effect. Value of the variogram at the origin. The nugget effect can be due to
measurement errors or to variations at microscales (inferior to the sampling distances).
The value can be entered in the corresponding field or the cursor can be moved to fit
the experimental variogram curve to the points.

For anisotropic variograms the following additional parameters are computed:

• Azimuth. Sets the azimuth of the main anisotropy direction (angle between the direction
and X axis). This estimation can be based on the result obtained by 2D variogram com-
putation. The azimuth has to be chosen in order to accurately characterize the variability;

• Dip. Sets the dip for the vertical variogram computation;

• Range Main. Starting point of the near-straight-line section of the curve displaying the
variogram build along the main direction (given by the azimuth). Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Range Normal. Starting point of the near-straight-line section of the curve displaying the
variogram build along the normal direction (orthogonal to the main one). Corresponds
to the point where the curve has reached 95% of the sill. The value can be entered in
the corresponding field or the cursor can be moved to fit the experimental variogram
curve to the points;

38.1.2. Variogram Calculations 417


19.1

• Range Vertical. Starting point of the near-straight-line section of the curve displaying the
variogram build along the vertical direction. Corresponds to the point where the curve
has reached 95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points.

Build Isotropic Variogram by Blocked Wells


This calculation allows to create an isotropic variogram using blocked data. Blocked values
will be considered. In order to compute the variograms for blocked wells, the template of the
log curve and the blocked wells property has to be set.
The following parameters have to be set (see figure 117):

• Variogram Name. Output name of the computed variogram;

• Blocked Wells. Set the blocked wells which will be used to compute the variogram;

• Well Filter. Well filter setting. If a well filter is selected, the computation will be performed
only for the wells present in the well filter;

• User Cut. The variogram will be computed only for the points situated in the selected
area. Only the points situated in the selected blocks will be taken into account. To select
an area, the property or the region has to be selected from the list and the condition
has to be set with the operator (the proper operator has to be selected from the list)
and the corresponding value (which has to be entered in the corresponding field). This
option can be particularly useful when a Net-To-Gross property is defined: a variogram
containing only reservoir data can be computed using the condition NTG = 1;

• Filter by Layers. If this option allows to compute the variogram by layers. So the pairs of
points used for the computation will lay within the same layer;

• Facies. Available for discrete properties. List of available categories (facies types). To
select a category for the computation, the box in front of it has to be checked. Please
note that in order to properly compute blocked wells and variograms by blocked wells,
the log template has to be properly set (Select a log template). If the template is not
set, the facies categories will not be available for the computation. Note also that this
computation will allow to create as many variograms as used facies;

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Correlation Radius. Distance between the data points. Points separated by distances ex-
ceeding the assigned radius are excluded from the variogram construction. If the distance
between the points is within the radius, the points are included in the variogram com-
putation;

• Number of Intervals. Number of lags (corresponds to the number of points of the vari-
ogram, see figure 117);

38.1.2. Variogram Calculations 418


19.1

Build Anisotropic Variogram by Blocked Wells


This calculation allows to create an anisotropic variogram using blocked data. Blocked
values will be considered. The following parameters have to be set (see figure 117):
• Variogram Name. Output name of the computed variogram;

• Blocked Wells. Set the blocked well which will be used to compute the variogram;

• Well Filter. Well filter setting. If a well filter is selected, the computation will be performed
only for the wells present in the well filter;

• User Cut. The variogram will be computed only for the cells situated in the selected area.
Only the the selected blocks will be taken into account. To select an area, the property or
the region has to be selected from the list and the condition has to be set with the operator
(the proper operator has to be selected from the list) and the corresponding value (which
has to be entered in the corresponding field). This option can be particularly useful when
a Net-To-Gross property is defined: a variogram containing only reservoir data can be
computed using the condition NTG = 1;;

• Filter by Layers. If this option allows to compute the variogram by layers. So the pairs of
points used for the computation will lay within the same layer;

• Facies. Available for discrete properties. List of available categories (facies types). To
select a category for the computation, the box in front of it has to be checked. Please
note that in order to properly compute blocked wells and variograms by blocked wells,
the log template has to be properly set (see Select a log template). If the template is not
set, the facies categories will not be available for the computation. Note also that this
computation will allow to create as many variograms as used facies;

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Variogram Model Type. Selection of the variogram type (cf. Variogram model type de-
scription);

• Anisotropy. Selection of the anisotropy type (Plane or Spatial). If the anisotropy is a plane
one, the vertical variogram will not be computed.

• 2D Variograms. Parameters which concern the 2D variogram (along X and Y axis) which
will be computed. The following settings are available:

◦ Same Parameters for All Axes. This option allows to set the same parameters along
X and Y axis;
◦ X Correlation Radius. Distance between the wells (data points). Points separated
by distances exceeding the assigned radius are excluded from the 2D variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;

38.1.2. Variogram Calculations 419


19.1

◦ Number of X Intervals. Discretization intervals number along X axis. If the model


contains a high number of wells, it is recommended to increase the number of
intervals;
◦ Y Correlation Radius.
◦ Number of Y Intervals.
◦ Z Correlation Radius.
◦ Number of Z Intervals.
• Directional Variograms.
◦ Same Parameters for All Directions. This option allows to set the same parameters
along the main, the orthogonal and the vertical direction;
◦ Main Direction. Correlation Radius. Distance between the data points. Points sep-
arated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Main Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Main Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the com-
putation;
◦ Normal Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Normal Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Normal Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;
◦ Vertical Direction. Correlation Radius. Distance between data points. Points sepa-
rated by distances exceeding the assigned radius are excluded from the variogram
construction. If the distance between the data points is within the radius, the points
are included in the variogram computation;
◦ Vertical Direction. Number of Intervals. Discretization intervals number along the
direction of computation;
◦ Vertical Direction. Tolerance. Deviation angle from the direction of computation
defining the area within which the points are taken into account for the computa-
tion;
In variogram tabs, the following parameters can be set:

38.1.2. Variogram Calculations 420


19.1

• Range. Starting point of the near-straight-line section of the curve. Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Sill. Height of the near-straight-line section of the curve. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Nugget Effect. Value of the variogram at the origin. The nugget effect can be due to
measurement errors or to variations at microscales (inferior to the sampling distances).
The value can be entered in the corresponding field or the cursor can be moved to fit
the experimental variogram curve to the points.

For anisotropic variograms the following additional parameters are computed:

• Azimuth. Sets the azimuth of the main anisotropy direction (angle between the direction
and X axis). This estimation can be based on the result obtained by 2D variogram com-
putation. The azimuth has to be chosen in order to accurately characterize the variability;

• Dip. Sets the dip for the vertical variogram computation;

• Range Main. Starting point of the near-straight-line section of the curve displaying the
variogram build along the main direction (given by the azimuth). Corresponds to the
point where the curve has reached 95% of the sill. The value can be entered in the
corresponding field or the cursor can be moved to fit the experimental variogram curve
to the points;

• Range Normal. Starting point of the near-straight-line section of the curve displaying the
variogram build along the normal direction (orthogonal to the main one). Corresponds
to the point where the curve has reached 95% of the sill. The value can be entered in
the corresponding field or the cursor can be moved to fit the experimental variogram
curve to the points;

• Range Vertical. Starting point of the near-straight-line section of the curve displaying the
variogram build along the vertical direction. Corresponds to the point where the curve
has reached 95% of the sill. The value can be entered in the corresponding field or the
cursor can be moved to fit the experimental variogram curve to the points.

38.1.2. Variogram Calculations 421


19.1

38.2. Analyze Blocked Wells data


The Data Analysis tab allows to analyze the blocked wells data: variograms can be create
using the blocked wells and discrete property filters and the VPC curve can be edited. To
define the filters, the following parameters can be set:

• Zones, Regions. If Discrete Property is ticked, the lists of discrete properties and
corresponding categories are available. The variograms and the VPC will be calculated
for the blocks situated within the volume defined by these filters. Up to 2 discrete
properties can be chosen. To be available in the filter, a discrete template has to be
assigned to the property;

• Facies. If a discrete template is assigned to the blocked wells which is selected in Data
Analysis, the corresponding categories are displayed. All the settings which will be
performed in the Variogram and VPC tabs will be done for the selected category;

38.2.1. Create and analyze variograms by zones and regions


In the Data Analysis tab, the variograms can be created by blocked wells and then edited,
using discrete property filters. To have the access to this option, Blocked Wells have to be
created in the grid first. The list of available blocked wells by grid is displayed under Data
Analysis (cf. figure 118).

• Variogram. This tab allows to calculate a variogram for each category selected in
Facies and for the volumes defined in the Zones, Regions. These variograms will
then be available in the Facies Analysis (Zones, Regions) and Property Interpolation
(Zones, Regions)calculations:

– Directional Variogram Estimation Parameters. Enter the estimated parameters.


To take the changes into account, the button Recalculate 1D has to be pressed (see
Variograms for more information about variogram parameters)
– Variogram 2D Estimation Parameters. Enter the estimated parameters. To take
the changes into account, the button Recalculate 2D has to be pressed (see Vari-
ograms for more information about variogram parameters);
– Recalculate 1D. Recomputation of the 1D variogram. This button has to be used
when the variogram parameters have been changed;
– Recalculate 2D. Recomputation of the 2D variogram. This button has to be used
when the variogram parameters have been changed;
– All the variogram parameters (Range, Sill, Nugget effect, Azimuths...) can be
changed manually.

38.2. Analyze Blocked Wells data 422


19.1

38.2.2. Create and analyze VPCs by zones and regions


In the Data Analysis tab, VPCs can be created by blocked wells and then edited, using discrete
property filters. To have the access to this option, Blocked Wells have to be created in the
grid first. The list of available blocked wells by grid is displayed under Data Analysis. The
VPC tab allows to calculate a VPC for each category selected in Facies and for the volumes
defined in the Zones, Regions. These VPCs will then be available in the Facies Analysis
(Zones, Regions) and Property Interpolation (Zones, Regions)calculations. The VPC is
automatically calculated. To display a VPC, click on the corresponding facies category on the
left. To edit the curve, hold SHIFT and move the points by dragging it using the mouse, (cf.
figure 119).

39. Graphs
Designer contains advanced tools to work with graphs, including:

• making fast selection of graphs to view;

• showing several sets of graphs in one view;

• building graphs of sums or average values for selected objects;

• setting graph preferences (color, thickness, names, fonts and so on);

• exporting and importing graph templates from one model to another.

For the detailed information see the training tutorial COMMON1.3.


How To Use Graph Templates.

The Graph calculator button on the right panel allows the creation of custom graphs
(see 39.1. Graph calculator).

38.2.2. Create and analyze VPCs by zones and regions 423


19.1

Figure 117. Plot representing the XY plan. The direction of computation is defined by its
azimuth, the points which are taken into account are defined by the tolerance, the discretization
is represented by the number of intervals. The points which are taken into account are then
ploted on the 1D variogram

39. Graphs 424


19.1

Figure 118. A) Discrete property filter definition, B) Variogram parameters setting, C) Blocked
Wells facies categories. Selection of the category for which the settings are performed, D)
Display of the 1D and 2D variograms. The Range, Sill, Nugget, Azimuth and Type parameters
can be changed manually, E) List of objects for the data analysis: Variograms and Blocked
Wells .

39. Graphs 425


19.1

Figure 119. Example of VPC curve for the sands facies displayed for the Zone 2. Only the
layers 0-9 are displayed.

39. Graphs 426


19.1

39.1. Graph calculator


Graph calculator allows the arbitrary combination of existing parameters and data series of the
model using mathematical functions, numerical differentiation and/or integration, conditional
operators, cycles, and other means of Python programming language.

For usage examples see the training tutorial COMMON1.4. How to use
Graph Calculator Python.

!
The graph calculator should not be confused with the custom code function-
ality in workflows (see 40.5), which also allows the execution of arbitraty
Python code. They are executed in different scopes, even though some global
functions and data structures are common for both.
Graph calculator is also available in the Advanced History Matching GUI, where it allows
using the calculated graphs as target function for optimization, and also in the simulator GUI.

Figure 120. Graph calculator

Text editor of the graph calculator window allows entering of arbitrary code in Python. The
code is executed upon pressing Calculate. Importing standard libraries using import <name>
is possible (see also Importing libraries). Python console output is directed to the window
below and can be used for debug purposes.

39.1. Graph calculator 427


19.1

An arbitrary number of user scripts can be created and managed using buttons Add /
Delete. They are saved as separate *.py files at snf/GraphCalculator/ when the project
is saved, but are not included in the exported graph templates.
For the resulting graphs to appear in the user interface, they have to be passed through
the export() function (see below). A script may contain arbitrarily many export statements.
Once a script with proper export statements has been executed, the resulting graph appears
in the list of User graphs of the template (see figure 121) and can be selected for display
individually or in combination with other graphs. Its name and dimension are specified in the
export statement. Whether it will appear for Field, Group, Well, FIP, or Connection object is
determined by its type, which in turn is determined by its declaration (see below graph func-
tion under Global functions) or by the type of the graph(s) it was derived from. Inconsistency
in these types may lead to an error in the script.
If a script does not export any graphs, its execution triggers a warning that suggests
to use the Auto Export Graph button. Upon pressing this button, an export statement is
automatically added after the last line of code. The variable used in the last assignment
operator is passed to export() as an argument. Sometimes the calculator may be used just for
some cursory calculations while displaying the result via the console output window, without
exporting any graphs. In this case the warning may be ignored.

Figure 121. User graphs

!
Note that user graphs from other scripts, including those defined in the same
template, are not accessible from the code by their names. You may, however,
produce multiple user graphs from a single script.

39.1. Graph calculator 428


19.1

39.1.1. Data structures and functions


Programmatically, a graph object is a complex data structure containing entries for all time
steps, for all objects of corresponding type (wells, groups, connections, FIP regions), and
for all loaded models. Graphs of the same type may be transformed and combined with the
arithmetical operations and mathematical functions, which apply to them elementwise. Graphs
may also be combined with scalar values or with graphs of lower dimension. Besides, there
are special functions for numerical differentiation, integration, averaging over sets of objects,
etc.
Lower right section contains the list of mnemonics (same as in the keyword SUMMARY,
see 12.18.1). Their meaning is explained in the pop-up messages. Mnemonics are grouped by
type (field, group, well, etc.); types are selected in the lower left field. Mnemonics can be
used directly in the code and are interpreted as graph objects containing values for all time
steps and for all objects of corresponding type (wells, groups, etc).
Note that the mnemonics only work on the time steps for which the graphs
! have been recorded. The graphs which were not recorded on a particular step
are interpolated with the last available value. Result recording options are
described in section 9.1 of tNavigator User Manual.
If the model contains any variables created by the keyword UDQ (see 12.19.165), those
can be used by putting their names in the code. They are also interpreted as graph objects.
For the purpose of retrieving the subsets or individual values of data, a graph object works
as a multidimensional array indexed by the objects of the following types (depending on its
own type):

Graph type Index objects


Well Model, timestep, well
Group Model, timestep, group
Connection Model, timestep, connection
FIP Model, timestep, FIP region
Field Model, timestep

For example, wopr[m1,w1,t1] returns a single value of oil rate for the well w1 in the
model m1 at timestep t1. The indexing elements may be entered in arbitrary order (so that
wopr[t1,w1,m1] is equivalent to the example above). An expression where only a part of the
indexes is specified returns the corresponding subset of the graph. For example, wopr[m1,
w1] returns a graph containing oil rates for the well w1 in the model m1 at all timesteps.
The code may include predefined objects (field, wells, groups, time steps, connections and
FIP regions). For treating these objects, the following properties and functions are defined and
accessible on the right panel:

• Add well function


Well object has the following accessible properties and functions:

39.1.1. Data structures and functions 429


19.1

◦ .name is a property containing the name of the well.


Usage example: s1 = w1.name

!
Code fragments presented here and below are merely illustrations
of syntax. They are not self-sufficient and not intended to work if
copied-and-pasted to the calculator "as is". For the ready-to-use
examples see Usage examples.
◦ .connections is a property which is an iterator object containing the well’s connec-
tions.
Usage example: for c in w1.connections: hdo somethingi
◦ .is_producer() (no arguments) returns a time-dependent graph that casts to boolean
True when the well is a producer, and to False otherwise.
Usage example: if w1.is_producer(): hdo somethingi
◦ .is_opened() (no arguments) returns a time-dependent graph that casts to boolean
True when the well is open, and to False otherwise.
Usage example: if w1.is_opened(): hdo somethingi
◦ .is_stopped() (no arguments) returns a time-dependent graph that casts to boolean
True when the well is stopped, and to False otherwise.
Usage example: if w1.is_stopped(): hdo somethingi
◦ .is_shut() (no arguments) returns a time-dependent graph that casts to boolean True
when the well is shut, and to False otherwise.
Usage example: if w1.is_shut(): hdo somethingi
◦ .get_connections_from_branch(<branch ID>) returns an iterator object containing
the well’s connections from the specified branch. Zero value of the argument spec-
ifies the main (or the only) branch.
Usage example: for c in w1.get_connections_from_branch(1): hdo somethingi
• Add group function
Group object represents a group of wells and has the following accessible properties:
◦ .name is a property containing the name of this group.
Usage example: s1 = g1.name
◦ .wells is a property which is an iterator object containing the wells of this group.
Usage example: for w in g1.wells: hdo somethingi

Iterator is a structure that provides an interface for traversing a


collection of elements one by one (for ... in ...). Can be transformed
i to an array which allows direct access to any element by number:
wells = [*g1.wells()]
w = wells[5]
◦ .parent_group is a property containing the parent group of this group.
Usage example: g2 = g1.parent_group

39.1.1. Data structures and functions 430


19.1

◦ .child_groups is a property which is an iterator object containing the child groups


of this group.
Usage example: for g in g1.child_groups: hdo somethingi

• Add connection function


Connection object has the following accessible properties:

◦ .name is a property containing the name of this connection (assigned automatically).


Usage example: s1 = c1.name
◦ .i is a property containing the grid coordinate i of this connection.
Usage example: i = c1.i
◦ .j is a property containing the grid coordinate j of this connection.
Usage example: j = c1.j
◦ .k is a property containing the grid coordinate k of this connection.
Usage example: k = c1.k
◦ .well is a property containing the well to which this connection belongs.
Usage example: print(c1.well.name)
◦ .branch_id is a property containing the ID of well branch to which this connection
belongs (see 2.15. Multisegment well in tNavigator User Manual). For single-
branch wells returns 0.
Usage example: print(c1.branch_id)
◦ .lgr_name is a property containing the name of LGR to which this connection be-
longs (see 5.5.8. LGR – Local Grid Refinement in tNavigator User Manual). If
the connection is not located in any LGR, then the property reads GLOBAL. If
the LGR is created implicitly as a part of fracture specification (see 5.8. Hydraulic
Fractures modeling via LGR in tNavigator User Manual), then a name is assigned
to it automatically.
Usage example: print(c1.lgr_name)

• Add model function


Model object has the following accessible property:

◦ .name is a property containing the model name (relevant when the results of multiple
model calculations are loaded).
Usage example: s1 = m1.name

• Add timestep function


Timestep object represents an individual step in the time line of the model, and has the
following accessible properties and functions:

◦ .name is a property containing the calendar representation of this time step object
according to the template (selected from the dropdown list in the Date format
field below).
Usage example: s1 = t1.name

39.1.1. Data structures and functions 431


19.1

◦ .to_datetime() (no arguments) returns the Python datetime object corresponding to


this time step. The object has standard Python properties and methods. Usage
example:
dt1 = t1.to_datetime()
if dt1.year > 2014: hdo somethingi

• Add graph function


Graph object represents a graph which may be either one of the standard graphs or
derived via calculations. The ultimate result of script execution is also an object of this
type. A graph has the following accessible functions:

◦ .fix(model=<model>,object=<object>,date=<timestep>) returns the value of the


specified graph for the given model, object, and timestep, which all must be spec-
ified as Python objects of the corresponding type, and not by name. Type of the
object (well, group, connection or a FIP region) must correspond to the type of
the graph. All arguments are optional. If some of them are missing, the function
returns a data structure containing the values of the graph for all possible values
of the missing argument(s).
Usage example:
graph2 = graph1.fix(object=get_well_by_name('PROD1'))
takes a graph for all wells and returns a graph object for only one well, namely
PROD1.
◦ max,min,avg,sum(models=<models>,objects=<objects>,dates=<timesteps>) re-
trieve a subset of values for the given models, objects, and timesteps (all arguments
may include either arrays or single values), and then return the minimum, max-
imum, average, or sum of the resulting array. Arguments must be specified as
Python objects of the corresponding type, and not by name. Type of the objects
must correspond to the type of the graph. All arguments are optional. If some of
them are missing, the functions return an object containing the values of minimum,
maximum, average, or sum over all specified argument(s) for all possible values
of the missing argument(s).
Usage examples:
graph2 = graph1.max(objects=get_wells_by_mask('WELL3*'))
returns a graph object containing the maximum among the values of the original
graph for the wells with names WELL3*, i.e. WELL31, WELL32, WELL33, etc.;
graph2 = graph1.avg(dates=get_all_timesteps()[15:25])
returns a graph object containing the average among the values of the original
graph from the 15 th to the 24 th time step.
◦ .aggregate_by_time_interval(interval='<interval>',type='<type>') takes the ar-
ray of values of the original graph over the specified interval (possible values:
month, year) and derives a new graph where all steps within the interval have the
same value calculated according to the specified type:
– avg: average value;

39.1.1. Data structures and functions 432


19.1

– min: minimum value;


– max: maximum value;
– last: last value;
– sum: sum of values;
– total: difference between the last and first values.
The possible values of interval are:
– month
– quarter
– year
Usage example:
w1 = wopr.aggregate_by_time_interval(interval = 'year', type = 'avg')
returns a graph which is piecewise constant over one-year intervals, and the value
on each interval is the average of the original graph (wopr, that is, oil rate) over
that interval.
◦ .to_list() (no arguments) returns an array of values of the graph. This function only
works for one-dimensional graphs, otherwise it throws an error. To make a graph
one-dimensional, that is, dependent on time only, you have to exclude the depen-
dence on the model and the well, either specifying these explicitly via .fix(), or by
finding the value of .min(), .max(), etc. over them all. Usage example:
x=fopr.fix(model='BRUGGE_VAR_1').to_list()
returns an array of the field oil rate values for all time steps.

• Add FIP region function


Object representing a FIP region has the following accessible properties:

◦ .name is a property containing the name of the region (combined from the family
name and region number).
Usage example: s1 = reg1.name
◦ .family is a property containing the name of the family that contains this region.
Usage example: s1 = reg1.family
◦ .number is a property containing the number of the region in the family.
Usage example: i = reg1.number

• Add global function


General purpose functions, including:

◦ exp(<number>), ln(<number>), sqrt(<number>) are mathematical functions: ex-


ponent, logarithm, and square root, respectively. When a graph is passed as an
argument, they apply to it elementwise.
Usage examples:
t = ln(y)
x = exp(r)

39.1.1. Data structures and functions 433


19.1

◦ diff(<series>) performs numeric differentiation of the time series, that is, return the
series of differences of successive values.
Usage example: graph2 = diff(graph1)
In this example we are calculating oil totals per time step from oil totals:

465, 1165, 2188, 3418, 4968 . . . → 465, 700, 1023, 1230, 1550 . . .

◦ diff_t(<series>) is the same as diff, only the results are divided by the time step
length in days. Usage example: graph2 = diff_t(graph1)
In this example we are calculating oil rates from oil totals. Let the time steps
represent months and have the duration of 31, 28, 31, 30, 31... days. Then:

465, 1165, 2188, 3418, 4968 . . . → 15, 25, 33, 41, 50 . . .

◦ cum_sum(<series>) performs numeric integration of the time series, that is, returns
the series of sums.
Usage example: graph3 = cum_sum(graph1)
In this example we are calculating oil totals from oil totals per time step:

465, 700, 1023, 1230, 1550 . . . → 465, 1165, 2188, 3418, 4968 . . .

◦ cum_sum_t(<series>) is the same as cum_sum, only the increments are multiplied


by the time step length in days.
Usage example: graph3 = cum_sum_t(graph1)
In this example we are calculating oil totals from oil rates. Let the time steps
represent months and have the duration of 31, 28, 31, 30, 31... days. Then:

15, 25, 33, 41, 50 . . . → 465, 1165, 2188, 3418, 4968 . . .

◦ if_then_else(<condition>,<option if true>,<option if false>) is the conditional op-


erator that works on array variables elementwise.
Usage example: graph1 = if_then_else(wopr > 10, 1, 0)
◦ get_well_by_name(<name>) returns a well by its name.
Usage example: w1 = get_well_by_name('prod122')
◦ get_group_by_name(<name>) returns a group by its name.
Usage example: g1 = get_group_by_name('group21')
◦ get_all_wells() (no arguments) returns an iterator object containing all wells.
Usage example: for w in get_all_wells: hdo somethingi
◦ get_all_groups() (no arguments) returns an iterator object containing all groups.
Usage example: for g in get_all_groups: hdo somethingi
◦ get_all_connections() (no arguments) returns an iterator object containing all con-
nections in all wells.

39.1.1. Data structures and functions 434


19.1

◦ get_all_models() (no arguments) returns an iterator object containing all models


(relevant when the results of multiple model calculations are loaded).
Usage example: for m in get_all_models: hdo somethingi
◦ get_all_timesteps() (no arguments) returns the iterator object containing all time
steps.
Usage example: for t in get_all_timesteps: hdo somethingi
◦ get_timestep_from_datetime(<date>,mode = '<mode>') returns the time step by
the specified date, which must be a Python object of the type date or datetime.
According to the mode parameter, the time step is searched for in the following
manner:
– exact_match: searches for the exact match;
– nearest: searches for the nearest time step to the specified date;
– nearest_before: searches for the nearest time step before the specified date;
– nearest_after: searches for the nearest time step after the specified date;
Default: exact_match.
If the step cannot be found within the limitations of the mode, or if the specified
date falls outside the time range of the model, an error is returned.
Usage example:
t1 = get_timestep_from_datetime(date(2012,7,1), mode='nearest_after')

!
Most manipulations with Python datetime object re-
quire to load the corresponding external library before-
hand (see Importing libraries). This is done as follows:
from datetime import datetime
◦ create_table_vs_time(<array>) returns a graph containing a piecewise linear ap-
proximation of the given time series. The series must be represented by an array
of two-element tuples (date,value). Here the date must be a Python object of the
type date or datetime.
Usage example:
oil_price_list = []
oil_price_list.append((date(2011,1,1),107.5))
oil_price_list.append((date(2012,1,1),109.5))
oil_price_list.append((date(2013,1,1),105.9))
oil_price_list.append((date(2014,1,1), 96.3))
oil_price_list.append((date(2015,1,1), 49.5))
oil_price_list.append((date(2016,1,1), 40.7))
oil_price = create_table_vs_time(oil_price_list)
Here we build a graph of oil prices. For maximum clarity, the array is prepared by
adding elements one by one.
◦ get_wells_by_mask(<mask>) returns an iterator object containing wells that match
the given name mask. The mask may contain wildcards: ? means any character, *

39.1.1. Data structures and functions 435


19.1

means any number of characters (including zero).


Usage example: for w in get_wells_by_mask('prod1*'): hdo somethingi
◦ get_wells_from_filter(<filter name>) returns an iterator object containing wells that
are included in the given well filter. The filter must be created beforehand using
Well Filter .
Usage example: for w in get_wells_from_filter('first'): hdo somethingi
◦ shift_t(<original series>,<shift>,<default value>) returns the original graph
shifted by the specified number of time steps. The empty positions are padded
with the specified default value.
Usage example: graph2 = shift_t(graph1,3,10)
In this example we shift the historic records of oil rate which were mistakenly as-
signed to the wrong time. The series is shifted 3 steps to the right, and the starting
positions are filled with the first known value of oil rate (10).
10, 12, 19, 24, 30, 33, 31, 27, 25 . . . −→ 10, 10, 10, 10, 12, 19, 24, 30, 33 . . .
| {z } | {z }
graph1 shift_t(graph1,3,10)

◦ get_project_folder() (no arguments) returns the full path to the folder containing
the current model, which you might need in order to write something to a file.
Usage example: path = get_project_folder()
◦ get_project_name() (no arguments) returns the file name of the current model with-
out an extension.
Usage example: fn = get_project_name()
◦ get_all_fip_regions() (no arguments) returns an iterator object containing all FIP
regions of all families.
Usage example: for reg in get_all_fip_regions(): hdo somethingi
◦ get_fip_regions_from_family(<family name>) returns an iterator object containing
all FIP regions of the given family.
Usage example: for reg in get_fip_regions_from_family('FIPNUM'): hdo somethingi
◦ get_fip_region(<family name>, <number>) returns a FIP region by its family name
and number.
Usage example: reg = get_fip_region('FIPNUM', 1)
◦ export(<expression>,name='<name>',units='<units>') exports the given expres-
sion to the user graph, while specifying its name and (optionally) units of mea-
surement.
The expression should evaluate to a graph object, otherwise an error will occur.
Units should be specified by the mnemonic name which can be selected from a
dropdown list to the right.
Usage example: export(w1, name='graph1')
◦ graph(type='<type>',default_value=<value>) initializes a graph of the given type
(field, well, group, conn for connections, or fip for FIP regions) and fills it with
the given default values.
Usage example: tmp = graph(type='field', default_value=1)

39.1.1. Data structures and functions 436


19.1

39.1.2. Importing libraries


Python has a considerable body of libraries for data processing, including sophisticated math-
ematical methods, export to Excel and other common formats, etc. All this can be accessed
from the graph calculator.
Standard Python libraries can be imported as is:
import sys
To import custom or third-party libraries, do the following:

1. Install Python 3.6.4 or later for all users.

2. If you intend to use Win32 API:

2.1. Install pywin32 package.


2.2. Run the following command:
hPython installation f olderi\Scripts\pywin32_postinstall.py -install

3. In that instance of Python, install the libraries you intend to use.

4. In tNavigator main window, go to Settings → Options → Paths.

5. Change the following parameters:

5.1. Check Use External Python Library and enter the path to Python36.dll (or sim-
ilar) from the new instance of Python.
5.2. If needed, check Select path to python modules and enter the path to imported
Python modules. Multiple semicolon-separated locations can be specified.

To obtain the path to modules used by the already installed Python


instance, open the interactive Python interpreter and run the following
i commands:
import sys
’;’.join(sys.path)

If external Python installation is removed, tNavigator automatically falls back to using


internal Python.

39.1.3. Usage examples


The following code examples are fully functional only when run on a model which contains
all objects and structures that the code relies upon. For instance, if the code refers to a well
named P1 which is not there in the model, an error will be returned.

39.1.2. Importing libraries 437


19.1

Example 1
Suppose we want to find the amount of oil accumulated by each well during certain time
interval, or (depending on time) during the portion of that interval that has already passed.
The script proceeds as follows:

1. Create a graph (x) that equals oil rate (wopr) within the time range of interest, and
0 otherwise. To do so, we compare time (measured in days since the start) with the
borders obtained elsewhere, and then have the resulting boolean values implicitly cast
to integers: True to 1 and False to 0.

2. Calculate the accumulated sum of x.

3. Export the resulting graph.

Example
x = wopr * (time >= 215) * (time <= 550)
w1 = cum_sum_t(x)
export (w1, name = 'PeriodProd', units = "liquid_surface_volume")

The created graph may be used on bubble maps.

Figure 122. Selecting user graph for bubble maps

39.1.3. Usage examples 438


19.1

Example 2
Suppose we want to see what portion of the well’s oil rate comes from the layers with
70 6 k < 100.

!
This is possible in the simulator or Model Designer GUI, where the graph
calculator has access to the data on individual connections, but not in the
AHM GUI.
The script proceeds as follows:

1. Initialize a temporary data structure (tmp) of the appropriate type (graph in the Well
context) and fill it with 0;

2. Iterate over all connections:

• If the connection is located in the desired area,


– add its oil rate value to that of the corresponding well in the temporary struc-
ture;

3. Export the temporary array divided by the array of total oil rate values for the wells (the
division of graphs is applied elementwise, that is, a sum over connections of any well
is divided by the rate of the same well).

Example
tmp = graph(type='well', default_value=0)
for c in get_all_connections():
if c.k in range(70,100):
tmp[c.well] += copr[c]
export(tmp/wopr, name='wopr_layer2')

! Pay attention to the spaces at the beginning of the lines. They are essential
to Python syntax, and are easily lost during copying-and-pasting.

Example 3
Suppose we want to calculate the average oil rate over a certain subset of wells (those
with names starting with 'WELL3') and compare it with the historic data, which are stored in
a file elsewhere. The deviation will then be used as an objective function for matching. The
script proceeds as follows:

1. Import the standard datetime library which allows handling dates with more agility.

2. Call the avg function and feed to it the iterator over the required subset of wells, so as
to obtain the desired average (obs).

3. Locate the file input.txt in the model folder and open it for reading.

39.1.3. Usage examples 439


19.1

4. Transform the array of file lines into the array of tuples (string,value).

5. Parse the date, thus turning it into an array of tuples (date,value).

6. Build the interpolation graph from the obtained array in the file (hist).

7. Build and export the graph of squared deviation.

Example
from datetime import datetime
obs = wopr.avg (objects = get_wells_by_mask ('WELL3*'))
inpf = open(get_project_folder()+'/input.txt', 'r')
raw = [(line.split()[0],float(line.split()[1])) for line in inpf]
arr = [(datetime.strptime(x[0], '%d.%m.%Y'),x[1]) for x in raw]
hist = create_table_vs_time(arr)
export((obs - hist)**2, name='fuobj')

Example 4
Suppose we have the graphs of historic bottom hole pressure measured only at some
points; the rest is filled with 0. We want to interpolate those for the entire time range. The
script proceeds as follows:

1. Initialize a temporary data structure (tmp) of the appropriate type (graph in the Well
context) and fill it with 0;

2. Iterate over all models and all wells:

• Retrieve the BHP data for the given well;


• Create an empty array to store the actual BHP measurements (observed);
• Iterate over all time steps:
– If the BHP at this time step is greater than 0,
– we append it to the array;
• If the array contains at least 2 elements,
• we create an interpolated graph from it and put it in the temporary structure;

3. Export the temporary structure.

39.1.3. Usage examples 440


19.1

Example
tmp = graph (type = 'well', default_value = 0)
for m in get_all_models():
for w in get_all_wells():
current = wbhph[m,w]
observed = []
for t in get_all_timesteps():
if current[t] > 0:
observed.append ((t.to_datetime(), current[t]))
if len (observed) >= 2:
tmp[m,w] = create_table_vs_time(observed)
export(tmp, name='interpolated_wbhph')

39.1.3. Usage examples 441


19.1

40. Workflows
All of the Designer modules in tNavigator support Python based workflows. This feature
enables users to record and replay sequences of functional steps for: input data interpretation,
building static models, dynamic simulations, postprocessing of results, uncertainty analysis or
history matching. Workflows can also be used for connecting various modules of tNavigator,
calling external user scripts and third-party software like Excel™.
For example, one could set up an arbitrary user defined workflow, which would include
step-by-step building of a structural model in Geology Designer followed by snapping seis-
mic surfaces to match markers, grid generation, upscaling, SGS property interpolation and
dynamic model initialization with static and dynamic uncertainty variables. This static-to-
simulation workflow can be run from the Assisted History Matching module and provide
comprehensive sensitivity analysis of simulation results with respect to variations of static
and dynamic parameters.

Examples of workflows usage are shown in training tutorials:

• GDAHM1.1. How To Use Integrated Workflow AHM.

• GDAHM1.2. How To Use Integrated Uncertainty.

40.1. Creating workflow


Any calculation for any geometrical object can be saved in the current workflow (see fig-
ure 123).

Figure 123. Saving workflow

Besides that, any sequence of actions with geometry objects in the interface may be
recorded as workflow. To do so, unfold Document in the top menu and check Record actions
to current workflow. While it remains checked, all actions will be recorded.

40.2. Editing workflow


The project may contain multiple workflows. They are stored as *.py scripts at Workflows
in the project directory and can be loaded into another project (see Import workflow below).
It is not recommended to edit them manually. If you still intend to do it at your own risk,

40. Workflows 442


19.1

respect the #region...#endregion comment lines. Though ignored by Python, they are
important for the preprocessing routine.
To edit a workflow, open the Calculations and Workflows window, which may be ac-
cessed either from the top menu (Document → Workflows) or via the keyboard shortcut
Alt+W.
The top panel of the window contains interface for handling workflows, including the
following elements:

• Dropdown list lets you select a workflow among those present in the project.

• Add creates a new empty workflow.

• Delete removes a workflow (disabled if there is currently only one workflow).

• Duplicate creates a copy of the current workflow.

• Rename renames the current workflow.

• creates certain special calculations (Discrete cosine transform (DCT) algorithm, etc.)

• Import workflow (on the right) reads a workflow from a file.

The left column of the window contains all available calculations. In particular, these
include import, modification, and export of all geometry objects, and also of the model as a
whole.
The list of available actions is split into the following groups:

• Utilities are the common utilities, including:

◦ Print Log sends a message to the log file.


◦ Add custom code lets you run arbitrary code, including another workflow (to do
that, select Workflows on the lower right panel). For more features available in
this context, see Functions and data structures.
◦ Execute External Program.

• Import includes all kinds of functions for importing various objects. Several calculations
can only be invoked from workflows and not from GUI, in particular, the import of
well trajectories (see 6.2.8), well logs (see 9.1.5), and well history (see 34.1.5) from
databases.

• Auxiliary Calculations deals with variograms, Voronoi regions, statistic tables, etc.

• Structural Modeling deals with grids, faults, horizons, and other elements of structural
models.

• Property Modeling contains the operations with 3D grid properties.

40.2. Editing workflow 443


19.1

• Dynamic Model contains various operations with dynamic model, including attachment
and detachment of properties and features.

• Export includes all kinds of functions for exporting various objects. Besides that, there is
a special feature Open Dynamic Model.

• Schedule contains schedule operations dealing with well and group control, etc.

• GUI contains purely graphical interface operations, including:

◦ Switch Window selects a window by the specified name and makes it active.
◦ Select Geometry Object selects an existing object by the specified name and shows
or hides it in the graphical area.
◦ Pause Workflow stops the execution of the current workflow (for example, to view
and check the results manually).
◦ Create Screenshot creates a screenshot of tNavigator and saves it to the specified
file.
◦ Switch Time Step moves the time slider to the specified step.
◦ Add Page to Print prepares the specified window for printing.

• Fractures contains the operations with hydraulic fractures.

The middle column of the window contains the calculations already added to the current
workflow. They can be executed all together or in a selective manner, see Running workflow.
Besides those, it contains the list of model variables, see Creating variables.
Between these columns is the interface for handling individual calculations, including the
following elements:

• Insert adds the selected available calculation to the current workflow.

• Delete removes the selected calculation from workflow.

• Up, Down move the selected calculation up and down the sequence within the
current workflow.

• Duplicate creates a copy of the selected calculation.

• Show code displays a read-only Python source code of the selected calculation.

The right column of the window contains the parameters of the currently selected calcula-
tion.

40.3. Creating variables 444


19.1

Figure 124. Creating a variable

40.3. Creating variables


Variables serve for producing multiple different variants of model in the course of assisted
history matching (AHM). See the AHM User Guide for more details. Nearly any numeric
parameter in the workflows can be turned into a variable.
In the window Calculations and Workflows press the button Add Variable (see fig-
ure 124) or right-click on free space below the list of variables. The following parameters
should be specified:
• Name. Variable name;
• Value. Initial variable value;
• Min. Minimal variable value;
• Max. Maximal variable value;
• Type. Variable type. The following variable types are available:
– INTEGER – integer number (variable minimum and maximum should be integer as
well);
– REAL – real number;
– STRING – string. In this case, instead of maximum and minimum, you have to
enter the list of possible values.
To use a variable in some calculation, type its name instead of any parameter value.

40.3. Creating variables 445


19.1

40.4. Running workflow


To reproduce a workflow, open it in the Calculations and Workflows window. The middle
column will display the list of calculations contained in the workflow. Each of them can be
toggled on/of separately.
To run all checked calculations at once, press the Run Workflow button below. The
calculations will start executing in the same order as they follow in the list. Once a line is
successfully executed, it is highlighted green. The visualization area displays the ongoing
changes immediately as they occur.
If a line can’t be executed because of an error (say, if it relies on an object which does not
exist in the current model), it is highlighted red and the execution stops. In this case you may
want to uncheck this and all previous lines, run the faulty action manually via the interface (if
you still need it), and resume running the workflow.
A workflow can be tested without actually running it. To do so, click the Test button in the
lower left part of the window. All checked calculations will be tested for consistency. Those
which lack the necessary data to run will be highlighted red.

40.5. Functions and data structures


Instead of the list of parameters, the Add custom code action comes with the list of available
functions. It includes the following functions grouped by the type of the object they refer to:

• Module functions

◦ get_all_timesteps() returns the list of time steps.


◦ get_date_by_step_number(<number>) returns the date of the specified time step.
◦ get_project_folder() returns the full path to the folder containing the current model,
which you might need in order to write something to a file.
◦ get_project_name() returns the file name of the current model without an extension.
◦ get_step_number_by_date(<date>) returns the number of step nearest to the spec-
ified date.
◦ get_time_step_count() returns the number of time steps.

!
The custom code functionality should not be confused with the graph
calculator (see 39.1), which also allows the execution of arbitraty Python
code. They are executed in different scopes, even though some global
functions and data structures are common for both.

• Workflows
Contains the list of available workflows. Each of them may be selected to be started
from the current workfow.

40.4. Running workflow 446


19.1

• Fracture Table

◦ get_all_fracture_tables() returns an iterator object containing all fracture tables.


◦ get_fracture_table_by_name(<name>) returns a fracture table by its name.
◦ get_all_fracture_tables_in_folder(<folder>) returns an iterator object containing
all fracture tables in the specified folder.
◦ create_fracture_table(<name>) creates a fracture table with specified name.
◦ .get_data(<row, column>) (a method of fracture table object) returns the data at the
specified row and column of the fracture table.
• Grid 2D

◦ Grid2D(<step_x, step_y, area>) creates a 2D grid with specified steps.


• Horizon

◦ get_all_horizons() returns an iterator object containing all horizons.


◦ get_horizon_by_name(<name>) returns a horizon by its name.
◦ get_all_horizons_in_folder(<folder>) returns an iterator object containing all hori-
zons in the specified folder.
◦ create_horizon(<name>) creates a horizon with specified name.
◦ .get_value(<x, y>) (a method of horizon object) returns the horizon depth at speci-
fied 2D coordinates.
• Point Set

◦ get_all_pointsets_3d() returns an iterator object containing all point sets.


◦ get_pointset_3d_by_name(<name>) returns a point set by its name.
◦ get_all_pointsets_3d_in_folder(<folder>) returns an iterator object containing all
point sets in the specified folder.
◦ create_pointset_3d(<name>) creates a point set with specified name.
• Polygon

◦ get_all_curves_3d() returns an iterator object containing all polygons.


◦ get_curve_3d_by_name(<name>) returns a polygon by its name.
◦ get_all_curves_3d_in_folder(<folder>) returns an iterator object containing all
polygons in the specified folder.

40.5. Functions and data structures 447


19.1

◦ create_curve_3d(<name>) creates a polygon with specified name.

• Rectangle

◦ Rectangle(<origin_x, origin_y, size_x, size_y, angle>) creates a rectangle with


given origin, size, and orientation.

• Table

◦ get_all_tables() returns an iterator object containing all tables.


◦ get_table_by_name(<name>) returns a table by its name.
◦ get_all_tables_in_folder(<folder>) returns an iterator object containing all tables
in the specified folder.
◦ create_table(<name>) creates a table with specified name.
◦ .get_data(<row, column>) (a method of table object) returns the data at the speci-
fied row and column of the table.
◦ .set_size(<r_count, c_count>) (a method of table object) sets the table dimensions
as specified.
◦ .set_data(<row, column, data>) (a method of table object) sets the data at the
specified row and column of the table.

• Well

◦ get_all_wells() returns an iterator object containing all wells.


◦ get_well_by_name(<name>) returns a well by its name.
◦ create_well(<name>) creates a well with specified name.
◦ .name is a property of well object containing the name of the well.

• Well Log

◦ get_all_well_logs() returns an iterator object containing all well logs.


◦ get_well_log_by_name(<name>) returns a well log by its name.
◦ get_all_well_logs_in_folder(<folder>) returns an iterator object containing all well
logs in the specified folder.
◦ create_well_log(<name>) creates a well log with specified name.
◦ .name is a property of well log object containing the name of the well log.
◦ .has_info_for_well(<well>) (a method of well log object) checks whether the spec-
ified well log has data for this well.

40.5. Functions and data structures 448


19.1

◦ .get_min_arg(<well>) (a method of well log object) returns the minimum depth at


which the log is specified for the given well.
◦ .get_max_arg(<well>) (a method of well log object) returns the maximum depth at
which the log is specified for the given well.
◦ .clear(<well>) (a method of well log object) removes data for the given well.

• Well Production Table

◦ get_all_wells_production_tables() returns an iterator object containing all well pro-


duction tables.
◦ get_wells_production_table_by_name(<name>) returns a well production table by
its name.
◦ get_all_wells_production_tables_in_folder(<folder>) returns an iterator object
containing all well production tables in the specified folder.
◦ create_wells_production_table(<name>) creates a well production table with spec-
ified name.

40.5. Functions and data structures 449


19.1

Figure 125. Using a variable SEISER in the Calculator.

41. Run AHM from Model and Geology Designers


The module of assisted history matching (AHM) and uncertainty analysis can be run using a
workflow directly from Model and Geology Designer. The integrated history matching allows
to vary structures and dynamic parameters in order to find the best model realization providing
historical data.
To use history matching via a workflow, go to the top menu Document and select from
the drop-down list the option Workflows.
Create a variable as described in 40.3. Creating variables. The created variable can be used
in:

• Calculator. A variable is specified between symbols @...@ (see figure 125);

• Calculation. Type the variable name instead of any parameter value. For example, in
the calculation Adjust Variogram variogram’s Azimuth and Ranges are replaced by
variables (see figure 126). An initial variable value is shown to the right. In the calcula-
tion Adjust Analytical RP Table all parameters specified via variables are shown with
green color.

41. Run AHM from Model and Geology Designers 450


19.1

Figure 126. Using variables in a calculation.

Examples of how to use workflows are shown in training tutorials:

• GDAHM1.1. How To Use Integrated Workflow AHM;

• GDAHM1.2. How To Use Integrated Uncertainty.

From Geology and Model Designer the AHM module can be launched using two ways:

• Using current hydrodynamic model (integrated modeling).


Integration of modules Geology Designer, Model Designer, Simulator, AHM;

• Using a table.
This way can be used for the uncertainties analysis of model’s properties and the sensi-
tivity analysis of variables to volumes of fluid in place. In this case it is not necessary
to build full hydrodynamic model.
In workflow it is required to specify variables and use them in calculations of volumes
in place. Create a statistic table. The creation of the statistic table should be the last
action in the workflow list. When launching the AHM module select Use table and an
appropriate table.

41. Run AHM from Model and Geology Designers 451


19.1

Figure 127. The launch of uncertainties analysis using a table.

An example of how to use uncertainties analysis via a table is presented


in the training tutorial:

• GD3.4. How To Do Volume Estimation (How to estimate the


volumes in place).

41. Run AHM from Model and Geology Designers 452


19.1

41.1. Use of Discrete Fourier transform algorithm for history matching


In practice measured values of permeability of reservoir rock are available only in blocks
where rock samples were taken. Therefore to create a geological model an interpolation of
available data of permeability is carried out. In this case results of calculation of model created
in such way can be different from historical data.
Thus it is required to solve an inverse problem, i.e. to find parameters of model which
provide results close to historical data. In general we have to solve a minimization problem,
dimension of which is equal to a number of blocks, i.e. of the order 105 ÷ 107 . Most of
standard optimization algorithms are obviously inefficient due to the huge number of variables.
A standard approach to solve this problem is to subdivide the model grid into regions,
then specify a multiplier for each region and use multipliers as variables in history matching.
As result, the number of variables significantly reduces. However, this approach has several
disadvantages:

• there is no universal way to subdivide the model grid into regions, therefore it is not
clear how to choose these regions;

• the geological structure of the model can be violated since the property values in differ-
ent regions are multiplied by different independent multipliers.

tNavigator implements another approach based on the discrete cosine transform (DCT)
algorithm. This approach overcomes the above mentioned drawbacks, while using smaller
number of variables.

An example of how to use the discrete cosine transform algorithm for


history matching is demonstrated in the training tutorial:

• MDAHM1.2 How To Use 3D Cos Transf Workflow AHM (Ac-


celerated Model Designer to AHM workflow based on Discrete
Cosine Transform of permeability).

41.1.1. Discrete cosine transform (DCT) algorithm


If values of parameters in grid blocks are not independent and there is a spatial correlation
then a number of parameters required for the description of grid property can be reduced. The
stronger the correlation, the fewer parameters are required.
Let’s denote a vector of grid property values as m = (m1 , ..., mN )T , where N = Nx ×
Ny × Nz is the number of grid blocks. The vector m is decomposed in an orthogonal basis
e i = (e1i , ..., eNi )T :
N N
m = ∑ ci e i = ∑ li , (41.1)
i=1 i=1

41.1. Use of Discrete Fourier transform algorithm for history matching 453
19.1

where li = ci e i and c = (c1 , ..., cN )T is the vector of coefficients (spectrum) of decomposition


of property values m .
To decompose a vector of grid property values the 3D discrete cosine transform (DCT)
algorithm type II is used. Then decomposition coefficients c are calculated as:
N −1
s
8 Nx −1 y Nz −1
     
π(i + 1/2)p π( j + 1/2)q π(k + 1/2)s
c pqs = ∑ ∑ ∑ mi jk cos cos cos
Nx Ny Nz i=0 j=0 k=0 Nx Ny Nz

where p = 1, ..., Nx , q = 1, ..., Ny and s = 1, ..., Nz .


Obviously, not all li vectors contribute equally into a decomposition (41.1). In order to
estimate the contribution of a vector li let’s introduce a relative information weight calculated
as follows:
|ci |2
E(li ) = N × 100%.
∑ j=1 |c j |2
This value shows a portion of data (in comparison to all data stored in a property) contained
in the vector li .
Let’s sort all terms of the right hand side of 41.1 in descending order and separate all
vectors with small contribution to data. The portion of rejected vectors (in percent) is denoted
as Pcomp (and specified by the option Compression level). {li1 , li2 , ..., liN } is the sorted set of
vectors. After rejecting Ncomp = N × Pcomp /100 vectors having minimal relative information
weight, the set of remaining vectors is Ω = {li1 , li2 , ..., li0N }, where N 0 = N − Ncomp . Thus the
decomposition (41.1) can be rewritten as:
N0
m = ∑ li j + lcomp ,
i=1

where
N
lcomp = ∑ 0 li j
j=N

and a relative information weight is calculated as:

|ci |2
E(li ) = × 100%.
∑l j ∈Ω |c j |2

Then the relative information weight for the set of vectors Ω = {li1 , li2 , ..., liN 0 } is calculated
as:
N0
0
E(N ) = ∑ E(li j )
j=1

and shows a portion of data (in comparison with all property data) containing in the set Ω. The
relative information weight is a function of number N 0 . The steep increase of E(N 0 ) function
with N 0 increase means that property data contain in a smaller number of coefficients (data
are well correlated) and definition of smaller number of variables is required. A flat E(N 0 )

41.1.1. Discrete cosine transform (DCT) algorithm 454


19.1

function indicates that many coefficients are required to reproduce main features of property,
i.e. many variables should be defined in a model.
New model variables are multipliers W1 , W2 , ... Decomposition terms with largest relative
information weight and multiplied by W1 , W2 , ... are denoted as {l˜1 , l˜2 , ..., l˜k }. A portion of
relative information weight (i.e. a portion of data) containing in this set of vectors is equal to
Evariation (specified by the option Variation).
Let a set of vectors {l˜1 , l˜2 , ..., l˜k } is the first k vectors from a set Ω = {li1 , li2 , ..., liN 0 } and a
sum of relative weights of k vectors is higher than Evariation . If a value of Evariation (specified
by the option Variation) is equal to 100% then all vectors form a Ω set will be selected as k
vectors set.
The required number of model variables is denoted as Nvar (and specified by the option
Number of output variables). If the number of vectors with large relative weights k is larger
than number of variables Nvar , then a set of vectors {l˜1 , l˜2 , ..., l˜k } is subdivided into Nvar
number of groups Gi consisting of consecutive vectors in such way that for each group the
relative information weight should be of the same order. The multiplier Wi is assigned to each
group, and all vectors from a group will be multiplied by this multiplier.
Thus the decomposition (41.1) can be rewritten as:
Nvar N0 Nvar
m = l˜1 + ∑ Wi ∑ l˜j + ∑ li j + lcomp = mMean + ∑ Wi mi + mnoise + lcomp
i=1 l˜j ∈Gi j=k+1 i=1

where

• mMean = l˜1 is the mean data value;

• mi = ∑l˜j ∈Gi l˜j ;

• mrest = ∑Nj=k+1 li j contains the rest of data;

• W1 ,...,WNvar are multipliers used as variables for history matching.

41.1.2. How to use DCT via GUI


Discrete cosine decomposition of a grid property can be carried out in Model and Geology
Designers (Calculations → Auxiliary Calculations → Expand Grid Property in Cosines).
However, to apply the DCT algorithm to a grid property of existing model for history matching
it is recommended to use the Model Designer and follow the steps:

1. Import the model to Model Designer: go to the top menu Document and select Import
Data from Existing Model;

2. Create a hydrodynamic model by pressing on the top panel button Open Dynamic
Model;

3. Go to the top menu Document and select Workflows;

41.1.2. How to use DCT via GUI 455


19.1

Figure 128. Specifying the DCT algorithm parameters.

4. Press the button and select Expand Grid Property in Cosines (see figure 128).
The following parameters should be specified:

• Grid. Select a grid;


• Property. Specify a property to which the DCT algorithm will be applied;
• Number of output variables. Specify number of model variables Nvar ;
• Compression level. Pcomp is a portion of rejected vectors (in percent) from a set
of vectors {li1 , li2 , ..., liN };
• Variation level. Evariation is a portion of property data containing in the set of
vectors with the largest contribution in decomposition;
• Output grid properties prefix. A prefix name of output vectors {mi , ..., mNvar }
and mrest ;
• Output Variable prefix. A prefix name of output variables W1 ,...,WNvar .

5. After completion of discrete cosine transform several properties containing mean value
(mMean ), terms of decomposition (mi ) and rest of data (mrest ) will be generated on
the tab Geometry Objects. Property (see figure 129). Created variables and an arith-
metic expression used for history matching are shown on the tab Input variables and
Calculator, respectively;

6. Select Input variables (see figure 130). Created decomposion variables will be shown
to the right. Their base, Min. and Max values can be changed by double-clicking on the
selected value;

7. Select Calculator (see figure 131) the decomposition formula is shown to the right;

41.1.2. How to use DCT via GUI 456


19.1

Figure 129. Obtained DCT properties: permX_Mean contains mean value, properties that
are terms of decomposition permX_1, permX_2 and permX_3, rest of data permX_rest .

8. To run history matching form the Model Designer window press the button .

!
The number of output variables can be less than Nvar . This may happen when
relative weights of vectors {l˜1 , l˜2 , ..., l˜k } are very high and the number of
vectors k is less than Nvar .
This feature is also accessible as a procedure in workflow, see 40.2.

41.1.2. How to use DCT via GUI 457


19.1

Figure 130. Variables of decomposition for history matching.

Figure 131. The decomposition formula for history matching.

41.1.2. How to use DCT via GUI 458


19.1

42. References
[1] Tarek Ahmed, Equations of State and PVT Analysis: Applications for Improved Reservoir Mod-
eling, Gulf Publishing Company, Houston, Texas, 2007.

[2] Tarek Ahmed, Working Guide to Vapor-liquid Phase Equilibria Calculations, Elsevier, 2010.

[3] Pedersen, K. S., Christensen, P. L., Phase behavior of petroleum reservoir fluids, Taylor & Francis
Group, Boca Raton, USA, 2007.

[4] Hassan S. Naji, Characterizing Pure and Undefined Petroleum Components, IJET-IJENS, Vol:10
No:02, 2010, pp 28–48.

[5] Warren, J. E., and Price, H. S., Flow in Heterogeneous Porous Media. Society of Petroleum
Engineers Journal, September 1961, pp. 153–169.

[6] N.S. Bahvalov, N.P. Zhidkov, G.M. Kobelkov, Numerical methods, M. «Nauka», 1987 [in russian]

[7] Clayton V. Deutsch, Geostatistical Reservoir Modeling, Oxford University Press, 2002

[8] A. Bardossy Introduction to Geostatistics University of Stuttgart

[9] S. D. Conte, Carl de Boor Elementary Numerical Analysis McGraw-Hill Book Company, 1980.

[10] J-P Chiles, P. Delfinder Geostatistics Modeling Spatial Uncertainty Wiley & Sons, Canada, 1999.

[11] V.V. Demianov, E.A. Savelieva Geostatistics theory and practice M. «Nauka», 2010 [in russian]

42. References 459


Rock Flow Dynamics

Phone: +1 713-337-4450
Fax: +1 713-337-4454
Address: 2200 Post Oak Boulevard, STE 1260, Houston, TX 77056
E-mail: tnavigator@rfdyn.com
Web: http://rfdyn.com

To locate the office nearest to you, please visit https://rfdyn.com/contact/

© Rock Flow Dynamics. All rights reserved. 15.03.2019

You might also like