DepthInsight Sdk introduction

76
SDK of structural modeling Beijing GridWorld Software Technology Co., Ltd 2015. 9

Transcript of DepthInsight Sdk introduction

Page 1: DepthInsight Sdk introduction

SDK of structural

modeling

Beijing GridWorld Software Technology Co., Ltd

2015. 9

Page 2: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 3: DepthInsight Sdk introduction

SDK is a algorithms library developed by research and

development team of GridWorld Software Technology Co.,

Ltd. for years. It can be used in large-scale and complex

geological structure modeling.

1 Introduction

Page 4: DepthInsight Sdk introduction

1 Introduction

Technical Features:

①①①① Powerful modeling ability

Can built all kinds of complex geological structure model including::::

• Thrust fault model

• Salt dome model

• Volcanic cone model

• Intrusive body model• Intrusive body model

• Volcanic sediment model

②②②② Leading algorithms

High-efficient modeling::::

• Adjust data, generate model and inspect model iterative modeling

• Fault separating and renaming automatically

• Calculating fault boundary automatically

• Making and modifying surface efficiently

Page 5: DepthInsight Sdk introduction

1 Introduction

Functions:

①①①① Model boundary definition

• Survey boundary definition

• Arbitrary polygon boundary definition

• Define longitudinal range of the survey

②②②② Geological conceptional model definition

• Define stratum sequences

• Define contact relationship of strata: denudation, intrusion and unconformity

•Define the sedimentary texture of the stratigraphic unit

•Define the activity of the faults

•Define the truncation relationship of the faults

• Fault grouping management

Page 6: DepthInsight Sdk introduction

1 Introduction

Functions:

③③③③ Fault modeling

• Separate segment automatically

• Generate fault boundary automatically

• Generate local coordinate of fault automatically

• Modify the local coordinate of fault conveniently

• Make the surface of faults efficiently• Make the surface of faults efficiently

• Calculate truncation relationship of faults

• Adjust fault model by well breakpoints conveniently

• Connection of branch fault

Page 7: DepthInsight Sdk introduction

1 Introduction

Functions:

④④④④ Horizon modeling

• Algorithms of generating horizon surface: Minimum Curvature, Inverse

distance weighting

• Algorithms of generating special geologic body: Attraction method

• Automatic homing of the horizon data near the fault

•Adjust horizon model by well tops•Adjust horizon model by well tops

• Generate the equidistance surface of the horizon

Page 8: DepthInsight Sdk introduction

1 Introduction

Functions:

④④④④ Horizon modeling

• Algorithms of making horizon surface: Minimum Curvature, Inverse distance

weighting

• Algorithms of generating special geologic body: Attraction method

• Automatic homing of the horizon data near the fault

•Adjust horizon model by well tops•Adjust horizon model by well tops

• Generate the equidistance surface of the horizon

• Make layers in three method: Proportion, Follow top and Follow base

⑤⑤⑤⑤ Sub-horizon modeling

• Generate sub-horizons according to the well tops automatically

Page 9: DepthInsight Sdk introduction

1 Introduction

Functions:

⑥⑥⑥⑥ Make zones

• Calculate truncation relationship of horizons

• Generate the boundary surface of the zones

• Spatial query

• Support to use texture at the boundary surface of the zones

• Calculate the thickness of the zones• Calculate the thickness of the zones

• Calculate the volume of the zones

•Calculate the normal vector of the horizon surface

Page 10: DepthInsight Sdk introduction

1 Introduction

Functions:

⑦⑦⑦⑦Model application

• 3D visualization(fault surface, horizon surface, sections and local model)

• Space mapping(contours of fault and horizon)

• Structural profile:

Generate structural profile automatically

Support to use texture on the sectionSupport to use texture on the section

• Extract the equidistance surfaces and layers

• Use the 3D texture in the zones

• Support Velocity modeling and Property modeling

Page 11: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 12: DepthInsight Sdk introduction

2 Development language and platform

Language: C++

Running with high efficiency

Support multi-platform requirements

Convenience for users

Development environment:

• Windows: Visual studio 2010, 2012, 2013

• Linux/Unix: G++

Page 13: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 14: DepthInsight Sdk introduction

3 Interface and content

Header file of the interface:

• Define the fundamental type

• Define the interface

Dynamic link library:

• Windows: .dll file

• Linux/Unix: .so file• Linux/Unix: .so file

Page 15: DepthInsight Sdk introduction

3 Interface and content

Interface content:

1) Model-related content

Name Function

EsGenOneModelObj Create model

EsLoadModel Load modelEsLoadModel Load model

EsSerializeModel Save model

EsDeleteModelObj Delete model

EsSetWorkSpace Specify the survey

EsSetWorkspaceBoundary Create model boundary

EsSetActiveWorkRegion Activate the current work area

Page 16: DepthInsight Sdk introduction

3 Interface and content

2) Fault-related content

Name Function

EsAddOneFault Create fault

EsDeleteOneFault Delete fault

EsSetClipFaultByWorkspace Cut the fault surface by survey

