from rsf.proj import *
Fetch('simple.su','cwp')
Flow('simple','simple.su',
'''
suread what=d suxdr=y |
put o2=0 d2=40 label2=Distance unit2=m
''')
Flow('vel',None,
'''
spike mag=2000 n3=1
O1=0 n1=501 d1=4
o2=0 n2=80 d2=40
''')
Flow('shots','vel',
'window n1=1 squeeze=n | math output=x2 | pad beg1=1 end1=1')
Flow('time','vel shots',
'''
eikonal shotfile=${SOURCES[1]} |
window | put o3=0 d3=40
''')
Plot('time','grey color=j title=Traveltime allpos=y',view=1)
Flow('timex','time',
'''
transp plane=13 | deriv |
transp plane=13 | scale dscale=0.025
''')
Flow('kdmig','simple time timex',
'kirmig0 type=linear table=${SOURCES[1]} deriv=${SOURCES[2]}')
Result('kdmig','grey title="Kirchhoff migration" ')
Flow('slope','simple','dip rect1=10 rect2=10 order=4')
Flow('interp','simple slope','dealias dip=${SOURCES[1]} order=4')
Flow('filter','simple','erf flo=2.5 fhi=22.5 rect=60')
cases = {
'simple': 'simple data',
'filter': 'filtered',
'interp': 'interpolated'
}
for case in cases.keys():
Result(case,'wiggle transp=y yreverse=y poly=y title=%s' % case)
mig=case[0]+'mig'
Flow(mig,case,
'''
cosft sign2=1 | stolt vel=2000 | cosft sign2=-1 |
put d1=4 label1=Depth unit1=m
''')
Result(mig,'wiggle pclip=99 transp=y yreverse=y poly=y title=%s' % cases[case])
End() |