GOCAD讲义
gocad教程
GOCAD综合地质与储层建模软件简易操作手册美国PST油藏技术公司PetroSolution Tech,Inc.目录第一节 GOCAD综合地质与储层建模软件简介┉┉┉┉┉┉┉┉┉┉┉┉┉┉1一、GOCAD特点┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉1二、GOCAD主要模块┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉1 第二节 GOCAD安装、启动操作┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉2一、GOCAD的安装┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉2二、GOCAD的启动┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉3 第三节 GOCAD数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉5一、井数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉5二、层数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉11三、断层数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉11四、层面、断层面加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉12五、地震数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉12 第四节 GOCAD构造建模┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉13一、准备工作┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉13二、构造建模操作流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉14三、构造建模流程总结┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉40 第五节建立GOCAD三维地质模型网格┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41一、新建三维地质模型网格流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41二、三维地质模型网格流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41三、三维地质模型网格流程总结┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉47 第六节 GOCAD储层属性建模┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48一、建立属性建模新流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48二、属性建模操作流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48三、属性建模后期处理┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉66四、网格粗化┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉74 第七节 GOCAD地质解释和分析┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉78GOCAD综合地质与储层建模软件操作手册第一节GOCAD综合地质与储层建模软件简介Gocad是国际上公认的主流建模软件,在众多油公司和服务公司得到了广泛的应用。
Gocad构造建模讲课文档
调整接触距离
现在十一页,总共十七页。
编辑接触区域
现在十二页,总共十七页。
闭合断层
现在十三页,总共十七页。
断层接触模型完成
现在十四页,总共十七页。
9.地层模拟
建立地层表面
现在十五页,总共十七页。
10.建立地层断层接触模型
现在十六页,总共十七页。
现在十七页,总共十七页。
Gocad构造建模
现在一页,总共十七页。
Gocad 构造建模流程
现在二页,总共十七页。
1.装载数据
主要是装载三个断层 面点集和两个地层面 数据点集。
现在三页,总共十七页。
2.打开构造模型命 令
打开构造模型命令
workflow在五页,总共十七页。
3.数据管理
加载断层数据和地层 数据,并对数据类型 赋值。
现在六页,总共十七页。
4.定义建模范围
定义建模范围并从 生成建模区域。
现在七页,总共十七页。
生成的建模区域
现在八页,总共十七页。
5.断层模型的建立
建立断层面
现在九页,总共十七页。
6.建立断层接触模 型
建立断层接触模型, 并调整接触距离,编 辑接触区域,闭合断 层。
基于GOCAD的三维地质模型构建方法
谢谢观看
2、导入数据:将准备好的地质数据导入到GOCAD软件中,支持多种数据格式, 如CSV、Excel、DBF等。
3、编辑数据:在软件中对数据进行清洗、过滤和整理,以确保数据的质量和 准确性。
4、创建地层实体:利用软件提供的工具,创建地层实体并设置其属性,如厚 度、颜色等。
5、添加断裂构造:利用软件的断裂工具,添加断裂构造信息,并设置其属性, 如方向、倾角等。
2、二维切片图:通过将三维模型进行二维切片,生成各种专业图表,如柱状 图、平面图等,满足不同领域的需求。
3、三维可视化效果:利用GOCAD的强大可视化功能,对生成的三维地质模型 进行实时三维可视化操作,提供更直观的地质信息展示效果。
结论基于GOCAD的三维地质模型构建方法是一种高效、精确的建模技术,已广 泛应用于地质领域。该方法通过数据采集、数据处理和模型构建等步骤,能够 生成高精度的三维地质模型。通过质量控制和成果展示,这种方法具有较高的 实用价值和使用价值。
研究方法
本次演示采用文献调研和案例分析相结合的方法,首先对现有的地质数据管理 和三维地质模型构建方法进行梳理和评价,然后通过实际案例深入探讨这些方 法的优缺点及改进方向。此外,我们还引入了大数据和人工智能技术,开发了 一套全新的基础地质数据管理和三维地质模型构建系统。
结果与讨论
通过对文献的梳理和案例分析,我们发现现有的地质数据管理方法主要面临数 据格式不统一、数据冗余和数据更新困难等问题。而三维地质模型的构建方法 则存在建模过程复杂、计算精度不高和可视化效果不佳等问题。针对这些问题, 我们提出了全新的解决方案:首先,我们通过统一数据格式、引入数据挖掘技 术和建立动态更新机制等手段,
三维地质模型构建的第一步是数据采集。数据采集包括地面测量、钻孔数据、 遥感影像等多种来源的数据。这些数据经过处理和筛选,为后续建模提供基础 数据支撑。
GOCAD功能简介及应用实例
GOCAD软件简介Gocad地质建模软件是国际上公认的主流建模软件,在众多油公司和服务公司得到了广泛的应用,包括Exxon、Mobile,Chevron、Texaco、BP、Halliburton,Schlumberger等世界著名的油公司和服务公司。
Gocad是以工作流程为核心的新一代地质建模软件,达到了半智能化建模的世界最高水平,具有功能强,界面友好,易学易用,并能在几乎所有硬件平台上(Sun, SGI, PC-Linux, PC-Windows)运行的特点。
Gocad研究思想是1988年法国Nancy大学的J.L. Mallet教授提出的,目的是要开发一种新的地质建模软件,以适应地质、地球物理和油藏工程的需要,为多学科的综合研究提供技术支撑。
在Gocad软件研发中除采用J.L. Mallet 教授提出的离散光滑插值技术(DSI), 还采用了适应能力很强的三角剖分和四面体剖分技术,并独立地开发了软件中的地质统计学部分。
自1990年软件诞生后,得到了国外的许多油公司和地球物理公司的支持,取得了飞速的发展。
从最初的简单构造建模,发展到今天复杂构造建模、复杂三维模型网格生成、储层岩石物理属性模型、岩相模型等,以Gocad为代表的先进地质建模软件大大提高了地质建模的效率和精度,可以满足对复杂地质区域的建模要求。
Gocad建模思想是建立在工作流程之上的,是以地质建模的内在规律和程序为基本框架,为地质师和油藏工程师提供充分的发挥想象力的空间,使人的地质思想得以准确的融合到地质建模过程中,使整个建模过程始终以地质为本。
Gocad构造建模能处理任何复杂的构造模型,并能方便地对三维构造模型和三地质网格模型进行编辑及更新,使用Gocad软件用户能方便地对油藏进行动态跟踪。
Gocad基于流程的属性体建模方法包含几十种地质统计算法,功能强大,使用灵活,并能方便地引入约束条件,将地质家和油藏工程师的认识、大量油藏信息引入到属性体建模中,此外 Gocad建模的许多模块是EDS公司与Chevron、Texaco等油公司联合研发,因此具有很高的实用性。
GOCAD功能简介及应用实例
GOCAD软件简介Gocad地质建模软件是国际上公认的主流建模软件,在众多油公司和服务公司得到了广泛的应用,包括Exxon、Mobile,Chevron、Texaco、BP、Halliburton,Schlumberger等世界著名的油公司和服务公司。
Gocad是以工作流程为核心的新一代地质建模软件,达到了半智能化建模的世界最高水平,具有功能强,界面友好,易学易用,并能在几乎所有硬件平台上(Sun, SGI, PC-Linux, PC-Windows)运行的特点。
Gocad研究思想是1988年法国Nancy大学的J.L. Mallet教授提出的,目的是要开发一种新的地质建模软件,以适应地质、地球物理和油藏工程的需要,为多学科的综合研究提供技术支撑。
在Gocad软件研发中除采用J.L. Mallet 教授提出的离散光滑插值技术(DSI), 还采用了适应能力很强的三角剖分和四面体剖分技术,并独立地开发了软件中的地质统计学部分。
自1990年软件诞生后,得到了国外的许多油公司和地球物理公司的支持,取得了飞速的发展。
从最初的简单构造建模,发展到今天复杂构造建模、复杂三维模型网格生成、储层岩石物理属性模型、岩相模型等,以Gocad为代表的先进地质建模软件大大提高了地质建模的效率和精度,可以满足对复杂地质区域的建模要求。
Gocad建模思想是建立在工作流程之上的,是以地质建模的内在规律和程序为基本框架,为地质师和油藏工程师提供充分的发挥想象力的空间,使人的地质思想得以准确的融合到地质建模过程中,使整个建模过程始终以地质为本。
Gocad构造建模能处理任何复杂的构造模型,并能方便地对三维构造模型和三地质网格模型进行编辑及更新,使用Gocad软件用户能方便地对油藏进行动态跟踪。
Gocad基于流程的属性体建模方法包含几十种地质统计算法,功能强大,使用灵活,并能方便地引入约束条件,将地质家和油藏工程师的认识、大量油藏信息引入到属性体建模中,此外 Gocad建模的许多模块是EDS公司与Chevron、Texaco等油公司联合研发,因此具有很高的实用性。
GOCAD油藏三维综合地质建模技术
国际大趋势在勘探开发日益一体化的今天,国际上已相当普及从油气田规模到区块规模再到单个油气藏的三维定量综合地质建模。
对于中国普遍存在的复杂地质条件油气藏,三维综合地质建模更不可少,可以肯定地说,这也是国内勘探开发一体化发展的必然环节。
勘探开发一体化三维综合地质建模及虚拟现实技术您理想的综合地质建模解决方案主要内容国际石油工业界的建模共识 国际石油工业界的通力协作 GOCAD软件产品简介GOCAD综合建模技术特色GOCAD 综合建模技术简介国际石油工业界的建模共识现代油气藏科学管理两大支柱:静态描述+动态模拟•油气藏描述:目标―储层三维定量地质模型构造格架模型、储层结构模型、流动单元模型、参数分布模型•油气藏模拟:基础―储层三维定量地质模型三维油藏数值模拟成败的关键什么是储层三维定量地质模型呢?定量表征油气藏目前状态下,储层特征(储层结构及属性参数)在三维空间分布规律的地质模型。
储层地质模型分类一、按勘探开发阶段及模型精度分类(裘亦楠,1991)•概念模型(Conceptual model)•静态模型(Static model)•预测模型(Predictable model)储层概念模型:点坝砂体的半连通模式(据薛培华,1991)储层静态地质模型概念:描述某一具体油气田或区块的一个或一套储层的属性特征在三维空间上的变化和分布规律的地质模型。
目的:为编制开发方案及调整方案提供地质依据实现:小层平面图、油层剖面图、栅状图、三维分布图、切片图缺点:地震-信息覆盖面广但垂向分辨率低测井-井间参数内插与外推预测精度考虑较少,精度欠缺储层预测地质模型概念:对井间及其外围地区的储层参数进行高精度内插和外推预测的高质量地质模型。
目的:开发调整、井网加密或三次采油实现:地质随机建模技术、地震约束、井网控制精度:井间预测精度―数十米或数米级储层地质模型分类二、按储层表征内容或建模步骤分类•构造格架模型•储层结构模型•流动单元模型•参数分布模型储层结构地质模型储层相模型:相控建模技术应用的基础概念:描述储层几何形态以及三维空间分布的地质模型。
GOCAD(外文资料) (4)
gocad
cubit callenges:
topology book-keeping in gocad is very different from bookkeeping in most FE meshers
each TSurf in gocad “owns” its own vertexes and borders, adjoining TSurfs do not reference common nodes
examples of lithospheric structure constraints:
active source seismology: wide-angle reflection/refraction lines (onshore&offshore), MCS lines (non-commercial products)
the CBM format (as I understood in 06/15/2006):
the CBM format (as I understood in 06/15/2006):
the CBM format (as I understood in 06/15/2006):
each volume is closed (and if parts were merged, each side of the volume shares vertexes along the edges), but adjoining volumes do not share a common surface, border surface is duplicated…
?
gocad
cubit
(FEA)
第14章Go语言进行绘图和图像处理Go语言从入门到精通课件
target
01
DRAWING
02
COMPLEX
03
PROCESS
掌握Go语言标准库进行基本绘图的方法 掌握复杂图像绘制的方法 了解用第三方包进行灵活图形处理的方法
目 录 导 航 Contents
14.1 基本的点绘图
计算机绘图
➢ 绘图最基本的操作就是在图片上绘制每个点 ➢ 对于计算机绘图,可以看作是给每个点设置
// 用十六进制方式设置当前颜色 contextT.SetHexColor("FFFFFF")
// 用当前颜色来清空整个图片 contextT.Clear()
// 设置线宽为 2 个像素 contextT.SetLineWidth(ontextT.SetRGB(0.0, 0.0, 1.0)
}
// 否则该点在圆形内部(包括边) // 此时根据与圆心距离的远近确定颜色强度 return byte(255.0 * d / p.R) }
渐变色效果图
目 录 导 航 Contents
14.5 用第三方库实现复杂图形绘制
/fogleman/gg包核心代码-1
// 建立一个绘图环境,图片大小为 600×400 像素 contextT := gg.NewContext(600, 400)
for x := 0; x < w; x++ {
var colorRedT byte = 0
if shapeRedT.InShape(float64(x), float64(y)) {
colorRedT = 255
根据是否落在形状内确
} ……
定该点颜色
colorT := color.RGBA{colorRedT, colorGreenT, colorBlueT, 255}
GOCAD(外文资料)(1)
Seismic Acoustic Impedance Inversion in Reservoir Characterization Utilizing gOcad By Steven Clawson and Hai-Zui (“Hai-Ray”) Meng, Presented at the 2000 gOcad Users MeetingIntroductionWorkflows for utilizing seismic data inverted to acoustic impedance data in reservoir characterization will be shown. We are using the public domain 3D seismic dataset at Boonsville Field in North-Central Texas for our example. This public domain dataset is fairly complete with seismic, well, and production data:•5.5 sq. Miles of 3D seismic data•Vertical seismic profile (VSP) near center of survey•Digital well logs from 38 wells•Well markers for the bend conglomerate group•Perforations, reservoir pressures, production and Petrophysical data for the 38wellsWe acknowledge Oxy USA, Inc., Enserch, Arch Petroleum, Bureau of Economic Geology, GRI and the DOE as contributing members for making this dataset available. This data is made publicly available as part of the technology transfer activities of the Secondary Gas Recovery (SGR) program funded by the U. S. Department of Energy and the Gas Research Institute.Boonsville Field is in the Fort Worth Basin in North-Central Texas.The main productive interval are clastic sandstones in the Pennsylvanian Atokan Bend Conglomerate Group.A type log shows the interbedded sandstones and shales over about 1300 feet of section. The Bend Conglomerate is underlain by the Marble Falls Limestone, a platform carbonate. The Bend Conglomerates were sourced from the northwest on the Red River Arch as the Fort Worth Basin was forming during the Oachita orogeny. These Bend Conglomerate sandstones then pinchout to the southeast, outside of this project area as they become distal to the source, prograding into the Fort Worth Basin.Historical gas production has been from the lower most sequence in the Vineyard. Additional potential is expected in the middle sequences of the Runaway and Vineyardintervals.Conglomerate Group.This example seismic line shows the Bend Conglomerate Group structure. Most striking are the karst collapse features from dissolution of the underlying Ellenburger Limestone, some 2000 feet below the Atoka. These collapse features are seen to causecompartmentalization in the Bend Conglomerate sand bodies.Previous conclusions from the Bureau of Economic Geology’s GRI study are:1) Karsting from Ellenburger carbonates cause collapse features compartmentalizing thereservoir. Large range of compartment sizes exist.2) Need 3D seismic to image the collapse features.3) Seismic attributes can sometimes predict the reservoir faciesUpper Caddo: AmplitudeLower Caddo: Inst. FrequencyLower Bend Conglomerate sequences not definitive4) Reservoirs often exist as stacked compartments of genetic sequences.The utility of the seismic attributes derived from the amplitude data are limited and typically very dependant on the particular interval analyzed. In this project we integrate the well log data in with the seismic for a better defined reservoir model. This integration is accomplished by inverting the seismic amplitude data to acoustic impedance (AI) properties and depth converting the seismic so correlation with the well logs is possible. In this presentation I will only highlight the features of Structural Framework and Rock Property modeling in the overall Reservoir Modeling workflows:Structural Framework => Stratigraphic Gridding => Litholgy and Facies Mapping => Pressure Field => Rock Properties => Fracture Network and Stress Field =>Reservoir Fluids and Dynamic Response.Motivation for Reservoir Modeling include:1) Integration of all relevant and available data.2) Merge data of different scales:(Cores, Well logs, Seismic and Production).3) Dynamically update the model as new information becomes available.4) Measurement of errors and uncertainty as well as expected value.The specific workflows used are dependant on number and type of data available. In this case there is substantial well control and the seismic data is of high resolution (80Hz). Structural Framework WorkflowThe Structural Framework Workflow is shown below:Obtaining the Structural Framework from the seismic gives a much better description than from the well control alone. The karst features were not known until the 3D seismic data was acquired.Integration of the well marker tops and the seismic time horizons proceeds by 2 pathways:1) A reference horizon (the Caddo Limestone) was an excellent reflector that also tied the well tops. This is depth converted by a co-located co-Kriging method.2) Time horizons below this reference did not exactly tie the associated well markers due to tuning effects of the thin bedded Bend Conglomerate Group. For these horizons a velocity field was constructed from interpolating the sonic logs, calibrated to the seismic and checkshot survey. The depth was then created by the time and velocity relationship.3)The fault network will be incorporated in the future using a seismic continuity analysis. Depth conversion of the reference horizon is accomplished thru the strong correlation between the time and depth relationship at the well locations.Co-located co-Kriging of the seismic time and well marker depths produces a very accurate depth structure for the Caddo Limestone.Interpolating the sonic logs in the survey a interval velocity field is produced. Converting these interval velocities to average velocities (inverse Dix’s equation) provides the information on depth converting the intervening horizons.And here are the depth converted intervening seismic horizons.Rock Properties WorkflowThis rock property modeling workflow utilizes the seismic information obtained via inversion to acoustic impedance to better control the well log interpolation of rock properties. This is also accomplished with the accurate structural information that the seismic provides. This workflow is necessarily iterative due to the dependency of one data on another and the iteration between time (on the seismic data) and depth (for the log data) referencing.Seismic to Log Calibration is the first step in integrating the seismic amplitude data with the log properties. Starting off one may not know other than by qualitative correlation what the seismic wavelet is. In this case a reserse polarity wavelet is assumed. The synthetic is then tied to the seismic data, performing a constrained stretching and/or squeezing to fit major events. This stretching/squeezing is primarily due to dispersionbetween seismic velocities and sonic log velocities.A final seismic wavelet is then extracted. Always use more than a single seismic to log calibration tie. In this case 4 well ties were averaged for a consistent wavelet showing that the seismic wavelet is nearly –90degrees out of phase and slightly ringy. The ringing suggests that the deconvolution was not sufficient to collapse the source wavelet. Theseismic bandwidth is very good (20-80Hz).A background acoustic impedance model is needed to supply the low frequency component missing from the seismic trace data in the inversion. This first iteration uses asimple gridding of the 4 sonic logs in the survey.A model based inversion using Hampson-Russell Software’s Strata program shows the transform of the qualitative amplitude data into rock property information. The result is very dependant on the background model used and later we’ll see an improvedbackground model for a better result.Checking this inversion at our key well: B Yates 18D the seismic inverted acoustic impedance ties well qualitatively with well log acoustic impedance. Depth converting thisAI volume is also compared to the well log for quality control.Now that we ha ve seismically derived rock properties from the seismic in depth, let’s see how they correlate to the well logs. In general we see that:1) Low AI relates to shales from the gamma ray log.2) High AI relates to resisitve sandstones from the RT log.3) Correlation of AI to the porosity is more complicated since the shales measure a highporosity with low AI and the more porous sandstones are in an intermediate range of AI,while the tight sandstones are resistive and also high AI.properties show a rather low correlation coefficient.An observation of the relative scales of information is needed. The well logs of course are of higher resolution than the seismic data as shown in the lower variance of AI derived by the seismic data than that represented in the well log data. Smoothing the log curves is required to be able to statistically correlate the respective information. This correlation is also stongly influenced by the exact depth conversion of the seismic information to tie the wells. Due to the thin bedded nature of the Bend Conglomerate Group a mistie of only afew feet will severely effect the correlation.Cross-plotting the seismically derived AI to the smoothed well logs (20 feet averaging) increases the correlation, as now the data are on a more equal sample support resolution. These correlations are still low. These seismically derived AI values are also influencedby the simple background impedance model used in the inversion.in the survey.The well log acoustic impedance (AI) is highly correlated to the Log10(RT). The spatial variogram shows a fairly long range to the correlation in order to provide a goodbackground AI model for a 2nd iteration of inversion.First Kriging the Log10(RT) logs is performed. Next co_Kriging the 4 wells with acoustic impedance information is run. Spatially this new background impedance model is shown to provide spatial features not available with just the 4 wells with sonic logs. Areas near the well control have very high frequency information content. While away from well control the response is subdued towards an average from the Kriging system. Since the seismic is principally used for interpolating the interwell region this background impedance model is low pass filtered to 20Hz. This way the well control is only adding the very long wavelength trends to the inversion result. And the interwellregion should be justly controlled by the seismic data.rock properties.Qualitative correlation to the key well: B Yates 18D yields similar results as before.Now cross-plotting the seismically derived acoustic impedance and the log properties in depth shows a better correlation. These correlations are good enough to use in a co-located co-Kriging of the well log properties.Rock property models are now generated by co-located co-Kriging of the gamma ray logs for lithology discrimination and resistivity logs controlled by the seismically derived AIproperties.A reservoir model of sandstone porosity can be derived by the relationships of lithology to gamma ray and resistivity. Where these models of gamma ray and resistivity are related back to the seismically derived acoustic impedance.By segmenting the data into a sandstone region defined by where:Gamma ray is less than 90 andLog10(Resistivity) is greater than 0.8A sandstone porosity relationship is defined.Constructing the density model in the sandstone facies then is represented here.。
GOCAD(外文资料) (3)
A Short Note on the Integration of GSLIB and GOCADW.Glenn(wglenn@ualberta.ca)University of Alberta,Edmonton,Alberta,CANADAThis short note describes some of the work undertaken by Will Glenn as a summer intern supported by T-Surf to incorporate some of the latest GSLIB/CCG codes in gOcad.Please contact C.V.Deutsch or T-Surf to discuss implementation at your site.Users guide to implement GSLib dll in GocadHere are some general guidelines related to using the GSLib DLL in gocad.Note that this approach requires a C:/temp folder to hold GSLib intermediate files.Cell declustering(declus)-see below-requires a loaded Pointset with a property and assigns the declustering weights to each point in Vset.The steps are summarized by(1)display the Vset and property in the camera,(2)select declus from the GSLib algorithms menu,(3)the declustering dialog window will pop up,(4)enter the name of the Pointset,(5)select the Pointset property,(6) enter the Y and Z anisotropy variables,(7)number of cell sizes to consider in the operation,(8) minimum and maximum cell size,(9)number of origin offsets(noff),(10)select the check box for maximum declustered mean,(11)choose a suitable name for the declustered weight,(12) enter the minimum and maximum trimming limits,and(13)select the check box for Post deleting intermediate files(this is recommended if no further file analysis or file debugging is needed).Soft data declustering(sddeclus)requires a loaded Pointset with a property and a loaded Voxet with cell properties.The result is a file with a representative histogram.The steps aresummarized by(1)display the Pointset with property and Voxet with cell property in the camera,(2)select sdeclus from the GSLib algorithms menu,(3)the soft declustering dialog window will pop up,(4)enter the name of the Voxet,(5)enter the name of the Vset,(6)enter the name of the Vset property,(7)enter the name of the Voxet property,(8) enter the number of secondary classes to consider,(9)GSLib sddeclus output file,(10) minimum and maximum trimming limits of data,and(11)post deleting intermediate files. This is recommended if no further file analysis or file debugging is needed.Stepwise conditional transformation(stepcon)requires a loaded Pointset with two or more properties.The result is a file with new colums for the transformed values and another file with the output transformation table.The steps are summarized by(1)display the Pointset with property and Voxet with cell property in the camera,(2)select stepcon from the GSLib..Algorithms menu,(3)the stepcon dialog window will pop up,(4)enter the name of the pointset,(5)enter the primary property,(6)enter the secondary property,(7)if there are other properties of the pointset that must be used,select the properties accordingly,(8)enter the number of secondary classes,(9)an optional transformation table file can be considered in the algorithm by indicating its location,(10)the GSLib output file containing the original data set with additional columns with the new conditioned data,(11)the GSLib output file containing the transformation table,(12)minimum and maximum data trimming limits,and(13)post deleting intermediate files.This is recommended if no further file analysis or file debugging is needed. The reverse of the stepwise conditional transformation(backstep)requires two data files and the transformation data.The result is the back transformed values.The steps are summarized by(1) select stepcon from the GSLib algorithms menu,(2)the backstepcon dialog window will popup, (3)enter the number of variables,(4)enter data file number1,(5)enter data file number2,(6) select check box for smoothed distribution,(7)enter the input transformation table,(8)enter theunivariate transformation table file for variable1,(9)enter the univariate transformation table file for variable2,and(10)select the output file.The sequential Gaussian simulation program with self healing(sgsim_sh)requires two pointsets and generates a new SGrid properties for each cell,a simulation output file,an MVF for simulation output file.The steps are summarized by(1)display the two Poinsets with property and SGrid in the camera,(2)select sgsim_sh from the GSLib algorithms menu,(3)the sgsim_sh dialog window will pop up,(4)enter the name of the primary Pointset,(5)enter the primary property,(6)a and b:select the weight checkbox if there is a weight property in the primary Pointset to be used in sgsim_sh and enter the property name,(7)a and b:select the secondary checkbox if there is a secondary property in the primary Pointset to be used in sgsim_sh and enter the property name,(8)enter the name of the secondary Poinset,(9)enter the secondary property to be used from the secondary pointset,(10)enter the Sgrid,(11)a and b:select the checkbox to consider the reference distribution file,(12)a and b:enter the minimum and maximum Z values, (13)a and b:enter the lower tail option and parameter,(14)a and b:Enter the Upper tail option and parameter,(15)enter the simulation output file,(16)enter the mvf file for simulation output, (17)enter the number of realizations,(18)a and b:Enter the minimum and maximum original data for simulation,(19)enter the number of simulation nodes,(20)select the checkbox to assign data to nodes,(21)select the checkbox to perform a multiple grid search,(22)enter the number of multiple searches,(23)enter the maximum data per octant(0=not used),(24)a,b,and c:-maximum search radii(hmax,hmin,vert),(25)a,b,and c:-angles for search ellipsoid,(26)a,b, and c:-size of covariance lookup table,(27)kriging type,(28)colocorr,(29)varred,(30)a,b,and c:a0v,a1v,acc,(31)select checkbox to transform secondary variable,(32)enter the nugget effect,(33)select the Variogram type,(34)enter the cc parameter,(35)a,b,and c:enter the angle parameters,and(36)a,b,and c:enter the a_hmax,a_hmin,and a_vert parameters.Note1A:the SGrid must be an translation of the original XYZ grid.Surface simulation(surfsim)requires a loaded Pointset generates four output files with the surface parameters.The steps are summarized by(1)display the poinset and Sgrid in the camera,(2)select surfsim from the GSLib..Algorithms menu,(3)the surfsim dialog window will pop up,(4)enter the name of the poinset,(5)select the Sgrid to use for the algorithm,(6)enter the Maximum number of surfaces,(7)enter the total thickness,(8) select the surface type–gauss-helmet-ellipse,(9)a,b,and c:Enter the L,M,and U height of surface,(10)a,b,and c:(simple)Enter the L length,(ellipse)M long axis,and(guass) Sigma X,(12)a,b,and c:(simple)Enter the L width,(ellipse)short axis,and(gauss) Sigma Y,(13)a,b,and c:(simple)(not for ellipse&gauss)L,M,U width2,(14)select box for truncation,(15)select box for it variable,(16)a,b,and c:if trunction(14),Enter the L,M,and U of X0,(17)a,b,and c:if trunction(14),Enter the L,M,and U of Y0,(18) select box for itrans variable,(19)enter the nugget effect,(20)enter the cc variable,(21) a,b,and c:enter the L,M,and U Sigma of residual,(22)a,b,and c:enter angle_1, angle_2,and angle_3parameter,(23)a,b,and c:enter the a_hmax,a_hmin,and a_vert variables.Note2A:the SGrid must be a translation of the original XYZ grid.Create a Voxet from GSLIB takes a GSLIB data file and generates a file for GOCAD.The steps are summarized by(1)select Create_Vset_from_GSLib from the GSLib-tools menu,(2)enter an appropriate name for the Pointset,(3)select a GSLib data file from the file selector,(4)ct checkbox if GSLib data file contains a well prefix(ie.Is the first column in the GSLib data file a well number?),and(5)select checkbox if the GSLib data file contains a column for Z values(ie. Is the file in3-D or2-D format?).Load a Voxet.The steps are summarized by(1)select Load Voxet Property from the GSLib-tools menu,(2)choose the Voxet that will have the additional property,(3)give the new property a name,(4)choose the GSLib file A that contains the property,(5)select the checkbox if the GSLib file has a second property that is to be included in the Voxet,and (6)depending on step5,Enter the second property.Load a SGrid.The steps are summarized by(1)select the load_sgrid_property from the GSLib..tools menu,(2)choose the SGrid that will have the additional property,(3)enter a property name,(4)choose the GSLib file that contains the property,(5)select the checkbox if the GSLib file has a second property that is to be included in the SGrid,and (6).depending on step5,Enter the second property nameHow to integrate the GSLIB DLL in MSDEV C++:This is an example implementation of the IDECLUS function using the GSLIB.dll and GSLIB.lib.1download and install the VFRUN65AI.exe from:/fortran/kb/q1023.htmlthis exe will install the necessary dlls to run the DECLUS.dll or any other fortrandll created by visual fortran in C++code.2.Place the GSLIB.dll in the system path3.In the MSVisual Studio environment,update include the GSLIB.lib file in theProject->settings->Link(tab)->Object/library modules:linee the sample C++code to run the IDECLUS function inside theimplementation filesthe IDECLUS function requires a.dat and.par file inside a sample.cpp file:#include<string.h>…char instring[50];char outstring[50];strcpy(instring,"C:/temp/declus.par");strcpy(outstring,"C:/temp/data.out");/*Call Fortran routine-pass length of outstring explicitly*/int warnint=IDECLUS(instring,strlen(instring),outstring,50);//if warnint=0-Normal operation//if warnint=1-Missing parameter or input file//if warnint=2-Error in parameter file//if warnint=9-Extraneous Unknown error…inside a sample.h file:…extern"C"//must declare extern“C”to avoid C++name mangleing//IDECLUS being the name of the function{__declspec(dllimport)int__stdcall IDECLUS(char*STR_IN,int STR_IN_LEN,char*STR_OUT,int STR_OUT_LEN);}General Gocad Plugin informationFor future development of CCG Gocad plug-ins.The CCG Gocad plug-in was developed using the three stage implementation.Each plug-in element begins with the source stage. The source files are interfaced with the API stage.A single CLI command encapsulates the entire process of calling the API and source objects.Specific Libraries were tailored for the CCG Plug-in.the libraries are InputOutput,and Algortihms.The InputOutput library contained most of the file reading and writing.The Algortihms library contained all of the CCG_DLL.dll functionalities and GSLib parameter file creations.The source contains the GSLib function calls and extern”c”declarations.It also contains the file writing procedures for the GSLib intermediate files. The GAPI contains the calls to the source classes and performs error checks.It also prepares Gocad to receive properties and contains calls to update properties.The GAPI classes that the CCG has developed in summer2001have contained only public static functions(similar to Gocad api convention)that mainly return Boolean values as output. Inside the GAPI static functions the main source classes are called.In the CCG Gocad plug-in each library that was created,there was a corresponding GAPI file used to call the library’s code.The CLI and XCLI simplified the creation of the user interface windows.Inside the CLI commands the CCG used file selectors,Object selectors,property selectors,parameter entry fields,and Boolean variables to create a dialog to users.The CLI commands call the GAPI static functions.The menu-bars section defines the menu item names,CLI calls,and ordering of menu layout.The Gocad plugin takes care of the implementation of the menu-bar,so developers need only worry about the ordering of the menu items.Instructions on how to use each GSLib dll function in Gocad Using specific parameters and files.declus:Using this parameter file:START OF PARAMETERS:../data/cluster.dat \file with data1 2 0 3 \ columns for X, Y, Z, and variable-1.0e21 1.0e21 \ trimming limitsdeclus.sum \file for summary outputdeclus.out \file for output with data & weights1.0 1.0 \Y and Z cell anisotropy (Ysize=size*Yanis) 0 \0=look for minimum declustered mean(1=max)24 1.0 25.0 \number of cell sizes, min size, max size 5 \number of origin offsetsSteps:1.In GSLib..tools..Create VSet from GSLib,2.Enter the file cluster.dat as the GSLib file.3.make sure the check boxes are unchecked because cluster.dat does not have columns for well id orZ4.In GSLib..Algorithms..declus5.choose the Pointset previously entered and enter“Primary”property in the property boxe the default parameters(they are the same as the above)stepcon:Using this parameter file:START OF PARAMETERS:data.dat - file with data2 - number of variables to transform3 5 - columns for variable transformation-primary and Secon-1.0e21 1.0e21 - trimming limits10 - number of classes1 - input transformation table,yes=1,no=0scatsmth_k.trn - file with transformation table stepcon.out - file for outputstepcon.trn - file for output transformation tableSteps:1.In GSLib..tools..Create_Vset_from_GSLib,2.Enter the file cluster.dat as the GSLib file.3.Make sure the check boxes are unchecked because cluster.dat does not have columns for well id or Z4.In GSLib..Algorithms..stepcon5.choose the Pointset previously entered and enter“Primary”in the primary box and“Secondary”inthe secondary box.e the default parameters(they are similar to the ones above).7.Out put files should appear in the C:/temp folder.ssdeclus:Using this parameter file:START OF PARAMETERS:pairs.dat -file with paired calibration data1 2 - columns for secondary and primary-1.0 1.0e21 - trimming limitsseismic.dat -file with secondary data1 - column for secondary variable sddeclus.out -file for representative histogram50 -number of sec. classes to use (10-100)Steps:1.In GSLib..tools..Create_Vset_from_GSLib,2.Enter the file welldata.dat as the GSLib file.3.make sure the check boxes are checked because welldata.dat does have columns for well id and Z4.In Objects right click on Voxet..New..From_Objects_cage.5.give the Voxet a name,set Scale W dimention by1,set nu=81,nv=81,nw=787.Populate the Voxet nodes with properties from the file“seisimic.dat”.This file contains only onecolumn with the property“impedence”.The file data will expire before filling all Voxet nodes.8.go to Voxet..Attributes..select the Object and make the“volume”atoms visible.(this will slowthings down!)6.In GSLib..Algorithms..sddeclus7.Put in the above Voxet,Pointset,and“Porosity”property from Pointset in primary property and“impedance”in the secondary property.e the rest of the default parameters(similar to the above parameter file)uncheckPost_delete_par_file to view the intermediate GSLib files(ie.the pairs.dat file).backstep:Using this parameter file:START OF PARAMETERS:2 - number of variablessgsimscpor.out - data file number 1sgsimscper.out - data file number 21 - smoothed distribution, 1=yes, 0=noscatsmth_kfl.trn - file with input transformation table nspor.trn - univariate transformation table for variable 1 nsper.trn - univariate transformation table for variable 2 backfl.out - file for outputSteps:Not much to this Program,Just put in the files and Select where the output files go!sgsim_sh:Using this parameter file:START OF PARAMETERS:../data/cluster.dat -file with data1 2 0 3 0 4 - columns for X,Y,Z,vr,wt,sec.var.-1.0e21 1.0e21 - trimming limits1 -transform the data (0=no, 1=yes) sgsim.trn - file for output trans table0 - consider ref. dist (0=no, 1=yes) histsmth.out - file with ref. dist distribution1 2 - columns for vr and wt0.0 25.0 - zmin,zmax(tail extrapolation)1 0.0 - lower tail option, parameter1 25.0 - upper tail option, parameter1 -debugging level: 0,1,2,3GSLvm-SH.dbg -file for debugging outputGSLvm-SH.out -file for simulation outputGSLvm-SH-mvf.mvf -mvf file for simulation output mvffl 1 -number of realizations to generate25 0.5 2.0 -nx,xmn,xsiz25 0.5 2.0 -ny,ymn,ysiz1 0.5 1.0 -nz,zmn,zsiz123065 -random number seed0 8 -min and max original data for sim12 -number of simulated nodes to use1 -assign data to nodes (0=no, 1=yes)1 3 -multiple grid search (0=no, 1=yes),num 0 -maximum data per octant (0=not used) 15.0 15.0 10.0 -maximum search radii (hmax,hmin,vert)0.0 0.0 0.0 -angles for search ellipsoid31 31 1 -size of covariance lookup table2 0.774 1.0 -ktype: 0=SK,1=OK,2=LVM,3=EXDR,4=COLC1 0.1 1.0 0.02 -self healing (0=no, 1=yes)../data/ydata.dat - file with secondary variable(LVM,EXDR,COLC variable4 - column for secondary variable1 - transform secondary variable (0=no,1=yes)1 0.3 -nst, nugget effect1 0.7 0.0 0.0 0.0 -it,cc,ang1,ang2,ang312.0 12.0 12.0 -a_hmax, a_hmin, a_vertaSteps:1.In GSLib..tools..Create_Vset_from_GSLib,2.Enter the file cluster.dat as the GSLib file.3.make sure the check boxes are unchecked because cluster.dat does not have columns for well id or Z4.In GSLib..tools..Create_Vset_from_GSLib,5.Enter the file ydata.dat as the GSLib file.MAKE sure the name is not the same as above!!6.un-check check boxes because ydata.dat does not have columns for well id or Z7.create an SGrid..New..From_Step_Vectors.put orgin at0,0,-0.5to encapsulate the data,alsoset nu=51,nv=51,nw=2(these are the number of nodes)and leave the property_cell_centered8.Run the GSLib..Algorithms..sgsim_sh picking“Primary”as the pointset_vr_property,and“Secondary”as the sec_property.Also,pick the secondary pointset and its“Secondary”propertyand proper SGrid.9.DELETE the OLD properties if running again to avoid the Gocad database from rejecting theadditional properties with identical namessurfsim:Using this parameter file:START OF PARAMETERS:1 -number of realizationscond1.dat -input file of conditioning datacond1_.dat -output scaled conditioning dataW2000C1idx.out -output file of the indexW2000C1thk.out -output file of the thicknessW2000C1par.out -output of the parameters1500 0.5 1.0 -nx,xmn,xsiz20 0.5 1.0 -ny,ymn,ysiz100 0.5 1.0 -nz,zmn,zsiz100 -Maximum no. of surface200 -total thickness69069 -seed of random number3 -surface type (1-Helmet 2-Ellipse 3-gauss) 15.0, 35.0, 60.0 -L,M,U height of a surface100.0,150.,200.0 -L,M,U length (Simple), long axis (Ellipse), SigmaX (Gauss)20.0, 25., 30.0 -L,M,U width (Simple), short axis (Ellipse), SigmaY (Gauss)5.0, 7.5,10.0 -L,M,U width 2 (Simple) (not for Ellipse & Gauss)0.0,90.0,180.0 -L,M,U angle0 -truncation flag1000,1150,1300 -L,M,U of X0 if trunFlag = 010, 10, 10 -L,M,U of Y0 if trunFlag = 0-------------------------------------------0 -itrans0.00001, 0.00001, 0.00001 -L,M,U sigma of residual1 0.0001 -nst, nugget effect3 0.9999 0.0 0.0 0.0 -it,cc,ang1,ang2,ang330.0 30.0 1.0 -a_hmax, a_hmin, a_vertsteps:1.In GSLib..tools..Create_Vset_from_GSLib,2.Enter the file cond.dat as the GSLib file.3.make sure the check box for well id is unchecked because cond1.dat does not have a column forwell id4.create an SGrid from right clicking on SGrid..New..From_Step_ the SGrid andset the orgin to x=0.5,y=0.5,z=0.5,and set nu=1500,nv=20,and nw=1005.Run GSLib..Algorithms..surfsim using the default parameters。
GOCAD讲义
GOCAD地质建模Gocad是以工作流程为核心的一款地质建模软件,达到了半智能化建模的世界最高水平,具有功能强,界面友好,易学易用,并能在几乎所有平台上(Sun, SGI, PC-Linux, PC-Windows)运行的特点。
以下通过一个简单的例子,说明GOCAD地质建模的主要过程。
第一部分GOCAD的启动1、双击桌面上的Gocad启动图标,即可启动Gocad程序。
2、选择New project建立新工程,给工程起个名字,选择路径在文件夹Project中,点击保存,打开下图:3、选择Select All,点击OK即可。
4、弹出选择工程单位窗口如下。
此处选择平面上单位是英尺(Feet),深度单位也是英尺(Feet);时间选择毫秒;深度方向选择向上为增大;z值是时间域或深度域,选择深度域(最终如下图)。
选择完后点击OK。
5、打开如下Gocad主窗口。
第二部分GOCAD数据加载一、地震数据加载以SEGY格式为例,加载三维地震数据选择File > Import objects >Seismic Data > SEG-Y 3D as Voxet。
在Data文件夹下选择文件“tornado.sgy”,点击OK即可加载,如下图。
二、井数据加载1、井位数据加载不同的数据格式有不同的加载方法。
以普通的文本格式为例,包括井名、x坐标、y坐标、补心海拔、井深等。
(1)加载方式是:File > Import objects > Well data > (path)Locations from column-based File ,在Data\Wells文件夹中选择文件“WellPaths”,接受默认,按next两次,打开下图:(2)对问题What information do you have for the path? 选择X-Y-TVDSS-MD。
下来的两个问题各选Feet和Use a Column。
GOCAD课件
GOCAD地质建模Gocad是以工作流程为核心的一款地质建模软件,达到了半智能化建模的世界最高水平,具有功能强,界面友好,易学易用,并能在几乎所有平台上(Sun, SGI, PC-Linux, PC-Windows)运行的特点。
以下通过一个简单的例子,说明GOCAD地质建模的主要过程。
第一部分 GOCAD的启动1、双击桌面上的Gocad启动图标,即可启动Gocad程序。
2、选择New project建立新工程,给工程起个名字,选择路径在文件夹Project中,点击保存,打开下图:3、选择Select All,点击OK即可。
4、弹出选择工程单位窗口如下。
此处选择平面上单位是英尺(Feet),深度单位也是英尺(Feet);时间选择毫秒;深度方向选择向上为增大;z值是时间域或深度域,选择深度域(最终如下图)。
选择完后点击OK。
5、打开如下Gocad主窗口。
第二部分 GOCAD数据加载一、地震数据加载以SEGY格式为例,加载三维地震数据选择File > Import objects >Seismic Data > SEG-Y 3D as Voxet。
在Data文件夹下选择文件“tornado.sgy”,点击OK即可加载,如下图。
二、井数据加载1、井位数据加载不同的数据格式有不同的加载方法。
以普通的文本格式为例,包括井名、x坐标、y坐标、补心海拔、井深等。
(1)加载方式是:File > Import objects > Well data > (path)Locations from column-based File ,在Data\Wells文件夹中选择文件“WellPaths”,接受默认,按next两次,打开下图:(2)对问题What information do you have for the path? 选择X-Y-TVDSS-MD。
下来的两个问题各选Feet和Use a Column。
GOCAD(外文资料) (10)
Stanford Exploration Project,Report80,May15,2001,pages1–616Iterative velocity model building for3-D depth migration byintegrating GOCAD and A VSRobert G.Clapp and Biondo Biondi1ABSTRACTWe have developed a procedure for building a3-D velocity model starting from a2-D geological model in order to image3-D poststack data.The3-D model was built using GOCAD,and it was iteratively refined by interpreting the result of3-D poststack depth migrations using A VS.At the beginning of the iterative process,when only few reflectors are detectable in the migrated cube,we interpret only one surface.From the deformations measured on the selected reflector we compute a displacementfield for every point in the model.The application of the displacementfield to the GOCAD model used for migration leads to an improved model.The migration of the data with this improved model shows better focusing of some reflectors and allows a more complete interpretation of the structure.INTRODUCTIONOne of the most crucial problems in imaging3-D seismic data is the determination of the velocity model.With the ever increasing speed of parallel supercomputers new options for defining and refining the velocity model are becoming possible.These new options take ad-vantage of the speed of these super computers to integrate time consuming operations such as migration,into an interactive and iterative processingflow(Wyatt et al.,1992;Jones,1993). Sheppard and O’Brien(1993)took advantage of these new options by creating a3-D veloc-ity model by performing depth migration,interpreting the resulting image,and refining the geologic model.In addition,improved visualization software has made3-D model building, viewing,and manipulating an easier task.Della Malva and Williams(1992)used GOCAD to combine a series of2-D velocity models into a3-D model.We blended elements of both of these methods in an attempt to obtain a good3-D velocity model for3-D poststack migration. We started with a2-D geologic model,along with the prestack and poststack3-D data sets in which initially very few reflectors were identifiable.We migrated the data with2.5-D model created in GOCAD.We then viewed the3-D cube using A VS and picked a series of surfaces on various slices of the cube parallel to the direction of the initial2-D geologic model.From this series of surfaces we created a2-D displacement net for the cube.Choosing a single surface and then extrapolating its changes in depth to the entire geologic model does not accurately 1email:not available12Clapp and Biondi SEP-80 describe geologic sedimentation and the time variant nature of the stressfield accompanying it.The methodology is not a badfirst approximation,and proved effective in improving the migrated image and the accompanying geologic model.BUILDING THE3-D GEOLOGIC MODELThefirst challenge was to convert the2-D AIMS geologic model into a3-D GOCAD model. AIMS modelAIMS creates its model by constructing a series of surfaces defined by numerous line seg-ments.These line segments are defined in an ASCIIfile by a pair of coordinates representing the beginning and end of the line segment.In addition to the coordinates,each line contains the number of the corresponding surface.The surfaces are chosen so that only one velocity is represented below them and that velocity is defined in a horizon call.An example of a portion of an AIMS2-D modelfile is presented below:HORI40,,4600.0BEG40,2310.374,1108.975END40,2331.748,1058.843BEG40,2331.748,1058.843END40,2355.868,1000.688BEG40,2355.868,1000.688END40,2378.594,956.565BEG40,2378.594,956.565END40,2499.702,889.8913-D Model in GOCADAs described in Berlioux(?)a GOCAD3-D model is defined by a series of surfacesfiles and a partitionfile.Each surfacefile is divided into two parts.Thefirst part contains a series of points(vertices in the GOCAD nomenclature)upon which the surface lies.The second section is devoted to constructing a series of triangles from the defined points in order to give the surface continuity in two-dimensions.Figure1illustrates a simple model constructed from the surfacefile defined below:SEP-80Velocity model building3Figure1:A simple GOCAD model.bob-gocad1[NR]VRTX10.000.000.00VRTX2 2.000.000.00VRTX3 2.00 2.000.00VRTX40.00 2.000.00VRTX5 1.00 1.00 1.00TRGL125TRGL235TRGL345TRGL415The partitionfile defines a series of domains bounded by the various surfaces.The domains can then be assigned properties such as velocity or density.The ConversionRather than converting the AIMSfile manually into a series of GOCADfiles it was decided to develop a procedure that would accomplish this task automatically.The conversion program was written in standard SEP-like format to better allow it to be integrated into future processing flows.The input is simply the AIMSfile,parameters defining the extension in the cross-line direction,and an option to create a free surface.The output is a series of.tsfiles(GOCAD extension for a surfacefile)corresponding to the surfaces described by AIMS.Once the initial AIMSfile has been run through the conversion routine it is a relatively simple matter to create the GOCAD model.Figure2represents the GOCAD model corre-sponding to the input AIMS geologic model.In order to run the CM-5migration program it is necessary to convert the GOCAD model to SEP format.Figure3represents a2-D slice of the resulting velocity model using the program described in Berlioux(1993).4Clapp and Biondi SEP-80Figure2:GOCAD model corresponding to input AIMS model.bob-gocad2[NR] ../bob/./Figs/gocad3.pdfFigure3:Gridding output based on initial AIMS model.SEP-80Velocity model building5REFINING THE GEOLOGIC MODELOnce the initial geologic model had been built,the task was to better describe the3-D nature of the area.The velocity model was used as input to a depth migration program on the CM-5 developed at SEP(Biondi and Palacharla,1993).The resulting cube was then viewed using A VS.A VS pickerDave Nichols has created an A VS network,and written a module for that network which enables the user to pick a polyline on a2-D image and write that polyline in a GOCAD pline format.In order to create the displacementfield,we chose a2-D slice of the data cube parallel to the geologic model(see Figure4),then chose a surface that was possible to identify on all/most of the2-D images.We picked the surface on the image and saved it in afile corresponding to the slice number.Part of the recorded plinefile for Figure4can be seen below:Figure4:Slice324of3-D migrated cube.bob-avs3241[NR]VRTX132.00000058.0000000.000000VRTX242.00000054.0000000.000000VRTX344.00000053.0000000.000000VRTX448.00000055.0000000.0000006Clapp and Biondi SEP-80VRTX551.00000058.0000000.000000VRTX656.00000060.0000000.000000VRTX759.00000063.0000000.000000VRTX862.00000065.0000000.000000VRTX965.00000068.0000000.000000VRTX1067.00000070.0000000.000000VRTX1170.00000072.0000000.000000...SEG12SEG23SEG34SEG45SEG56SEG67SEG78SEG89SEG910SEG1011...We then attempted to pick the same pline on another in-line slice in order to approximately quantify the changes in depth along the cross-line direction of the geologic model.Figure5 shows a second slice in the in-line direction,note the change in the surface approximately80% of the way down the image in comparison to the same surface on Figure4.Creating GOCAD model from series of plinesCreating the3-D GOCAD model from the series of2-D plines was a two-step process.The first step was to create a2-D displacementfield.The displacementfield was created by:first, reading in the series of vertices making up the various plines,then resampling in the in-line direction using linear interpolation between the points,andfinally,subtracting the resampled values from a baseline corresponding to the original2-D geologic model.The corresponding displacement net is specified by a user defined density parameter in the in-line direction and by the number of slices of the3-D cube in which plines were chosen in the cross-line direction. It was not necessary to resample in the cross-line direction due to the combination of GOCAD and the gridding program doing the same linear interpolation as the program performs in the in-line direction.Once the2-D displacement net has been created,Figure6,the net is used to construct the same series,and in virtually the same manner,the.tsfiles constructed in the original2.5-D GOCAD model.Figure7represents the GOCAD model derived from the displacementfield shown in Figure6.Even though the initial data quality was poor,and the re-migrated image far fro m ideal (Figure8),the image does appear to be improved compared to the corresponding slice mi-grated with the initial2.5-D velocity model,Figure4.The improvement is especially notice-able in the middle of the image where an anticline has become better focused.SEP-80Velocity model building7Figure5:Slice220of3-D migrated cube.bob-avs220[NR]../bob/./Figs/displacement1.pdfFigure6:2-D displacement net.8Clapp and Biondi SEP-80Figure7:GOCAD model constructed from initial displacementfield calculations. bob-gocad4[NR]Figure8:Slice324of migrated cube with3-D velocity model.bob-avs3242[NR]SEP-80Velocity model building9CONCLUSIONSBy creating a2-D displacement net and applying it to the geologic model,the3-D poststack migration image did show some improvement.The velocity model could be further improved by re-choosing the surface on the series of2-D slices.The improved quality of the velocity function should enable a more consistent and improved picking,further enhancing the quality of the3-D model.Further,once the surfaces become more apparent in the migrated image,ex-tending the displacementfield into the third dimension by picking two or more surfaces might help improve the results and better approximate the true nature of sedimentation variation with time.In addition velocity inside the model could be better defined by intergrating geophysical data derived from such source as velocity analysis.ACKNOWLEDGEMENTSWe would like to thank Husky Oil for providing the dataset,and in particular Fred Kierulf with Husky Oil,for his enthusiastic support.At SEP,we are indebted with Arnaud Berlioux for the numerous hours spent explaining GOCAD and his gridding program,and Dave Nichols for explaining some of the intricacies of A VS and his network.REFERENCESBerlioux,A.,1993,3-D grid with GOCAD:SEP–79,301–318.Biondi,B.,and Palacharla,G.,1993,3-D wavefield depth extrapolation by rotated McClellan filters:SEP–77,27–36.Jones,I.F.,1993,3-D velocity model building via iterative one-pass depth migration:63rd Annual Internat.Mtg.,Soc.Expl.Geophys.,Expanded Abstracts,974–977.Malva,R.D.,and Williams,M.C.,1992,3-D model construction of overthrust geology for structural imaging of seismic by migration:62nd Annual Internat.Mtg.,Soc.Expl.Geo-phys.,Expanded Abstracts,1255–1256.Sheppard,F.,and O’Brien,M.,1993,Iterative3-D post stack depth migration:An interpretive seismic imaging tool:3-D Seismology:Integrated Comprehension of Large Data V olumes, SEG Summer Research Workshop,Technical Program and Abstracts,124–.Wyatt,K.D.,Towe,S.K.,Layton,J.E.,Wyatt,S.B.,von Seggern,D.H.,and Brockmeier, C.A.,1992,Ergonomics in3-D depth migration:62rd Annual Internat.Mtg.,Soc.Expl. Geophys.,Expanded Abstracts,944–947.。
gocad教程
.GOCAD综合地质与储层建模软件简易操作手册美国PST油藏技术公司PetroSolution Tech,Inc.目录第一节 GOCAD综合地质与储层建模软件简介┉┉┉┉┉┉┉┉┉┉┉┉┉┉1一、GOCAD特点┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉1二、GOCAD主要模块┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉1 第二节 GOCAD安装、启动操作┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉2一、GOCAD的安装┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉2二、GOCAD的启动┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉3 第三节 GOCAD数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉5一、井数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉5二、层数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉11三、断层数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉11四、层面、断层面加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉12五、地震数据加载┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉12 第四节 GOCAD构造建模┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉13一、准备工作┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉13二、构造建模操作流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉14三、构造建模流程总结┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉40 第五节建立GOCAD三维地质模型网格┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41一、新建三维地质模型网格流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41二、三维地质模型网格流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉41三、三维地质模型网格流程总结┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉47 第六节 GOCAD储层属性建模┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48一、建立属性建模新流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48二、属性建模操作流程┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉48三、属性建模后期处理┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉66四、网格粗化┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉74 第七节 GOCAD地质解释和分析┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉78GOCAD综合地质与储层建模软件操作手册第一节GOCAD综合地质与储层建模软件简介Gocad是国际上公认的主流建模软件,在众多油公司和服务公司得到了广泛的应用。
gocad
A GOCAD Object file consists of three parts: the Header, the Body and the End marker. A GOCAD Object file may also containused to call up the correct GOCAD Object Reader when the file isvalues, which include the0.44704*meters/seconds0.3048*meters/seconds0.3048*seconds*metersRestrictions: at most one scalar in front, at most one division.A.2 ObjectThe Object file elements define the Object style and the Object coordinate space and Units. Style AttributesThe HEADER block, delimited by {and}, contains the Style definition. Each line defines an Attribute of an Object. Attributes are strictly optional, except for the name of the Object. An Object must have a name.If preferred, an Attribute can be given on a separate line outside of the HEADER block; in that case the line should begin with the HDR keyword as shown in Example 3 (page 4).An example of Object Style element is:A.2.1 Coordinate SystemThe Object Coordinate System paragraph is optional for allobjects. If the paragraph is not present, the object is loaded inthe default coordinate system in the current session.The coordinate system description must be given after theHEADER block and before any other keyword giving the geometryof the object such as VRTX, PVRTX, ORIGIN, AXIS ....The Coordinate System must be given as follows:GOCAD_ORIGINAL_COORDINATE_SYSTEMNAME nameAXIS_NAME name_u name_v name_wAXIS_UNIT unit_u unit_v unit_wZPOSITIVE keywordEND_ORIGINAL_COORDINATE_SYSTEMIt is imperative that the Coordinate System definition is enclosed between the keywordsGOCAD_ORIGINAL_COORIDNATE_SYSTEM and END_ORIGINAL_COORDINATE_SYSTEM.The NAME and AXIS_NAME values are information string which gives the name of the local object coordinate system and its axes. The values must be specified by strings of characters enclosed in double-quotes, i.e. AXIS_NAME "X" "Y" "Z" or AXIS_NAME "X" "Y" "T"The AXIS_UNIT specifies the unit for each axes. The axis unit for the U and V axes must be identical, the axis unit for the W axis can be different from the unit of the U and V. It is possible to define units as AXIS_UNIT "m" "m" "m" or AXIS_UNIT "m" "m" "ft" but a definition such as AXIS_UNIT "m" "ft" 'km" is invalid. The AXIS_UNIT values must be specified by strings of characters enclosed by double-quotes.The ZPOSITIVE value indicates the direction of the Z axis. The values allowed for the keyword after ZPOSITIVE are either Depth (Z is increasing downwards) or Elevation (Z is increasing upwards)The coordinates are read in double precision converted to simple precision after coordinate system conversion. When an object is loaded into Gocad, its local coordinate system is compared with the current global coordinate system: if needed, the object geometrical coordinates are converted internally. When the coordinates are displayed, for example, for a picking in the 3D camera, the coordinates displayed are in the session coordinate system. When the object is saved back to a stand alone file, its geometrical coordinates are restored in its original coordinates system.A.3 AtomicThe Atomic data format defines the points, locations and Property values, of an Atomic (currently, this includes PointsSet, Curve, Surface, Solid and GShape). The Atomic inherits all of the Object file format elements, plus Atomic data.A.3.1 AtomicThis section describes the recommended Atomic file format.Since Property values are optional, a basic Atomic data line consists of three parts: Type, ID number, and data: VRTX ID X Y Z [CN]where the XYZ describes the location of that point. Additional information maybe attached at the end of each VRTX line to specify the Interpolation Restriction on that Atom (Control Node information).For example:A.3.1.1 Properties definitionIf there are Properties, they must bedeclared after the HEADER block andbefore the first point data line as:PROPERTIES Pname1 Pname2...PROPERTY_CLASSES class_name1class_name2 (optional, but if youdeclare one, you must declare all)UNITS unit1 unit2...(optional, but if youdeclare one, you must declare all)NO_DATA_VALUES v1 v2...(optional,but if you declare one, you mustdeclare all)ESIZES esize_1 esize_2... (optional, but if you declare one, you must declare all)The PROPERTIES line list all the properties that will be attached to the point. The ordering of the properties on the line correspond to the ordering of the properties values associated to the point definition.The PROPERTY_CLASSES line lists the property class names for each property defined in the PROPERTIES list. If one property class must be listed all property classes must be listed.The NO_DATA_VALUES line lists the no-data-values for each of the property defined in the property list. For vectorial properties, there is only one no-data-value and each property vector element should be equal to this value if it is to be treated as a no-data-value vectorial property.The UNITS line lists the units for each of the property defined in the property list (See Units for format specification of Units).The ESIZES line lists the dimension of each property defined in the property list. By default the dimension of a property is 1, but for example a property representing a 3D vector will be of dimension 3. For example. if you have a set of points with a 1 dimensional property (called "porosity") and a 3D vectorial property called "throw", the definition of the properties and one point will look like:PROPERTIES porosity throw ESIZES 1 3 PVRTX 1 X Y Z porosity_value throw_x throw_y throw_zwhere throw_x, throw_y and throw_z are the three components of the throw vector at the specified location.A.3.1.2 Point location and properties definitionThe data line which defines a point location and its properties look likes:PVRTX ID X Y Z PV1 PV2...where PV1, PV2... are Property values. For example.A.3.2 Parts (Subset)An Atomic Object can have its VRTXgrouped into subsets. In a VSet, the keywordis SUBVSET; in PLine, it is ILINE; in TSurf, itis TFACE; and in TSOLID, it is TVOLUME.A.3.3 Atomic-Old from C-GOCADThis section describes an older Atomicformat, mainly made to be compatiblewith C-GOCAD file format.The format consists of two sections, thelocation section and the Propertysection. The Property section isoptional.The location section is identical to thenew format:VRTX ID X Y ZThe Property value section contains a header and the list of Property values associated to a point defined in the previous section. The header defines the names of the DataPack Fields (Properties) associated with the Atomic. The following example Example 5 (page 8)declares three properties.FIELDS Pname1 Pname2(or PROPERTIES Pname1 Pname2...)PROPERTY_CLASSES class_name1 class_name2 (optional, but if you declare one, you must declare all)UNITS unit1 unit2...(optional, but if you declare one, you must declare all)NO_DATA_VALUES v1 v2...(optional, but if you declare one, you must declare all)ESIZES esize_1 esize_2... (optional, but if you declare one, you must declare all)The Property section define, for each point defined in the location section, the Property values associated with the Atomic's DataPackFields.REC ID1 ID2 PV1 PV2...Associated with a REC definition are two identifiers needed to be specified for compatibility reasons with earlier version. The two identifiers must be identical.An example of a Object file identical to the one given in Example 5 (page 8), but in this old data format is given below:.A.4 TSurf (Surface)The data file of a TSurf includes the inherited file elements of a Object and of an Atomic. The Atoms (Vertices) of the TSurf must be defined before the triangles.A.4.1 Geologic InformationBefore defining vertices and triangles, geologic information can be given.Geological information consists of GEOLIGICAL_TYPE, GEOLOGICAL_FEATURE and STRATIGRAPHIC_POSITION.The geological type of a TSurf can be specified using the following format:GEOLOGICAL_TYPE geological_type_namewhere geological_type_name can be one the following: top, intraformational, fault, unconformity, intrusive, topography, boundary, and ghost. The information is used during layer construction.The stratigraphic position is specified as follow:STRATIGRAPHIC_POSITION age timewhere age is the name of a stratigraphic unit. time is the numerical value of age (35000, etc.). This information is used during layer computation.The geological feature is specified as follow:GEOLOGICAL_FEATURE geologic_feature_namewhere geologic_feature_name is the name of the geologic feature that the surface represents. This information is used to associate surface to well markers (the geologic feature should have the same name than the well marker). A.4.2 TrianglesTriangles definition must occur after vertices definitions. Each Triangle is then defined by its three Vertices (Atoms) in the following format:TRGL id1 id2 id3where ids are the IDs of the already-defined Atoms (Vertices). For example, the ascii file corresponding to a TSurf named SQUARE, containing four vertices, and two triangles is shown in Figure1.A.4.3 Special Points: VRTX vs. ATOMIn addition to the VRTX or PVRTX point/vertex descriptor find in the Atomic format definition, on can find the additional line inside a TSurf ascii file:ATOM id1 id2 (where id1 > id2)where id1 is the index of the new ATOM and id2 is the index of the already existing VRTX node which XTZ this Atom shares.The goal of the ATOM keyword is to create a new ATOM but which shares an already existing vertex. An Atom node has its one Property values but it is spatially linked to the existing VRTX node. In other word, an ATOM and its referenced VRTX are collocated, but not connected. Triangles construction will use the vertex id or the atom id.An example of the use of such Atom record is given below:The input Tsurf file on the left will create a Surface shown at the center. The Surface has two TFaces, because two Triangles need to share an edge to be considered connected. When the Surface is saved, GOCAD will output the file on the right. It recognizes that the two Triangles both have one vertex at an identical location, but topologically, they can not be the same point. So, GOCAD creates a new point, ATOM 6, that shares the identical location of VRTX 3, but is an independent point in the sense that it has its own Property values (not in this case). However, had you have two more triangles in your input file, TRGL 2 4 3 and TRGL 6 5 1, the ATOM line would not have been created because the four triangles are then connected through direct or indirect edge-sharing.A.4.4 Parts/TFaceThe TFACE keyword is proposed to ensure identical indexing of the VRTX every time you save an Surface whose mesh you have not modified.In Figure2 the file on the right (the one output by GOCAD) not only has the extra ATOM line, it also two TFACE lines to separate VRTX (and ATOM) and TRGL from different TFaces. They arecurrently commented out for their full implementation is still to be determined by the GOCAD Committee.GOCAD will accept the simpler format shown on the right of Figure2 (where all the triangles and VRTX definition of all parts are all merged into one block) but will output the file shown on the right of Figure2.A.4.5 BordersAn edge of a TSurf can be a single piece or can be divided into multiple pieces. Each piece is called a Border, and it is separated from its neighboring Border by a Border Extremity. A Border Extremity is a designated node (VRTX, ATOM) on an edge of a TSurf that separates two Borders.Borders definition should appear at the end of the TSurf file format, in the format shown below:BSTONE atom_vrtx_idBORDER border_id bstone_id_1 bstone_id_2The BSTONE line defines an ATOM/VRTX as a Border Extremity.The BORDER line defines the border, border_id, as starting at vrtx_id1, which must have been declared as a Border Extremity in proceeding BSTONE lines, and continuing in the direction of vrtx_id2, which must be adjacent to vrtx_id1 (this border ends when it runs into another Border Extremity).The Border Extremities are always included in the list of points along the border.A.5 PLine (Curve)The Ascii PLine format inherits from the Object and from the Atomic formats. As for the TSurf, geologic information can be specified (See Geologic Information (PageA10)). For PLine geologic feature is used to relate multiple PLine to the same horizon.The Atoms of the Lines must be defined first. Each Segment in the PLine is then defined by its 2 apices in the following format:SEG id1 id2where ids are the IDs of the already-defined Atoms.For example, the ascii file corresponding to he PLine represented in Figure3 may look like:If no segments information is given, the atoms are assumed to form an open line, from the first atom to the last atom in the file order.If the PLine is composed of multiple parts, the parts can be combined or can be separated into ILines (or Isolated Lines). Each ILine is separated by a ILINE keyword and each ILine specify its own points and segments. In the same manner as for the TSurf, an ILINE keyword is proposed to ensure identical indexing of the VRTX every time you save a line which topology has not modified.A.6 TSolid (Solid)The Ascii TSolid format inherits from the Object and from the Atomic formats. The Atoms of the Atomic must be defined first. Each Tetrahedron in the Solid is then defined by its 4 apices in the following format.: TETRA id1 id2 id3 id4where ids are the IDs of the already-defined Atoms.For example, the ascii file corresponding to he Solid represented in Figure4 may look like:If the TSolid is composed of multiple parts, the parts can be combined or can be separated into TVolumes (or Tetrahedralize volumes). Each TVolume is separated by a TVOLUME keyword and each TVolume specify its own points and tetrahedras.[DIP azimuth dip][NORM X Y Z][MREF horizon_name][UNIT >rock_layer_name]Additional information (between [and]) can be attached to each Marker. This extra information includes the orientation (given as DIP or NORM) of the Marker, the Marker Reference Horizon (currently not utilized by GOCAD) and the Rock Unit (currently not utilized by GOCAD).The DIP information is given in Grads.What are Grads? It is an ancient French measurement of angles; there are 100 grads in a right angle (as opposed to 90 degrees in a right angle).The NORM information is always given in XYZ, representing the normal vector of the Marker. This is the preferred representation for Marker orientation (this is the way GOCAD will output Marker orientation information, instead of DIP).The optional information can be on the same line as the marker itself, or on lines that immediately follow the marker ascii code (MRKR).New WellMarker dip specificationsDIP angles are to be given in Grads, which is not a unit a lot of people are familiar with. GOCAD introduced a new dip specification DIPDEG where the two angles are given in degree.DIPDEG azimuth dipA.7.3 WellCurvesThe WellCurves section consists of two parts, the WellCurve Header section and the WellCurve Internal Data section. The header section defines the format of the Well Curves. The WellCurve data can be given in the same file, or in an external binary or ascii file.External Binary Data DeclarationIf the WellCurve data are stored in an external binary file, you must provide the name of the file, before any WellCurve Header information, using the following statement:BINARY_DATA_FILE filenameThe above statement gives the name of the binary file in which Well Curves are stored as a series of Z (measured depth) values and data values:P1Z1, P1Z2,...,P1Z20, P1V1, P1V2,...P1V20, P2Z1, P2Z2,...,P2Z12, P2V1, P2V2,..., P2V12, P3Z1,...etc.External ASCII Data DeclarationIf the data are stored in an external ASCII file, you must provide the following information before any WellCurve Header information:ASCII_DATA_FILE filenameDEPTH_COLUMN indexNCOLUMNS ncolNROWS nrowThe data are read in as a matrix of floating-point numbers and records are separated by blanks. The dimension of the matrix is defined by NCOLUMN and NROWs.Each column is a Property and NROWS specifies the number of data points per Property. The DEPTH_COLUMN specifies which column contains the measured depth data, which also means that in the external ASCII format, different Properties must all have data values at the same measured depth point.For example, the following file, named AsciiExample.wl.dat,P1V1 P2V1 P3V1 Z1 P4V1P1V2 P2V2 P3V2 Z2 P4V2P1V3 P2V3 P3V3 Z3 P4V3.....P1200 P2V200 P3V200 Z200 P4V200should be specified asASCII_DATA_FILE AsciiExampleDEPTH_COLUMN 4NCOLUMNS 5NROWS 200WellCurve HeaderEach WellCurve is defined inside a block beginning with WELL_CURVE and ending with END_CURVE. The format of the header is:NPTS nptsThis information will be used to read npts z values and npts data values from the binary file starting at Byte position seekpos. See Well with an External Binary Data File Example.A.7.4 Single Well File ExampleThe first example is a well file that includes the WellCurve data:A.7.5 Well with an External Binary Data File ExampleThe second example is a well with the WellCurve data stored in the external binary file described in External Binary Data Declaration:A.7.6 Well with an External ASCII Data File ExampleThe third example is a well with the WellCurve data stored in the external ASCII file described in External Binary Data Declaration:A.8 Grid3d or VoxetA Voxet is a rigid 3D Grid Object; it can carry multiple Properties. A Property in a Voxet is often referred to as a grid3d. It is derived from the Object Class.A common confusion comes from not realizing that UVW can mean the (i,j,k) indexing of the Voxet Nodes, but it can also mean the coordinate system in which the Voxet resides.In addition to its inherited Object file elements, a Voxet is further defined in two parts: the header section, which defines the geometry, and the grid3d sections which defines the Properties (grid3ds) and the Region section (which gives Region storage and Region information). Each Property in the Voxet has its own grid3d section that defines the Property and Property values.A.8.1 Geometry SectionUVW Coordinate System and Voxet DimensionAXIS_V, AXIS_W are required definitions. They define the coordinate system of the Voxet: represents the origin of the Voxet coordinate system, not the Voxet the origin.).For example, in Seismic AXIS_U represents typically the time or depth axis. An example will be: AXIS_U 0. 0.0004 (in A common confusion comes from not realizing that this set of vectors, AXES_OUVW, only defines the UVW coordinateThe upper two are the most common cases; i.e. the AXES UVW either define the entire volume dimension or they define a cell dimension. When GOCAD outputs a Voxet file, it uses the upper most format; i.e. the UVW axes define the entire volume.REGION region_name region_bit_marker_position_number (must be less than number_of_bits) An example of an Voxet ASCII file with Region information is given below:....AXIS_N 10 10 10FLAGS_ARRAY_LENGTH 1000FLAGS_BIT_LENGTH 10FLAGS_ESIZE 2FLAGS_OFFSET 0FLAGS_FILE v1__flags@@REGION RegionExample 6REGION HighPorosity 7REGION LowPerm 8REGION BadBuy 9ENDA.8.3 Grid3d/Property SectionThe grid3d section defines the property. Currently, Region information must be given before Property information.For each property there is a unique identifier, id, which is used to relate different Property statements to the same Property. The data can be in an external file in a binary format, or inside the file in ascii format.For each Property, the declaration must be the first line (PROPERTY id "property name") and the Property file name (PROP_FILE id filename) or data (DATA) must be the last line.PROPERTY id "property name"PROPERTY_CLASS id "property-class_name"PROP_UNIT id "unit"PROP_LEGAL_RANGE id min max (where min/max is a float or **none**PROP_SAMPLE_STATS id n x x2 min maxPROP_NO_DATA_VALUE id valuePROP_SAMPLE_STATS id n x x2 min maxPROP_ETYPE id data_type (either IEEE or IBM)PROP_FORMAT id file_format (either RAW or SEGY)PROP_ESIZE id element_size (either 1 or 4)PROP_FILE id filenamePROP_OFFSET id offsetDATAPROP_OFFSET indicates that the array of float value begins at the given offset (in bytes, = number of data points x PROP_ESIZE) in the PROP_FILE.PROP_ETYPE specifies the type of floating point value that is in the file. It can be IBM floating point value or IEEE floating point value.PROP_FORMAT specifies the format of the file. SEGY format implies that the data resides in a standard SEGY file. RAW specifies that the data is formatted as a C array where the fast axis is the Axis_U.The token DATA, if present, indicates that the Property data is to be read following that token. If this is the case, the floating point array of data must be in ascii RAW format.A.8.4 ExampleAn example of a Voxet file with an external Property file:GOCAD Voxet 0.01AXIS_O 2128403. -79200. 0.AXIS_U 0. 0. 55.AXIS_V 0. 220. 0.AXIS_W 220. 0. 0.AXIS_MIN 0.0 0.0 0.0AXIS_MAX 549. 227. 149.AXIS_N 550 228 150AXIS_D 1. 1. 1.AXIS_NAME "Z" "Y" "X"AXIS_UNIT "m" "m" "m"AXIS_TYPE even even evenPROPERTY 1 "Seismic"PROP_UNIT 1 " "PROP_ESIZE 1 4PROP_ETYPE 1 IEEEPROP_FILE 1 /tmp/seismic.nohdrA.9.1 Header SectionREGION_FLAGS_ARRAY_LENGTH length_of_the _array REGION_FLAGS_BIT_LENGTH number_of_bits (at least 1greater than the number of Regions) REGION_FLAGS_ESIZE number_of_bytes (should equal (number_of_bits+1)/8rounded up) REGION_FLAGS_OFFSET offset_inside_the_binary_file_for_the_first_data_point REGION_FLAGS_FILEbinary_file_name (values in the file increase first in U, then V, then W)An example of an SGrid file with Region information is given below:AXIS_N 41 21 31.....FLAGS_FILE MySGrid__flags@@REGION Reg_top_1 0REGION Reg_1_2 1REGION Reg_2_bot 2REGION Facies_Region_1 3REGION Facies_Region_2 4REGION Facies_Region_3 5REGION Facies_Region_4 6REGION Facies_Region_5 7REGION Facies_Region_6 8REGION BM_Inactive_Region 9REGION_FLAGS_ARRAY_LENGTH 26691REGION_FLAGS_BIT_LENGTH 10REGION_FLAGS_ESIZE 2REGION_FLAGS_OFFSET 0REGION_FLAGS_FILE MySGrid__region_flags@@PROPERTY 1 "Geol_Facies_1"PROPERTY_CLASS 1 "facgm".....A.9.3 Property SectionThe Property section defines the property at each node. Currently, Region information must be given before Property information. Each Property has its unique identifier, id, which is used to relate different Property statements to that Property. The data can be in an external file in a ascii or binary format.For each Property, the declaration must be the first line (PROPERTY id "property name") and theProperty file name (PROP_FILE id filename) or data (DATA) must be the last line.The definitions of the Property format is identical to Voxet. Please see Grid3d/Property Section (PageA31).PROPERTY id "property name"PROPERTY_CLASS id "property_class_name"PROP_UNIT id "unit"PROP_LEGAL_RANGE id min max (where min/max is a float or none)PROP_NO_DATA_VALUE id valuePROP_SAMPLE_STATS id n x x2 min maxPROP_ETYPE id data_type (must be IEEE, IBM, or SEGY)PROP_ESIZE id element_size (either 1 or 4)PROP_FILE id filenamePROP_NO_DATA_VALUE id no_data_valuePROP_OFFSET id offsetDATAThe fast axis is Axis_U. The data are specified as a C array.If the SGrid is cell-centered the size of the point array will be NX*NY*NZ but the size of the Property arrays will be (NX-1)*(NY-1)*(NZ-1).A.9.4 Ascii External FileThe geometry and the properties can both be read from an ASCII data file. First this file must be specified in the header as follows:ASCII_DATA_FILE filenameThe format of that file is:x y z p1 p2 p3... flag u v wwhere x, y, z specifies the location of that node; p1, p2, p3,... are the Property values at that node; flag specifies the connectivity flag of that node; and u, v, w specifies the index of the node.A.9.5 Split NodesIntroductionA node is a corner of a cell that is usually shared between 8 cells except when a fault affect this area (and on theborder where less cells are available).Faulting introduces split nodes.The ascii or binary file describing the geometry contains one x,y,z location. When a grid is faulted the nodes affected by the faulting have several x,y,z ; additional x,y,z information (the first one is in the ascii or binary file describing the geometry) is stored in the SGrid header file (usually defined with the extension ?s .sg ?t). The following set of examples are linked with the following SGrid depicted in Figure10FormatHere is an example of split node description :SPLIT 59 19 3 -225.76 177.902 1407.1 36 1 0 0 0 1 0 0 0 1This corresponds to the following information :SPLIT U V W X Y Z id Cell(u,v,w) Cell(u-1,v,w) Cell(u,v-1,w) Cell(u-1,v-1,w), Cell(u,v,w-1) Cell(u-1,v,w-1) Cell(u,v-1,w-1) Cell(u-1,v-1,w-1)This split node is attached to the grid regular node U V W. The first occurrence of a split node U V W means that the regular node is split. There can be up to 7 SPLIT lines per U V W.All the Cell(u,v,w) are boolean values (0 or 1).If Cell(u-1,v-1,w) is equal to 1, then this node (SPLIT) is a corner of the Cell(u_1,v-1,w).Remark : when a node is on the external border of the grid, it does not have 8 neighbor cells. For the missing cells the boolean value is set to 1Split FaceNodes are split along faces. When a face is split, split faces can be gathered in FaceSets. A FaceSet is described as: FACET_SET name number_of_faces cell_uvw_1 face_dir_1.... cell_uvw_2 face_dir_2where cell_uvw represents the cell number (U+V*NU+W*NU*NV) and face_dir is the face indicator (U=0, V=1, W=2).A.9.6 ExamplesA.9.6.1 External Binary filesAn example of an SGrid with one Property and external binary files (lines that start with an * are optional Attribute lines):GOCAD SGrid 0.01HEADER {name:s3}AXIS_N 32 32 32PROP_ALIGNMENT CELLSPOINTS_OFFSET 0POINTS_FILE s3__points@@FLAGS_OFFSET 0FLAGS_FILE s3__flags@@PROPERTY 1 "SGS_simulation_1"PROPERTY_CLASS 1 "porndx"PROP_UNIT 1 nonePROP_SAMPLE_STATS 1 62883 0.24624 0.000661522 0 0.415PROP_ESIZE 1 4PROP_ETYPE 1 IEEEPROP_ALIGNMENT 1 CELLSPROP_OFFSET 1 0PROP_FILE 1 s3_SGS_simulation_1@@ENDA.9.6.2 External Ascii FileBelow is the header file for the SGrid with one property.GOCAD SGrid 0.01 HEADER { name:s3 *painted:on } AXIS_N 32 32 32 PROP_ALIGNMENT CELLS ASCII_DATA_FILE s3__ascii@@ PROPERTY 1 "SGS_simulation_1" PROPERTY_CLASS 1 "porndx" PROP_UNIT 1 nonePROP_SAMPLE_STATS 1 29791 0.247145 0.000618586 0.154 0.414999 PROPERTY_CLASS_HEADER 1 "porndx" {*low_clip:0.183077 *high_clip:0.311214 *pclip:99 } ENDBelow are the first lines off an ASCII external file* * X Y Z SGS_simulation_1 Flag I J K * 145745 9416230 -3458.3147 0.229000002 1031 0 0 0 145995 9416230 -3459.58105 0.229790032 1039 1 0 0 146245 9416230 -3460.82251 0.229000002 1039 2 0 0 146495 9416230 -3462.18555 0.228938624 1039 3 0 0。
第3讲真三维GIS软件GOCAD介绍
复杂断层、地层面构建 地层面经常受断裂切割而不连续,在构建面时, 还要受不规则边界控制,相对于DEM表面的构 建,要复杂得多.
图9.3 TIN表面示意图
地层表面模拟
复杂表面的建立,要使用智能化向导工具WIZARD 生成.
演示复杂表面的生成.13FaultCurves.pl和 13toppart.vs
面的属性传递,非常重要,否则三维GIS 就没有什么意义.
两种属性联合显示 操作.32TargetSand.ts
实体切SOLID切片, 但是voxet和sgrid有切片功能
Channel:is a set of points connected by segments, with a cross-section (profiles) at each of its points;
modeling, since most of the structural features are 2dimensional, such as horizons, faults, unconformities, etc.
如何生成 1.从点集(内部无间隔)生成,操作. 2.从封闭线生成(内部无间隔).操作. 3.封闭面生成.先从两个面建model3D,然后生 成实体,从实体边界构建封闭面. 封闭面可以作为透镜体.操作.21objects.mx 4.从built in forms生成闭合面.隧道生成. 5.复杂的面(内部间隔),需要通过WIZARDS生 成. 6.从WELL的MARKS生成.(详见WELLS)
文件管理:
对象文件:点,线,面,体,隧道, 模型分离,同一对象下可以有多个 同类型文件.操作.
工程文件:不同对象类型文件混合 存储.操作.
脚本文件:操作过程存为脚本,记 录文件和操作过程.操作.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GOCAD地质建模Gocad是以工作流程为核心的一款地质建模软件,达到了半智能化建模的世界最高水平,具有功能强,界面友好,易学易用,并能在几乎所有平台上(Sun, SGI, PC-Linux, PC-Windows)运行的特点。
以下通过一个简单的例子,说明GOCAD地质建模的主要过程。
第一部分 GOCAD的启动1、双击桌面上的Gocad启动图标,即可启动Gocad程序。
2、选择New project建立新工程,给工程起个名字,选择路径在文件夹Project中,点击保存,打开下图:3、选择Select All,点击OK即可。
4、弹出选择工程单位窗口如下。
此处选择平面上单位是英尺(Feet),深度单位也是英尺(Feet);时间选择毫秒;深度方向选择向上为增大;z值是时间域或深度域,选择深度域(最终如下图)。
选择完后点击OK。
5、打开如下Gocad主窗口。
第二部分 GOCAD数据加载一、地震数据加载以SEGY格式为例,加载三维地震数据选择File > Import objects >Seismic Data > SEG-Y 3D as Voxet。
在Data文件夹下选择文件“tornado.sgy”,点击OK即可加载,如下图。
二、井数据加载1、井位数据加载不同的数据格式有不同的加载方法。
以普通的文本格式为例,包括井名、x坐标、y坐标、补心海拔、井深等。
(1)加载方式是:File > Import objects > Well data > (path)Locations from column-based File ,在Data\Wells文件夹中选择文件“WellPaths”,接受默认,按next两次,打开下图:(2)对问题What information do you have for the path? 选择X-Y-TVDSS-MD。
下来的两个问题各选Feet和Use a Column。
点击下一步,出现下图窗口,(3)对各个参数,用Column number后的选择对应的列(参考下图),点击OK即可加载。
2、测井曲线加载:以las格式为例,选择File > Import objects > Well data > (Logs) LAS,出现下图。
在文件夹Data\Wells中选择s到s的所有文件。
点击OK。
3、井分层数据加载:以文本格式为例,数据可以包含井名、分层名、深度以及倾角和方位角等。
选择File > Import objects > Well data > (Markers) Column-based File。
在文件夹Data\Wells 里选择文件“WellMarkers”,点击两次默认next,选择分层测量深度(yes),点击下一步。
选择有方位角和倾角,以及Dip_Azimuth(如下图),点击下一步。
如果有一个marker已经存在,选择overwrite it,点击下一步,得到下图:参考下图选择对应的列,然后点击OK,即加载完成。
第三部分 GOCAD构造建模的建立1、在主窗口左侧选择,单击右键,选择新建(New),创建一个构在建模的工作流程。
输入一个流程名字。
点击OK。
如下图,再点击Next,准备添加构造建模所需要的数据。
2、点击下一步,出现下图:依次选择深度depth;不添加断层数据,选No;添加层数据,选Yes。
出现下图:3、选择A1到B3所有层(如上图所示),点,再点击OK。
4、接下来提示是否定义工区范围,选择Yes;是否用地质层序分层,选择No。
点击Next。
7、开始定义工区范围(感兴趣区域),选择Next。
定义工作区域分两种方式:一种是默认方式,一种是高级方式。
选择高级定义方式,如下图,按Next。
定义平面工区范围,分六种方式:一是通过原点和矢量方向定义;二是用已经存在的线;三是手工画工区;四是利用地震体定义;五是利用其他数据体的的轮廓界面;六是利用数据的外部凸起边界。
选择第三种,手工画线的方式定义工区,按Next。
选择所有层数据,让其在3D显示区中显示出来,点击图标,从顶部俯视层,以便于画工区范围线。
选择Draw polygonal curve图标,鼠标在3D显示区中变成+号,用左键点击画工区范围线,点击鼠标右键结束编辑。
如果画的不是很满意,可以重画,自动删除上次画的线。
也可以编辑线和节点。
8、点击两次下一步,开始定义纵向工作范围。
再点击下一步。
将所有层数据选中显示出来,点击Set north view图标,分别点击顶底范围选择图标,鼠标变成+号,选择3D显示区中的顶底线,拖动到正确的位置即可。
或者输入适当的数值。
最后点击 Create/re-create volume of interest,定义工区范围完毕。
点击进入下一步。
9、再点下一步,回到主窗口,开始层模型的建立,如下图。
10、点击下一步。
出现如下界面,将所有层数据显示出来,点击 Build horizon surfaces 图标,建立层面,点击下一步。
可以选择质量控制和编辑数据,对错误的数据进行修改,重新再做层面。
此处请再点击下一步。
11、进入用井分层约束层面步骤:点击下一步,出现:依上图选择。
然后检查吻合程度,点击 Cumpute well marker mismatch,弹出新窗口。
输入纵向上的约束范围,超过这个范围的分层数据将不参加约束计算。
点击 Disable well markers with error more than,最后点击Close关闭窗口。
返回上个窗口点击下一步。
接下来用井分层约束层面。
点击下一步。
进入窗口:选择所有层面和井数据。
点击 Define wells area of influence 定义平面约束范围,弹出新的窗口,输入范围值,点击OK返回。
点击 Compute error map 计算偏差图。
最后点击Fit to well markers。
点下一步返回主窗口。
12、检查修改层面间的相互交叉关系。
点击下一步。
选择 Check crossings between horizons 检查,如果两层之间有交叉,前面显示红色的×号,如果没有交叉显示绿色的对号。
如果有交叉,输入两层间最小厚度值,按Remove crossings between horizons 即可去掉交叉部分。
点击下一步返回主窗口。
至此,构造模型建立完毕。
总结:构造建模流程共分以下几步:1、添加断层和层数据;2、定义工区范围;3、断层面模型建立;4、层面模型建立;5、井分层约束断层面;6、修改断层之间的接触关系;7、修改层面与断层之间的接触关系;8、用井分层约束层面;9、检查修改各层面之间的交叉关系;10、利用定义的地质层序建立中间层。
第四部分 GOCAD三维模型网格的建立1、新建三维地质模型网格流程右键点击图标,弹出下图窗口,输入新流程名,点击OK。
2、下图列出了两种建立三维地质模型网格的方法,一种是用面来建立,一种是用已经存在的二维网格来建立。
另外可以对加载进来的网格进行编辑。
最常用的是第一种。
故直接点击下一步。
3、选择顶底面,可以设置网格方向和网格化范围,如下图设置后,点击下一步。
4、开始设置网格:点击下一步。
设置网格有三种方式:自动、交互式、用已经建立好的。
此处选择交互式的,并点击下一步。
定义顶面,下一步。
首先选择自动计算图标,如果有不满意的地方,可以修改、添加、删除断层断过层面的轨迹线及其端点。
下一步。
同设置顶面一样设置底面,首先选择自动计算图标,修改满意后点击下一步。
设置顶底面之间的连接:点击自动计算图标,有不满意的地方可以选择其他键修改。
点击删除图标,在3D显示区点击连接线,可以删掉单个连接线。
选择添加图标,在3D显示区中点击顶面边界,再点击底面边界,就建立了一个新的连接。
满意后点下一步。
5、设置平面网格方向,有三种方式:一种是平行于X、Y方向;一种是平行外边界;另一种是定义矢量方向(可以直接输入一个角度值或用鼠标点击箭头,在3D区中画一个矢量方向)。
选择第一种,点击图标,点击下一步。
让网格线依照层走向分布,点击自动分布网格走向。
或者选择其他图标修改网格分布。
点击下一步。
6、点击 Initialize Pillars 图标,自动初始化两层之间的连接线。
点击下一步。
接下来是定义中间层,跳过这一步,直接创建网格即可。
点下一步。
7、定义纵方向上层与层之间的网格数,输入适当的值,点击下一步。
定义平面方向上的网格数,输入I、J方向上不同的网格数,点击 Create Grid 图标,建立三维地质网格,点击下一步结束。
总结:三维地质模型网格流程共分以下几步:1、选择顶底面,分别设置顶、底面;2、设置顶底面之间的连接;3、设置平面网格方向;4、设置纵向上网格方向;5、创建中间层单元(可选);6、定义纵向上网格数;7、定义平面上网格数;8、创建三维地质模型网格。
第五部分 GOCAD储层属性模型的建立1、建立属性建模流程鼠标右键点击图标,弹出新窗口,输入流程名字,点击OK。
2、下面的窗口是属性建模操作的主窗口,在Reservoir Grid/Voxet中选择已经建立好的三维地质模型网格,在Number of Prorerties中输入准备做属性建模的属性数量,此处输入3。
然后分别添加属性名和类型。
例如,上图添加的是相(Facies),类型是离散属性(Categorical);孔隙度(Porosity),类型是连续属性(Continuous);渗透率(Permeability),类型是连续属性。
如果添加错误,可以删除,移动等等。
点击下一步。
进入相模型建立。
3、相模型建立。
(1)是否添加条件数据,选择是;(2)是否已经添加到网格体中去,选择否;(3)选择数据源,选择所有井数据;(4)选择数据区域,选择Everywhere;(5)选择建模属性;(6)是否要添加到附近的网格,选择是;(7)选择赋值到网格体的方法(一种是最近原则,一种是最大比例,一种是随机);(8)是否在网格中创建数据井点区域,选择否(也可以建立)。
下一步。
选择模拟区域(Everywhere)。
下一步。
(1)选择建模方法(常值,计算程序,插值,随机模拟);选随机模拟;(2)选择是否基于地质目标模拟;选择否;(3)选择模拟方法:序贯指示模拟、截断高斯模拟(对嵌套地质现象);(4)是否添加第二套约束数据。
如果有,以后会提示添加。
选择否。
点击下一步,出现下图。
点击图标,新建岩相分类列表。
弹出新窗口,选择Classificatuion > New,建立新列表。
点击新建立的列表名,可以修改名字。
点击插入图标,插入多个相类型。