EsSetFault_OrdinaryPointSet Fault point data setting

EsSetFault_Sticks Fault segment data setting

EsAutoSeparateFaultSticks Separate segment automatically

EsUpdateFaultSet Make surface

EsGetFaultNetGet the grid of the fault surface�

Display fault surface

Page 17: DepthInsight Sdk introduction

3 Interface and content

Name Function

EsSetFault_UserDefinedBoundary Fault boundary definition

EsSetFault_LocalCoordinateSystem Local coordinate system setting

EsSetFault_RelationshipAssign major fault→Truncation relationship

definition

EsDelFault_Relationship Delete the major faultEsDelFault_Relationship Delete the major fault

EsSetFaultNet_Size Set the fault grid

EsSetFault_ControlPointSetControl points setting� Adjust fault model

by well breakpoints

EsSetFaultEnableFlagFault validity setting� Fault activity

definition

EsSetFaultConfigParam

Set config parameters� Whether to calculate

the fault boundary,local coordinate system,

to set the upper and lower horizon

Page 18: DepthInsight Sdk introduction

3 Interface and content

3) Horizon-related content

Name Function

EsSetLayerNet_Size Set the horizon grid

EsSetLayer_ControlPointSet Control points setting� Adjust horizon model by well

tops

EsSetLayerFacetype Set the type of the horizon� Horizon, Sub-horizon

EsSetLayerEnableFlag Horizon validity setting

EsSetFaultModeling_CheckDistance Set the invalid distance of the horizon points near the

faults

EsSetLayerInterpolateMethod Set the algorithms

EsSetLayerSedimentaryType Set the sedimentation type of the horizon

EsOutputParallelLayerNet Export equidistance surface

EsOutputSmallLayerNet Export layer�

Generate layers automatically in three method:

Proportion, follow top and follow base

Page 19: DepthInsight Sdk introduction

3 Interface and content

4) Zone-related content

Name Function

EsCreateLayerBlock Make zones

EsGetLayerBlockNetAndAttr Get the horizon grid and properties

EsGetClippedLayerSurfaceNet Get the horizon grid after cutting by the section. Update

the display of the horizon

EsGenerateSpecialGeoBody Make special geological body

EsSmoothSpecialGeoBody Smoothing the special geological surface

EsCalLayerThickness Calculate the thickness of the zone

EsCalVolumeOfStratum Calculate the volume of the zone

Page 20: DepthInsight Sdk introduction

3 Interface and content

5) Others content

Name Function

EsCreateProfile Create section�

To parse the returned grid and attribute data

EsTraceContourset Structural contours

EsTraceAttrContourset Property contoursEsTraceAttrContourset Property contours

EsQueryPosInfoOfPointSet Query the spatial location information of the points

EsDiscretizationOfLogCurve Well path discretization�

Discrete the well logs into the layers, and use the points to

support the velocity and property interpolation

Page 21: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 22: DepthInsight Sdk introduction

4 Usage

Windows:

• Visual studio Community 2013(Recommend)

• Contain header file

• Link lib file

• Copy the dll file to the system directory or program execution directory

Download link :

https://www.visualstudio.com/downloads/download-visual-studio-vs

Page 23: DepthInsight Sdk introduction

4 Usage

Windows:

•Acquire SDK development kit

•Apply for permits of SDK

•Define environment variable

Page 24: DepthInsight Sdk introduction

4 Usage

Windows:

•Contain header file and library file of SDK

Page 25: DepthInsight Sdk introduction

4 Usage

Windows:

•Add all library file to the code

• or add all library file to the project properties config

Page 26: DepthInsight Sdk introduction

4 Usage

Windows:

•Copy the SDK dll file to the system directory

•Or program execution directory

Page 27: DepthInsight Sdk introduction

4 Usage

Linux/Unix:

•Qt Creator(Recommend)

•Contain header file

• Link so file

Page 28: DepthInsight Sdk introduction

4 Usage

Linux/Unix:

•Acquire SDK development kit

•Apply for permits of SDK

Page 29: DepthInsight Sdk introduction

4 Usage

Linux/Unix:

•Add the header file include path to the project

•Add the dynamic linking library to the project

Page 30: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 31: DepthInsight Sdk introduction

5 Demo program

Demo program is a sample program developed to

show the functions and usage of SDK.

Demo program is completely use the modeling method

provided by SDK, and it also provides complete

documentation and comments.documentation and comments.

Users of SDK can easily realize the function of

complex structure modeling in their own platform or

software by reading the Demo program.

Page 32: DepthInsight Sdk introduction

5 Demo program

Development environment of demo program:

OS: Windows7, Windows8.1, CentOS6.5

Qt version: Qt 5.5.0 for Windows, Qt 4.8.6 for CentOS

Toolset: vs2012 or vs2013 for Windows, GCC 4.8.3 for CentOS

OSG version: OpenSceneGraph 3.2.0OSG version: OpenSceneGraph 3.2.0

Page 33: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

Program interface

Page 34: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Support the display control of the tree node

• Support the right click menu of the tree node

