jason操作流程
Jason约束稀疏脉冲反演流程
12
JGW_8v2_workflow_SYB
【ASCII Horizon Import-(Untitled Session)】 ParametersExisting files,选择 Append and overwrite overlap Existing XY coordinates,选择 Do not read new XY coordinates。
在外部打开层位文件,查看内容。 第二列为 Inline,第四列为 Xline,第五列为 X 坐标,第六列为 Y 坐标,第七列为 Z 值。 【Edit ascii horizon generic colum format definition】 选中 Column 2, 点击 Edit, 弹出窗口 【Edit column definition】 , Column definition 设置为 Line number。
11
JGW_8v2_workflow_SYB
【Import ASCII horizon files】 点击 Add,选择要加载的层位和断层文件,如果有深度域的层位,需要点击 Edit 将其设置 为 TVD 格式; 在 JGW horizon file 填写内部文件名称,如 demo。OK。
【ASCII Horizon Import-(Untitled Session)】 设置完成。
弹出窗口【Configure project “Jason_demo”】 选择米制单位:Metric units,勾选或不勾选 Add extended data type list,OK。
2
JGW_8v2_workflow_SYB
新建工区完成,主窗口变成【Jason-Jason_demo】
3
Jason 软件详细介绍与基本操作手册
Jason模块功能简单描述Jason地学平台是一个将各学科有用信息综合在一起,即为用户提供丰富的、从油气勘探、开发到生产阶段将地震、测井和地质信息有机结合,进行反演、模拟和预测不同阶段储层岩石物性和流体变化的综合研究工具。
您根据可用信息和经济条件,您可以明智的选择应用哪个“工作流程”更好。
1、Enveriment 运行环境(工区管理地震解释和接口)与其它解释系统紧密相连、数据格式灵活、方便。
2、EarthMod 地质框架模型,包括模型建造器,模型生成器和测井曲线生成器。
把地质、地震、测井曲线(斜井轨迹)、沉积模式(整合,不整合,礁体及河道等)建立以地震道为坐标的模型上,成为储层预测的基础,并赋予地质意义。
3、VelMod 速度模型建立工具VelMod 除具有建立速度模型的基本功能外,且有其独特特征:•地质引导:结合地质信息进行插值运算,能把稀疏的速度数据拓展为三维速度场。
•基于地质概念的速度调整•真三维插值4 、Wavelets 二维和三维地震子波分析●无井、单井、多井提子波和空变子波分析●从斜井中进行真三维分析●估算信噪比谱●为使结果稳定利用模型驱动5、 Modtrace 完整的地震反演系统( 包括对大倾角地层)●所用约束稀疏脉冲反演是基于道的递归反演,产生地震带宽内的波阻抗数据。
●其算法的唯一特征应用解释控制,为获得可靠的低频信息提供工具。
在EarthMod 的基础上建立空变约束条件,其结果突出各向异性,提高了反演分辨率。
●多种方式提取子波,包括无井、单井多道、多井多道、直井、斜井提子波和在EarthMod 的基础上提空变子波。
●由于大量地震信息的反演是基于EarthMod 的基础,所以适用与多条复杂断层的地质情况,使其反演结果更接近真实的地质模型。
●给出产层有效厚度图和孔隙度分布图6、InverMod 精细储层描述(多井)•采用一欧洲石油公司的专利,专门致力于薄层预测和精细描述。
对油田滚动勘探开发十分有用。
最新jason地质统计学反演手册资料讲解
StatMod MC入门手册Chapter 1.工作流程Chapter 2.基本的输入输出数据输入数据输出数据岩性实现岩性概率体属性实现地质统计学参数岩石物理分析地层网格模型地震数据测井曲线……………………...5%...….………………..15%..……………………..5%……………………...50%……………………...10%….………………….15%百分数表示每个步骤所用时间占整个项目时间的百分比Stage 4:反演Stage 2:地质统计学参数分析Stage 3:模拟Stage 5:协模拟Stage 1: 项目准备Stage 6: 不确定性分析与风险评估Chapter 3.详细操作步骤操作步骤以StatMod MC培训数据为例第一步.首先完成一个高质量的叠后CSSI反演这一步的目的是为地质统计学提供一个好的研究基础, 这个“好”主要体现在:(1)好的井震标定, 目标区的相关值达到0.85以上;(2)好的叠后反演结果, 用来质控地质统计学模拟和反演结果, 是地质统计学反演结果横向预测准确度的参照物;(3)利用叠后反演结果进行砂体雕刻, 对目标区的岩性展布、比例有一个总体上正确的把握, 这些认识都是地质统计学的初始输入。
(说明:在提供的培训数据中已经为用户做了以上准备,用户可以从主界面中打开该培训数据所在工区, 然后用Map View看工区底图,用Section View查看地震数据、叠后CSSI反演数据、地质框架模型与层位数据以及井数据与子波 , 并用Well Editor检查井震标定情况)第二步. 数据准备●●井曲线重采样这一步将测井数据重采样至地质微层采样间隔,具体操作为:(1)JGW主界面→ Analysis→ Processing toolkit;(2)Input→ Data selection→ Data type:选Well, 点击Input file(s)右边List选择任意井(可以选多井),然后在弹出的界面Select logs中选择任意井曲线(可以多选),点击OK退出;(3)Parameters→ Resample log, 在弹出界面Processing toolkit中填写重采样间隔(注意s 与ms单位),点击OK退出;(4)Output→ Define process, 从Select from中选择Resample log, 点击››输入到右边的Process里面;(5)Output→ Generate, 在弹出的界面中填写输出路径和输出文件名,然后点击Generate,开始计算重采样的曲线。
Jason反演的流程和实例+基础教程
Generate residual data Ok 4、File → Save & Exit 显示反演的进程,完成后可以在 Analysis——Section View and Interpretion,查看结果。
约束稀疏脉冲反演
1、Input :
(1) Seismic data and wavelets …→
Seismic → list …→ mig.mod Select Wavelet …→ list …⇐ 选一个子波 :Create_ Wavelet25.mtr
(Hale Waihona Puke ) Trace gate …选整个体
(3) Time gate …→
多井),此处选 t712_ed.wll, t714_ed.wll, t717-1_ed.wll, t710_ed.wll (5) Logs …→ 选多种井曲线 (只选三种: p_sonic,
density,
p_impedance) (6) Trace gate …→ 选道范围???
2、Edit:
(1) Edit framework … -------关键 注意:
Top horizon
Bottom horizon
3、Output → Generate … (选 *.mod)
9
Run now 任选输出内容: Timpedance_from_sonic.mod
Timpedance_from_sonic_and_density.mod Timpedance_from_sonic_gardner.mod Tporosity.mod Tsonic.mod Tdensity.mod *Ok 产生文件: ../test163mod—genetate/*.mod 4、File → Save & Exit
Jason最详细的操作步骤:共281页
井数据输入
选择模板文件
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
1.深 度 2.3.为 井 斜 4.声 波 5.孔 隙 度 6.自 然 伽 马
井格式模板编辑
如果表中有不匹配之处 在此编辑
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
• Seismic/property data *.mhd *.min *.mod
• Horizon data *.hhd *.hin *.hor
• Well data *.wll
• Coordinate data xy.map
• Project rang data run.map
• Table data *.tab
同一种格式的文件可以同时加载 1.井 文 件 的 选 取 2.键 入 井 坐 标 .补 心 海 拔 高 程 .井 名
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
输入
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
井分层 数据输入
选取井分层文件
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
1.添 入 四 角 的 坐 标 2.计 算 网 格 3.退 出 菜 单
华北油田分公司勘探开发研究院二连室 王 连 军 于 2003年 4月 初
从底图和剖面上检查加入的地震数据
Seismic data loading and QC Check seismic data integrity Check seismic amplitude Check seismic amplitude spectrum
json解析流程
JSON(JavaScript Object Notation)是一种常用于数据交换的轻量级数据格式。
解析JSON数据通常涉及以下几个步骤:1. 读取数据:首先,你需要从数据源(如文件、网络请求等)读取JSON 数据。
这可以是一个包含JSON数据的文本文件、HTTP响应等。
2. 解析数据:解析是将JSON文本数据转换为编程语言内部的数据结构的过程。
在大多数编程语言中,都有内置的JSON解析库或模块,可以用来解析JSON数据。
3. 解析器:JSON解析库或模块会将JSON文本解析为对象、字典、数组或其他适合的数据结构,这样你就可以在编程语言中操作这些数据了。
4. 访问数据:解析后的JSON数据被表示为编程语言的数据结构,你可以通过对象属性、字典键值、数组索引等方式来访问和操作数据。
5. 错误处理:在解析JSON数据时,可能会出现错误,比如JSON格式不正确、缺失了某些键值等。
解析库通常提供了错误处理机制,你可以捕获并处理这些错误,以便在解析出错时进行适当的操作。
6. 释放资源:在解析完毕后,确保释放已分配的资源,如关闭文件句柄、释放内存等。
以下是一个简单的伪代码示例,展示了JSON解析的基本流程(以Python 为例):import json# 读取JSON数据json_data = '{"name": "John", "age": 30, "city": "New York"}'# 解析JSON数据parsed_data = json.loads(json_data)# 访问数据name = parsed_data["name"]age = parsed_data["age"]city = parsed_data["city"]# 打印数据print("Name:", name)print("Age:", age)print("City:", city)```在实际开发中,根据所使用的编程语言和JSON解析库的不同,具体的解析流程可能会有细微的差异。
jason的解析与封装
jason的解析与封装JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人类阅读和编写,同时也易于机器解析和生成。
在解析和封装JSON数据时,主要涉及以下步骤:解析(Parsing)JSON:获取数据源:首先,需要从文件、网络请求或数据库等数据源获取JSON格式的数据。
读取数据:使用适当的函数或方法读取JSON数据。
例如,在Python中,可以使用内置的json模块来读取JSON数据。
解析数据:将JSON数据解析成程序中的数据结构。
例如,在Python中,可以使用json.loads()函数将JSON字符串解析成Python对象(如字典或列表)。
处理数据:对解析后的数据进行处理,如提取特定字段、执行计算等。
封装(Serializing)为JSON:准备数据:将要封装的数据准备好,通常需要将其组织成一种结构化的格式,如列表或字典。
转换数据:将数据结构转换为JSON格式。
在Python中,可以使用json.dumps()函数将Python对象转换为JSON字符串。
输出数据:将生成的JSON数据输出到文件、网络请求或数据库等目标位置。
例如,在Python中解析和封装JSON数据的简单示例如下:pythonimport json# 解析JSON数据json_string = '{"name": "John", "age": 30, "city": "New York"}'data = json.loads(json_string) # 解析为Python字典print(data["name"]) # 输出: John# 封装为JSON数据data = {"name": "Jane", "age": 25, "city": "San Francisco"}json_string = json.dumps(data) # 转换为JSON字符串print(json_string) # 输出: {"name": "Jane", "age": 25, "city": "San Francisco"}在实际应用中,解析和封装JSON数据的过程可能更为复杂,需要处理异常情况、遵循特定格式要求等。
jason使用_自己制作
Wavelets(子波估算)
提供用于合成记录与反演的地震子波估算或理论子波计算工
具。在单井,多井或无井的情况下,都可以由单道或多道地震信
息估算出最佳地震子波。 主要特点: • 方法多样,覆盖面广(无井,单井,多井,单道,多道)。 • 在Earthmodel控制下,解决了斜井的子波估算问题。 • 沿井轨迹自动选择地震道,用户也可修改。 • 与约束稀蔬脉冲反演结合同时估算子波的振幅谱和相位谱。 • 丰富多样的质量控制方法用于评价子波的质量。 • 估算的子波包含位置信息便于子波内插形成空变子波。 • 多种估算方法集总在一起便于选择和串联应用。
合成记录制作Analysis—>Well Editor
加井、分层、地震、子波
初始时深
计算声阻抗
估算
每调一次之后都得按此处估 算一次子波
查看相关系数 保存时深
Commit执行操作 cancel 取消操作undo可返回以前操作步骤
在合成记录处右键,选择Vertical shift in time 可调整 合成记录,直到相关系数达标为止
主要填写子波名、开始时 间和长度以及最大主频
Calculate查看子波好坏
生成子波以后,再进入Well Editor 用生成的子波再做合成记录,如 此反复,知道相关系数达到满意值为止。 做完所有井的合成记录后,会得到每口井的井旁地震道子波,再 计算平均子波。在Wavelets中完成
首先在list中选择子波,注意不要把雷克子波也选入。然后查看所有子波,把 差异特别大的剔除,然后ok计算平均子波。
选择反演类型、地震数据、子波、层范围、工区范围,以及质量监控数据,跟前面基本一样。
建立趋势——选择井、选择模型文件,选择层位,保存kyz_trend.atm
JASON软件模块操作说明
JASON软件模块操作说明JASON软件操作使用说明编写人:钮学民、徐美娥慎国强、孙振涛刘会芹特殊处理所JASON (5.0) 一.FileSelect project …Create project…Copy project …Exit二.ModelingLargo …正演及井校正EarthModel …地质框架模型Wavelets …子波VelMod …速度模型InverTrace …地震道反演ModTrace …RockTrace …弹性反演InverMod …储层精细描述StatMod …随机反演FunctionMod …Specials三.AnalysisVolume view and body checking …Section view and interpretation …Map view and calculation …Well log editing and seismic tie …Cross plots and histograms …Attribute extraction …Auto snapper …Graph view …Well log view …Stratigraphic anomaly checker Processing toolkit …Cross correlation …四.Datalinks LandmarkGeoQuestGeoshare half_link …Seismic/property data HorizonsWellsWaveletsVelocity data …TablesCaltural data …Export for upscaling …Specials五.UtilitiesProject management Downgrade (64 to 32 bit) …Downgrade (5.0 to 4.x) …Well upgrade (4.x to 5.0) …Project copy …Project parameters …Project coordinates …Project description …File manager …Horizon managementMerge data files …Inquire data files …Downscale utility …Create/Edit Tables …Data attributes editor …File Manager …Specials→JGW←→ASCII 六.SystemSubmit a software change request …Show system load/disk u sage …Unix terminal window …Inspect current license features …Show batch queue …Show postscript printer queue …Screen snapping tools …Screendump …XV …Hints and tips …Netscale navigator一、File菜单:Select project:选择工区,必须是已经建好的工区,或重新恢复的工区。
Jason软件入门操作手册
Jason 软件入门手册 ----- InverTrace 入门PlusChapter 1.InverTracePlus 流程图1Chapter 2. 工区的建立与数据的加载( )JasonJason Geoscience Workbench34Preferred unit systemOKJGWCurrent project工 弹。
径路定指为变 的下面界主时这意注。
了好建就区 的下径路定指在。
后然位单择选边旁 在, 图出 后径路 定指栏一 的部底在, 图出弹 择选File→Create project,。
示所 图如, 称简下以(面界主 ) 入键 接 直 下径 路 意 任 在 以 可 就 么 那 , 件 软Jason2Directory OK,径路区工前当演反冲脉疏稀束约JGW 2图 取提波子与定标震井 图入进, 了 装安 经 已 上器 机 的 您 果 如 立建的区工 一载加的据数同据数型类种各的区工应相对现实以可后上连, 图见,接连以可统系 与 。
现实 的面下面界主 过通均载加据数 载加的据数 )二(JGW。
了区工该入进就, 后然,面里 的部底在现出就径路该 ,径路择选,径路的区工 有放存有所了出列面里框方间中, 图出弹, 择选上面界主在,区工 的在存经已个一开打要果如,外另 图5Directory JGW型类据数义定位单择选3图projectDatalinks45OKJGWDatalinksLandmark和图Geoquest6File→Select →7a)88OKTest fileListTest file format文位层 看查 的边右 话对Horizon file formatList →Select ASCII horizon format对的方下击点后然,件文位层择选, 击点。
框话对出推 ,式格的件文位层定指,框 边右 击点 图出弹边右Horizon file formatSet →Select horizon definition标坐 、 及以号道线入输改修,名区工义定。
jason操作流程
JASON(invertrace)操作流程前言一:JASON软件工作的基础与关键:井数据编辑、子波提取、合成记录制作与时深关系的调整。
二:工作思路:1:所有的井数据应能较好地反映地下地质情况的变化。
2:首要的是要作好井数据的编辑工作;时深转换要准确;合成记录要尽可能的与地震记录接近;子波提取要合理;极性与地震数据相匹配。
3:先做InverTrace,了解油藏的大致分布,并在AI体上重新解释储层的顶、底面(因为受地震分辨率的限制,地震数据的波峰或波谷不一定代表油藏的反射)。
4:通过交会图(crossplot)寻找与反映油藏关系密切的有关属性(如:GR、RES、Impedance、Porosity…).5:在此基础上进行IverMod的属性反演,但要有一定数量的井,InverMod反演才可靠。
6:在作好InverTrace、InverMod的基础上,再应用StatMod模块。
第一章 数据连接与加载一:首先要建立一个JASON的工作目录。
(例sn4jason)加载的数据、中间过程数据及最终成果将保存在此目录下,相当于一个Seis Project。
二:数据连接与加载。
在所建的工作目录下启动JASON,出现JASON工作主菜单。
图1-1 JASON工作主菜单(一)地震工区相关数据连接主菜单→Datalinks→Landmark→Landmark98(97,2000)出现次级菜单。
图1-2 地震工区相关数据连接菜单1:File→SeisWorks project(选择要研究的地震工区)2:Select→import→Seismic/property data(选择要加载的地震数据体) import→Horizons(选择要研究的地震层位)注:若LandMark地震工区有现成可用井曲线,可import→wells直接加载。
3:Select→Trace gate(选择要研究的地震工区范围)4: Select→Time gate(选择要研究的地震工区时间范围)5:Options→Desire JGW format→As file(8 bit integer……可供选择的数据加载格式)6:Options→Existing files→overwrite(Append……对已存在文件的处理方式)7:Transport→Import(加载数据执行)注:在整个数据加载过程中,有些选项是可选的,注意选择。
jason 安装说明
jason安装说明石油物探技术2008-06-28 18:42:24 阅读198 评论0 字号:大中小订阅1、建立jason目录把jas7.tar.bzz 解压tar -xvjf jas7.tar.bzz2、将jas7——data——jason70——license中的license.dat编辑。
3、将运行uname -a 察看本机名。
替换SERVER后英文字母。
或者修改主机名#hostname [主机名]修改/etc/sysconfig/network中的hostnameNETWORKING=yesHOSTNAME=主机名修改/etc/hosts文件#vi /dev/hosts4、在root用户修改网卡物理地址/sbin/ifconfig eth0 down/sbin/ifconfig eth0 hw ether 0014224C8BFA/sbin/ifconfig eth0 up并把它加到/etc/rc.local5、运行jgsetup——选16、设置环境C Shell or TCSH shell:setenv JASROOT /your/root/pathin his or her .cshrc file and relogging.Korn Shell, Born Shell, and BASHFor a user of Korn Shell (csh) (or Born Shell (sh)or Bourne Again Shell (bash) )export JASROOT =/your/root/pathin his or her .profile, .bash_rc, or .bash_profile fileand relogging. These files are in your home directory and canonly be seen by typing: ls -la[地震勘探] Linux下Jason的安装!(1) 先安装Linux系统!(2) 添加帐号:user:jason pwd:jason123(3) 建立一个安装目录:jason70(4) 将jason的介质,如jas7.tar.bzz 拷入该目录,并解压(先试试右键解压行不行,或试试:tar -xvjf jas7.tar.bzz)(5) 进入解压的目录,如jas7,将jas7—>data—>jason70—>license中的license.dat编辑(用命令:gedit license.dat&)(6) 在Linux中运行uname -a ,将下面一行文字中Linux后的一段文字(如:localhost localdomain)替换掉license.dat 中的SERVER后的第一个英文字。
jason应用指南
JASON (5.2)应用指南地震数据加载3D 道头 2D 道头21 32 CDP number 21 32 CDP number13 32 line number 400 bytes line name73 32 X 73 32 X77 32 Y 77 32 Y109 32 first sample time 109 32 first sample time一、3D 磁盘文件加载(*.sgy):Datalinks → Seismic/Property data → SEG-Y → Disk SEG-Y Import …1、 Parameters …1) Create/edit SEG-Y format definition …→Definition name → Standard disk SEG-YSEG-Y dimension → 3DSEG-Y disk mode → CQuick verify settings →File name → List … → 选 SEG- Y 文件显示3200字节卷头显示240字节道头找到道头中的关键字节的位置,然后填写有关字节的位置:CDP → CDP ensemble number (offset 21) → 21Line number → Specify trace header position below → 221X coordinate → Source X-coornate (offset 73) → 73Y coordinate → Source Y -coornate (offset 73) → 77XY unit → Manual override → m……2) Select / edit transport parameters …(1) Segy format 在 list 中点按 (2) Time → us(3) Time gate1500 --- 3500 ms( 4) Time of first sample 0 ms(5) 3D(6) → 选 test.sgy 文件(7)点按 →Standard disk SEGYEdi t unit … Add … Test.sgy Edit … Show EBCDIC header … Show binary header …Survey nameTrace selectionLines Start End IncrementCDP‘s Start End IncrementScaling : No scaling( 8) JGW file 在 list 中键入 JGW 内部文件名(9) Model type(10) UnitOk3 ) Desired JGW format As SEGY8 bits16 bits ✓32 bitsFloating point4) Existing files Overwrite ✓Append and overwrite overlapAppend and don‘t overwrite overla p5) Existing XY coordinates Do not read new XY coordinatesAppend and overwrite overlap ✓Append and don‘t overwrite overlap2、Transport → Import selected files (即全部输入)3、 File → Save and Exit(自动生成三维工区平面图和地震数据文件 seis.mod )二、2D 磁盘文件 (.sgy) 加载: (道头最好记录 CDP. X. Y…等信息)1、Parameters …(1) Select / edit transport parameters …步骤 1) 2) 3) 4) 同前5) 2D 2D lines6) → 选多个 *.sgy 文件给 line name5) 一个个点亮 → → CDP‘s -- Ok注意:2D 工区,如果道头没记 X.Y :!! 道头有X.Y ,加载省事,自动生成平面图和地震数据文件 seis.mod 。
js操作json的基本方法
js操作json的基本⽅法 js操作json时,常⽤的是使⽤[]或者.来获取json属性的值。
使⽤上还是有些区别的。
JSON(JavaScript Object Notation) 是⼀种轻量级的数据交换格式。
易于⼈阅读和编写。
同时也易于机器解析和⽣成。
它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的⼀个⼦集。
JSON采⽤完全独⽴于语⾔的⽂本格式,但是也使⽤了类似于C语⾔家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。
这些特性使JSON成为理想的数据交换语⾔。
其属性值的获取有三种⽅法1. 对象名.属性名, 类似于⾼级语⾔的写法var obj = '{"name":"wisdo", "age":"20"}';var data = eval('('+ obj +')');alert();2. 以数组索引的⽅式来访问var obj = '{"name":"wisdo", "age":"20"}';var data = eval('('+ obj +')');alert(obj[0]); // 输出的是 name3. 以字典索引的⽅式来访问var obj = '{"name":"wisdo", "age":"20"}';var data = eval('('+ obj +')');alert(obj['name']); // 输出的是 name 值在通常的情况下,⼀般是使⽤第⼀种⽅法,即通过对象名.属性名的⽅式来访问,这样对于使⽤⾼级语⾔的编程很直观,也很容易理解,但这也有局限性,属性的名称要规范,key 要以字母或下划线开头的包括字母、下划线和数字的字符串,不能以数字开头.总结 data.key和data[’key’]各⾃有⾃⼰的应⽤场景,⼀般情况使⽤data.key即可,也⽐较直观(它符合其它⾼级语⾔中访问对象中属性的⽅式);当key为⼀个变量时,并且使⽤在循环中,⽤data['key']这种⽅式。
jason软件说明
1、数据加载(1)地震数据加载进入JASON软件主窗口菜单:Datalinks---Seismic/Property data:进入下一级界面:该Parameters菜单中每个步骤依次执行该Parameters菜单中每个步骤依次执行(a)Creat/edit segy format definition…(b)Select/ edit transport parameter…(c) Desired JGW format: (32bits or Floating point)(d)Existing files….Transport ---(2)层位数据Datalinks---Horizons…出现下一级子菜单(a)Parameters---Select/edit transport paramenters…. 选择层位,断层等所在目录即可。
(b)Existing files (same to seismic data)(3)井位数据加载Datalinks--- wells…Input—(a)Input---Set template file…出窗口(未抓)(b)Input—Select files…Edit----(a)Edit—Edit template…出窗口在Generic log –column (select all) 一个接着一个编辑,选中(击黑)点Edit header—出现LAS edit log header对话框,在JGW type中根据曲线的类型选择相应说明,并修改单位。
深度为Measured depth, 单位为m;声波为P-sonic单位为:数据在200以内为英制,大于200为米制。
Edit—Existing files…(same to seismic data)Transport—出窗口(a)Edit….出现编辑坐标的窗口,输入X,Y坐标(b)Import wells..加载井数据。
C#操作JSON方法汇总
C#操作JSON⽅法汇总RestAPI中,经常需要操作json字符串, 需要把json字符串"反序列化"成⼀个对象,也需要把⼀个对象"序列化"成⼀字符串。
C# 操作json, ⽐较简单。
本⽂介绍⼏种⽅法步骤Json 字符串反序列化成对象共需要2步:第⼀步:建⽴相应的实体类第⼆步: 调⽤⽅法把Json字符串"反序列化"成对象了解json的语法⾸先要了解json的语法,这样才能知道怎么创建实体类.Json 的语法很简单,就四条数据在名称/值对中数据由逗号分隔花括号保存对象⽅括号保存数组创建实体类的例⼦{"FirstName":"⼩坦克","LastName":"Tank","Age":30}相应的实体类可以为public class Person{public String FirstName{ get; set; }public String LastName{ get; set; }public int Age{ get; set; }}⾃动⽣成JSON的实体类⼀个复杂的实体类,我们⾃⼰去写的话,可能需要1个⼩时以上。
那有没有⼯具能直接⽣成实体类呢,这样能⽅便太多了。
当然有使⽤第三⽅⼯具 Newtonsoft.Json.dll优点: 使⽤⾮常⽅便. 看个例⼦就知道怎么⽤了代码⽰例:using System;using System.Collections.Generic;using System.Linq;using System.Text;using Newtonsoft.Json;namespace JsonDemo{class Program{static void Main(string[] args){string personJson = "{ 'FirstName': '⼩坦克','LastName':'Tank xiao', 'Age':'30', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac编程', 'Price':'39.9'}]}";string allMoveJson = @"[{ 'FirstName': '⼩坦克','LastName':'Tank xiao', 'Age':'30', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac编程', 'Price':'39.9'}]},{ 'FirstName': '⼩坦克2','LastName':'Tank xiao2', 'Age':'40', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac编程', 'Price':'39.9'}]}]";// 反序列化单个对象Person oneMovie = JsonConvert.DeserializeObject<Person>(personJson);// 反序列化对象集合List<Person> allMovie = JsonConvert.DeserializeObject<List<Person>>(allMoveJson);Console.WriteLine(oneMovie.FirstName);Console.WriteLine(allMovie[1].FirstName);// 序列化string afterJson = JsonConvert.SerializeObject(allMovie); }}public class Person{public String FirstName{ get; set; }public String LastName{ get; set; }public int Age{ get; set; }public List<Book> Books{ get; set; }}public class Book{public string BookName{ get; set; }public string Price{ get; set; }}}最后我们来看个实例using System;using System.Collections.Generic;using System.Text;using Newtonsoft.Json;namespace TestJson{class Program{static void Main(string[] args){string json = "{\"a\":\"sadsad\",\"c\":{\"d\":\"adad\"}}";//CCC ccc = new CCC();//ccc.d = "adad";//AAA aaa = new AAA();//aaa.a = "sadsad";//aaa.b = "dfgdg";//aaa.c = ccc;AAA aaa = new AAA();aaa= JavaScriptConvert.DeserializeObject<AAA>(json); // string json = JavaScriptConvert.SerializeObject(aaa); // Console.WriteLine(json);Console.Read();}}public class AAA {private string m_a;public string a{get { return m_a; }set { m_a = value; }}private string m_b; public string b{get { return m_b; } set { m_b = value; } }private CCC m_c;public CCC c{get { return m_c; } set { m_c = value; } }}public class CCC{private string m_d; public string d{get { return m_d; } set { m_d = value; } }}}。
python中json方法
python中json方法JSON是一种轻量级的数据交换格式,广泛应用于Web开发和数据传输中。
Python提供了丰富的JSON处理方法,使得开发者可以方便地处理和解析JSON数据。
本文将介绍Python中常用的JSON方法,包括JSON转换、解析和操作等方面的内容。
一、JSON转换1. json.dumps()方法:将Python对象转换为JSON格式的字符串。
该方法可以将包括基本数据类型、列表、字典等在内的Python对象转换为JSON格式的字符串。
2. json.dump()方法:将Python对象转换为JSON格式并写入文件。
该方法将Python对象转换为JSON格式的字符串,并将其写入指定的文件中。
二、JSON解析1. json.loads()方法:将JSON格式的字符串转换为Python对象。
该方法可以将JSON格式的字符串解析为对应的Python对象,如字典、列表等。
2. json.load()方法:从文件中读取JSON格式的数据并解析为Python对象。
该方法从指定的文件中读取JSON格式的数据,并将其解析为对应的Python对象。
三、JSON操作1. 获取JSON数据:可以使用Python中的索引或键值对的方式获取JSON数据。
例如,使用索引方式获取列表中的元素,使用键值对方式获取字典中的值。
2. 修改JSON数据:可以直接对Python对象进行修改,然后使用json.dumps()方法将修改后的Python对象转换为JSON格式的字符串。
3. 添加JSON数据:可以通过在Python对象中添加新的键值对来添加JSON数据,然后使用json.dumps()方法将添加后的Python 对象转换为JSON格式的字符串。
4. 删除JSON数据:可以使用Python中的del关键字或pop()方法来删除JSON数据。
四、JSON异常处理在处理JSON数据时,可能会遇到各种异常情况,如JSON格式错误、解析错误等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在“Use horizons”对话框中的 Set horizons file 选项中要选 第一步生成的*_Tinterface.hor 文件,然后再选控制层。 4:Input→Wells/User locations→Wells(选输入井) 5:Input→Select QC traces(可选) 6:Edit→Edit trend(编辑单口井包络函数) 7:Edit→Disable all constraints(关掉井约束) 8:Edit→Advanced→Wavelet scaling(子波估算)
若 Estimate 的“Scale factor”接近于正负 1,则输入子波可用, 否则要重新提取输入子波以免影响结果的正确性。 9:Output→Generate results
在 Generate the following output 选项中选 P_Impedance,其 它根据实际需要可选。 四: 道合并(高频地震和低频井约束模型道合并)
JASON(invertrace)操作流程 前言
一:JASON 软件工作的基础与关键: 井数据编辑、子波提取、合成记录制作与时深关系的调整。
二:工作思路: 1:所有的井数据应能较好地反映地下地质情况的变化。 2:首要的是要作好井数据的编辑工作;时深转换要准确;合成
记录要尽可能的与地震记录接近;子波提取要合理;极性与地震数据 相匹配。
注:若正常极性及正反射系数对应波谷时,Scale factor 应是负值。
11:调整合成记录使其尽可能的与地震记录接近。 12:用右键调出编辑对话框进行加井分层等编辑工作。
注:合成记录制作是整个反演过程中“人为干预”最多和耗时最长的过程,也 是影响反演结果合理正确与否的关键环节,其后基本是工作站在进行各种运算, 因此一定要认真、仔细地做好合成记录
注:编辑模型层格架时,要通过 QC 检查一下格架的合理性。
4:Input→Framework(上步生成的*.frw 文件)
6
5:Input→Select data for EarthModel→Wells(输入井,*.wll) 6: Input→Select data for EarthModel→Wells(输入井曲线) 7:Input→Trace gate(输入模型的范围) 8:Output→Generate(建立模型) 二: 模型生成
(2)Import wells
第二章 合成记录制作
合成记录制作是否细致、精确是关乎反演结果是否正确合理的关
键因素,也是整个反演过程中的核心工作。
一:要注意的问题
(一)子波提取
1:子波长度:太长不好,一般为 100ms 左右为宜:
2:制作子波的时窗(time gate)
(1)时窗不能太小,至少是子波长度的三倍以上。
主菜单→Modeling→Invertrace→Trace merging 调出道合并工 作菜单。
8
图 3-4 道合并工作菜单
1:Input→Low freq. data(选第二步生成的*_Timpedance.mod) 2:Input→Bandlimited data(选第三步生成的*_impedance.mod) 3:Input→Wavelet(输入子波) 4:Input→Trace gate(输入范围) 5:Edit→Design filter
注:Time sample interval-时间采样间隔要和地震工区输入的*.mod 的时间采样 间隔保持一致。
6: Output→Generate(模型生成) 在 Select output files 对话框中要选 P-Impedance in time
三: 稀疏约束井反演 主 菜 单 →Modeling→Invertrace→Constrained sparse spike
(Seismic data 选从地震工区输入的*.mod,子波要适当选取)
3: Input→Data for seismic modeling→Time gate(用层选取时间范围) 4: Input→Trace gate(输入模型生成的范围) 5: Edit→Modeling parameters(编辑模型参数)
2:提取其它子波:根据需要通过 Estimate 提取其它子波。
注:因为在整个反演过程中要生成许多目标名称,因此起名字一定要规范,便 于识别目标。
(二)合成记录制作
4
1:主菜单→Analysis→Well log editing and Seismic tie 调出合 成记录制作工作界面。
图 2-2 合成记录制作工作界面
(统一参数,用 Change 改,忌直接改,P-sonic(40-150)*可选)。
注:以上过程无严格顺序。
8:根据井曲线数据计算波阻抗曲线(Calculate AI)。
5
注:在合成记录制作工作界面右侧编辑框(Edit)Calculate 选项中根据实际情 况 Calculate AI。
9:在合成记录制作工作界面右侧编辑框(Edit)Create TD Relation 选项中用 Sonic 给一个时深关系。 10:Edit→Scale wavelet…得出合成记录。
第三章 计算波阻抗体
波阻抗体计算基本上需要四步。
注:在这四步中,中间生成的路径名和文件名一定要起规范,以免混淆。
一:建立模型 主 菜 单 →Modeling→EarthModel→Model builder(without
T 建立模型工作菜单
1:Input→Time/Depth mode (选时间和深度模式,选 time) 2: Input→Horizons (输入层文件,*.hor) 3:Edit→Edit framework(编辑模型层格架,从底到顶,生成*.frw 文件)
数据加载格式)
6:Options→Existing files→overwrite(Append……对已存在文件的处理
方式)
7:Transport→Import(加载数据执行)
注:在整个数据加载过程中,有些选项是可选的,注意选择。
1
(二)井曲线数据加载 井曲线数据编辑和加载是非常关键的工作,也是做好反演的前
主菜单→Modeling→EarthModel→Model generator 调出模型生 成的工作菜单。
图 3-2 模型生成工作菜单
1: Input→Solid model(第一步生成的*.mod) 2: Input→Data for seismic modeling→Seismic data&Wavelets
6:在作好 InverTrace、InverMod 的基础上,再应用 StatMod 模 块。
第一章 数据连接与加载
一:首先要建立一个 JASON 的工作目录。(例 sn4jason) 加载的数据、中间过程数据及最终成果将保存在此目录下,相当
于一个 Seis Project。
二:数据连接与加载。 在所建的工作目录下启动 JASON,出现 JASON 工作主菜单。
import→Horizons(选择要研究的地震层位)
注:若 LandMark 地震工区有现成可用井曲线,可 import→wells 直接加载。
3:Select→Trace gate(选择要研究的地震工区范围) 4: Select→Time gate(选择要研究的地震工区时间范围) 5:Options→Desire JGW format→As file(8 bit integer……可供选择的
提和基础,首先要对收集来的井曲线数据进行编辑和优选,剔除无关 和异常数据。一般需要测量深度(Measured depth)、声波(P-sonic)、 自然伽玛(Gamma ray)以及密度(Density)四种曲线数据。
井曲线数据加载过程如下:主菜单→Datalinks→Wells→Well log import 调出井曲线数据加载主菜单。
自北顺时针方向转过的角度为测线方位。
3
(5)第一次的合成记录用雷克子波,主要目的是把地震解释的层位 与井分层对齐。后边的合成记录用从地震数据中提取的子波,不断调 整合成记录的波形、振幅与时间。
(6)子波的比例——至关重要:因为在所有的反演算法中,均以合 成记录代替地震数据进行计算,因此必须保证合成记录与地震数据的 最大匹配,使剩余值更少些。 (二)波形调整:尽量保持其原貌进行整体调整,不宜拉伸或压缩波 形。 二:合成记录制作 (一)子波提取 主菜单→Modeling→Wavelets 调出子波提取菜单
Log unit
选 us/ft
2
Colum3:JGW log type 选 Gamma ray
Log unit
选 gAPI
Colum4:JGW log type 选 Density
Log unit
选 g/cm3
4:Transport→Import selected wells
(1)Edit 井坐标
(1):Start depth →Change unit(m)
(2):Generic log
根据井曲线数据选择列(Colum),然后编辑每列的单位(Edit
header).
例如:Colum1:JGW log type 选 Measured depth
Log unit
选m
Colum2:JGW log type 选 P-sonic
图 2-1 子波提取菜单
1:提取雷克子波(Ricker): Edit→Create synthetic wavelet 调出子波提取界面。 首先 Wavelet type 选 Ricker ;frequency[Hz] 选 25(注意其它参
数的选取)然后 Calculate 出雷克子波,可通过 Wavelet editing QC 观 察其波形,然后通过调整相关参数调整其波形。