阳光石油网|石油技术交流|石油人论坛

 找回密码
 欢迎注册
查看: 1906|回复: 8

[Petrel使用技巧] Petrel workflow问题之地震数据批量导入

[复制链接]

该用户从未签到

发表于 2015-6-25 18:42:57 | 显示全部楼层 |阅读模式

马上注册,下载丰富资料,享用更多功能,让你轻松玩转阳光石油论坛。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

x
本帖最后由 773377 于 2015-6-25 18:44 编辑

郝哥好。

我的编程技巧不好,最近遇到一个需要多次重复手工工作的问题,我想应该能用workflow解决,但是一直没有找到合适的方法。

问题是这样的:

sgy文件原始地址格式:

D:\seismic\abc123\final migration\abc123-1.sgy
D:\seismic\abc123\final migration\abc123-2.sgy
D:\seismic\abc123\final migration\abc123-3.sgy
……

D:\seismic\abc123\raw migration\abc123-1.sgy
D:\seismic\abc123\raw migration\abc123-2.sgy
D:\seismic\abc123\raw migration\abc123-3.sgy
……

D:\seismic\xyz789\final migration\xyz789.sgy
……

数据在阵列上的储存位置就是这样的,我用红色表示survey name,蓝色表示vintage。

现在,我要把以上所有数据全部导入Petrel的相应survey文件夹里,并赋予正确的vintage。我已经通过workflow批量建立了一系列survey folder,在每一个survey folder下方建立了final migration, raw migration的子目录。


Untitled.jpg

在编写导入workflow的时候出现了问题。


survey名,subfolder名,vintage名,这至少需要3个变量。其中vintage名和subfolder名应该是对应相同的。但是在引入变量的时候,一个变量只能对应一种对象,比如变量A指定为subfolder的 final migration, 变量B指定为vintage的 final migration, 这两个是不能互换的,而使用Get name函数只能获得一个字符串,如何才能用字符串将subfolder和vintage联系起来呢?不能联系起来的话,就没有办法将磁盘上final migration下的sgy文件,导入到对应survey下的final migration目录,赋予final migration的vintage了。


另外,使用import seismic的时候,path框里是不能使用“*”,“?”这些通配符的,不然会提示路径错误,也没法引入变量或reference list,这样如果一个目录下有几十条测线,难道要分别建立几十条命令吗?


  • TA的每日心情
    开心
    2014-1-11 00:20
  • 签到天数: 38 天

    [LV.5]常住居民I

    发表于 2015-6-25 20:02:24 | 显示全部楼层
    个人觉得Subfolder这个选项跟 Survey - Vintage 的Matrix是重复的。一个Survey跟一个Vintage配套就能确定一套数据,而不需要再到Subfolder中进行筛选。除非你老板坚持这样管理。


    没有Subfolder的干扰,Reference List似乎还是可以控制你这个要求的。我现在在Mac上,无法去Windows下测试,只是猜测,抱歉。

    回复 支持 反对

    使用道具 举报

    该用户从未签到

     楼主| 发表于 2015-6-25 20:45:56 | 显示全部楼层
    本帖最后由 773377 于 2015-6-25 20:53 编辑
    Joseph 发表于 2015-6-25 20:02
    个人觉得Subfolder这个选项跟 Survey - Vintage 的Matrix是重复的。一个Survey跟一个Vintage配套就能确定 ...

    确实可以不需要subfolder,但有的2D测线有几十条,每条分别又有final migration, raw migration, raw stack, 全列出来的话,目录会很长,再加上原始的文件名也很长,看起来就很繁杂。别人用reference project tool复制的时候也会不方便。
    现在import seismic的path框批量导入的问题我用cmd命令解决了,但现在还是不能让petrel自动根据路径名来匹配vintage名。如果可以把路径名和vintage名相互传递的话,subfolder的问题倒是简单了,可以先不用subfolder,把sgy先导入survey下,新建一个subfolder,把vintage名传递过去,再把刚刚导入的文件移动到subfolder里就行了。

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-12-18 00:00
  • 签到天数: 2526 天

    [LV.Master]伴坛终老

    发表于 2015-6-26 08:11:07 | 显示全部楼层
    看一看
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    7 小时前
  • 签到天数: 3660 天

    [LV.Master]伴坛终老

    发表于 2015-6-26 08:27:43 | 显示全部楼层
    workflow需要多交流啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-5-24 09:52
  • 签到天数: 358 天

    [LV.8]以坛为家I

    发表于 2015-6-26 09:18:57 | 显示全部楼层
    workflow是我的硬伤啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2012-10-14 19:08
  • 签到天数: 243 天

    [LV.8]以坛为家I

    发表于 2015-6-26 10:41:11 | 显示全部楼层
    加个loop循环,然后get name
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2012-10-14 19:08
  • 签到天数: 243 天

    [LV.8]以坛为家I

    发表于 2015-6-26 11:05:46 | 显示全部楼层
    你可以批量加载进去,然后再运用referencelist  再循环  再move  到你新建的文件夹,比你运用import命令容易操作些,个人观点仅供参考!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-12-10 00:40
  • 签到天数: 897 天

    [LV.10]以坛为家III

    发表于 2015-6-29 10:01:39 | 显示全部楼层
    ??????????????
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 欢迎注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|阳光石油网 ( 鲁ICP备2021003870号-1 )

    GMT+8, 2024-6-2 16:40 , Processed in 0.070377 second(s), 26 queries .

    Powered by Discuz! X3.4 Licensed

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表