Page 35: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Show and set the object properties

• Show and set the algorithm and parameter

• Support automatic update

• Support manual updata

Page 36: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Display original data

• Display modeling results

• Support interactive operation

Page 37: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Support Exporting information and log

• Support category

• Information

• Warning

• Error• Error

Page 38: DepthInsight Sdk introduction

5 Demo program

Working flow:

Page 39: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Import fault data

Page 40: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Import horizon data

Page 41: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Making fault surface

Page 42: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Calculate fault boundary automatically

Page 43: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Cut fault surface by survey

Page 44: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Fault truncation relationship

Page 45: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Making horizon surface

Page 46: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Making zones

Page 47: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Horizon contact relationship

Page 48: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Generate special geological body

Page 49: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Generate volcanic model

Page 50: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Volcanic model section

Page 51: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Create section

Page 52: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Generate contours

Page 53: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Making layers

Horizons

Proportion method

Horizon surface

Layer generated

with the

proportion

coefficient is 0.8

Page 54: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Query space geometry information

The information pane gives the queried

information of the points: top distance,

bottom distance and horizon id

Trajectory and model

to be queried

Page 55: DepthInsight Sdk introduction

5 Demo program

Introduction of demo program:

• Discretization of well path

Before discretization After discretization

Page 56: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 57: DepthInsight Sdk introduction

6 Documents

1.Code comments

2.Prototype system help file

3. GridWorld SDK development manual

Page 58: DepthInsight Sdk introduction

6 Documents

Code comments

Page 59: DepthInsight Sdk introduction

6 Documents

Prototype system help file

Switch to the selected interface document

Page 60: DepthInsight Sdk introduction

6 Documents

GridWorld SDK development manual

Page 61: DepthInsight Sdk introduction

6 Documents

GridWorld SDK development manual

Page 62: DepthInsight Sdk introduction

1. Introduction

2. Development language and platform

3. Interface and the content

4. Usage

Contents

4. Usage

5.Demo program

6.Documents

7.Application case

Page 63: DepthInsight Sdk introduction

7 Application case

•DepthInsight Professional Edition

•DepthInsight Express Edition

•GeoEast Software (BGP, China)

Page 64: DepthInsight Sdk introduction

7 Application case

DepthInsight :

Developed based on the SDK

Windows development platform

• Geological structure modeling

• Database based Large Scale & high precison Modeling

• Structural restoration• Structural restoration

• Velocity modeling and Property modeling

• Numerical reservoir simulation

• Reservoir modeling

Page 65: DepthInsight Sdk introduction

7 Application case

Modeling process of DepthInsight :

1) Main function

� Structural modeling

•Define fault truncation relationship

•Generate fault surface automatically

•Define horizon contact relationship

•Generate horizon surface automatically

•Generate layers between horizons

•Define depositional sequence antomatically

•Generate zones automatically

Page 66: DepthInsight Sdk introduction

7 Application case

1) Main function

� Model inspection

Adjust the structural model by comparing the seismic profile to the model.

Page 67: DepthInsight Sdk introduction

7 Application case

1) Main function

� 3D visualization of the model

A variety of cutting function, realize all kinds of 3D visualization effect.

Page 68: DepthInsight Sdk introduction

7 Application case

1) Main feature

� Effective

Complex fault : such as thrust fault, Y-shaped fault

Complex geological body: salt dome, volcanic cone , fold, overlap

Page 69: DepthInsight Sdk introduction

7 Application case

1) Main feature

� High-efficient modeling

• Fault separating and renaming automatically

• Calculating fault boundary automatically

• Making and modifying surface efficiently

Page 70: DepthInsight Sdk introduction

7 Application case

1) Main feature

� High-Precision velocity modeling

Use both seismic data and well data to build the high-precision velocity model.

Fault and well Fault and well

breakpoints

Horizon and

well tops

Page 71: DepthInsight Sdk introduction

7 Application case

1) Main feature

� Low-frequency modeling

Build the Low-frequency model under the control of structure to eliminate fuzzy belt of the

fault.

Fuzzy

belt of the

fault

The attitude of

the horizons

are clear

Property model under the control of structure

Page 72: DepthInsight Sdk introduction

7 Application case

DepthInsight Express Edition 2014:

a structure modeling software developed by our company in

2014 for the international market.

With the self-developed algorithms and based on the

structural model, the framework of any complex structure can

be divided into stair-step grids which can be exported with

files of the international format RESQML. Therefore, thefiles of the international format RESQML. Therefore, the

model data could be shared and exchanged with other geo-

modeling software.

Page 73: DepthInsight Sdk introduction

7 Application case

Modeling process of DepthInsight 2014:

Page 74: DepthInsight Sdk introduction

1) New structural grid

7 Application case

StairStairStairStair----stepstepstepstep grids generated

Faults Horizons

by DepthInsight®2014

Page 75: DepthInsight Sdk introduction

7 Application case

Sections

Page 76: DepthInsight Sdk introduction

7 Application case

Fence diagram in DepthInsight®2014