まず、速度解析(定速度重合: CVS)したパネルを表示する。
$ suvelan nv=160 dv=25 fv=1000 < test_cdp1100_flt_gain.su | suximage f2=1000 d2=25 perc=99.5 mpicks=pick.txt &
図:CVS パネル。縦軸は時間 (s)、横軸は速度 (m/s)。(左)が全体、(右)が読み取る部分の拡大。
読みとった速度値が入ったファイル pick.txt を NMO 補正のプログラムの入力に使えるように整形する。
$ mkparfile < pick.txt > pick.par string1=tnmo string2=vnmo
$ sunmo par=pick.par < test_cdp1100_flt_gain.su | suximage perc=98 & $ sunmo par=pick.par < test_cdp1100_flt_gain.su | suxwigb perc=98 &
補正した結果を見てみよう。反射面が水平に並んでいれば重合(スタック)してみる。 満足しなかった場合は速度解析に戻ってやり直す。
$ sunmo par=pick.par < test_cdp1100_flt_gain.su | sustack | suxwigb perc=98 &重合すると S/N 比が向上した一本のトレースになる。
interactive_velocity_analysis.sh のパラメータを編集することができる。 スクリプトを直接編集してもよいが、その部分を別ファイルに取り出した、 parameters_for_interactive_velocity_analysis.par を編集するとよい。 この名前のファイルが存在する場合には、ファイルが読み込まれ、こちらの設定が優先される。
$ emacs parameters_for_interactive_velocity_analysis.par & $ vi parameters_for_interactive_velocity_analysis.parなど。
#================================================ # USER AREA -- SUPPLY VALUES #------------------------------------------------ # CMPs for analysis # CMPs cmp1=933 cmp2=958 cmp3=983 cmp4=1008 cmp5=1033 cmp6=1058 cmp7=1083 cmp8=1108 cmp9=1133 cmp10=1158 cmp11=1183 cmp12=1208 cmp13=1233 cmp14=1258 cmp15=1283 # Number of CMPs numCMPs=15 #------------------------------------------------ # File names indata=Ncdps.su # SU format outpicks=Nvpick.txt # ASCII file #------------------------------------------------ # display choices myperc=95 # perc value for plot plottype=1 # 0 = wiggle plot, 1 = image plot percvelan=99 # perc value for Velocity Analysis Panel # More parameters are customizable. See the script itself. # end
シェルスクリプトを実行する。
$ sh interactive_velocity_analysis.sh
$ cat Nvpick.txt
この出力は、そのまま NMO 補正のプログラムに使える形式になっている。cdp=950,1050,1150,1200,1280 \ tnmo=0,6.20617,6.54153,6.85235,7.17952,7.51488,7.89113 \ vnmo=1500,1453.33,1488.89,1640,1648.89,1666.67,1915.56 \ tnmo=0,6.02364,6.59894,7.08253,7.39103,7.7162 \ vnmo=1500,1518.19,1669.86,1644.58,1631.94,1859.44 \ ...
NMO補正とCMP重合を実行する。
$ sunmo par=Nvpick.txt < Ncdps.su | sustack > Nzerooffset.su $ suximage perc=98 < Nzerooffset.su &CMP重合によって S/N比が改善されたゼロオフセット記録断面が得られる。
図:CMP重合して得られたゼロオフセット記録。
このシェルには速度解析の結果 (Nvpick.txt) が必要である。このデータを用いて速度構造を表示する。 重合速度 (stacking velocity) と 区間速度 (interval velocity) の双方が表示される。
$ sh plot_velocity.sh速度構造、特に区間速度の構造が現実にあり得ないような値(高速度あるいは低速度)になっている場合には、速度解析をやり直すことを勧める。
図:速度解析で求めた速度構造、(左)重合速度、(右)区間速度。この例の区間速度には低速度、高速度の構造が見られる。
マイグレーションの方法はたくさんあるが、今回はf-kマイグレーションを拡張 した Stolt (1978) の時間マイグレーションの手法を使う。 最大の理由は、速度構造(深度方向のみ)を考慮でき「計算時間が短くてすぐに結果が出る」から。まずは練習を行う。
$ sustolt cdpmin=900 cdpmax=1300 dxcdp=16.667 vmig=1500 tmig=6 < Nzerooffset.su | suximage perc=98 & $ sustolt cdpmin=900 cdpmax=1300 dxcdp=16.667 vmig=1500 tmig=6 lstaper=20 lbtaper=100 < Nzerooffset.su | suximage perc=98 &
図:v = 1500 m/s としたマイグレーション結果。
速度を一定としていろいろな速度でマイグレーションをしてみよう。 上の vmig をいろいろ変えてみればよいが、一気にやるには シェルスクリプト create_MIG_panel.sh を動かしてみるとよい。 スクリプトには
とあり、速度 1000 m/s から 2000 m/s まで 100 m/s 間隔の一定速度でマイグレーションする(適宜変更してよい)。------------------------------------ indata=Nzerooffset.su outdata=migpanel.su vmin=1000 vmax=2000 dv=100 ------------------------------------
$ sh create_MIG_panel.sh結果を比べてみよう。また、動画で表示してみるとわかりやすい(かも)。
$ suxmovie n2=401 n3=11 loop=1 perc=98 title="Flame %g" sleep=1 < migpanel.su &
低速度では上向きに凸だったデフラクションカーブが、マイグレーションしすぎる(高速度すぎる)と下向きに凸のカーブになる。
図:v = 1000, 1500, 2000 m/sとしたマイグレーション結果。
精度のよいマイグレーションを行うために、
$ sustolt cdpmin=900 cdpmax=1300 dxcdp=16.667 tmig=0,6,7,8,9 vmig=1500,1500,1600,1700,1800 lstaper=20 lbtaper=100 < Nzerooffset.su > Nmig.su $ suximage < Nmig.su perc=98 &
ここで得られたマイグレーション結果が構造断面(時間断面)である。
sustolt は深度方向の速度構造を考慮できるとは言え時間マイグレーションである。 構造が複雑な場合には、速度構造を与えた深度マイグレーションを用いると、直接深度断面が得られる。ただし、深度マイグレーションは一般に計算時間がかかり、また結果が速度構造に依存するため、速度構造の不確定性がある場合には慎重な適用が望まれる。
速度構造が得られていれば時間を深度に変換することができる。 実際には時間断面のままで解釈することも多い (速度情報の精度に不正確さが残るため)。
深度変換を行う。
$ suttoz t=0,6,7,8,9 v=1500,1500,1600,1700,1800 < Nmig.su > Nmigdepth.su $ suximage < Nmigdepth.su perc=98 &
$ suintvel mode=1 t0=0,6,7,8,9 vs=1500,1500,1600,1700,1800 $ suintvel mode=1 t0=0,6,7,8,9 vs=1500,1500,1600,1700,1800 outpar=intvel.dat