up [pdf]
from rsf.proj import *

sys.path.append('..')
import sigsbee

for vel in ('migvel','strvel'):
    sigsbee.getvel(vel,vel)
    Result(vel,'grey color=j allpos=y bias=1.5 scalebar=y barreverse=y wanttitle=n')

sigsbee.getzo('zodata')
Result('zodata','grey title="Zero Offset" ')

# Exploding reflector modeling

dx=0.00762
x0=3.048

Flow ('lside','strvel','window n2=1  | spray n=1000 o=%g' % (x0-1000*dx))
Flow ('rside','strvel','window f2=-1 | spray n=1000')
Flow ('extend','lside strvel rside','cat axis=2 ${SOURCES[1:3]}')

dt = 0.001
nt = 12001

Flow('refl','extend',
     '''
     depth2time velocity=$SOURCE nt=%d dt=%g|
     ai2refl |
     ricker1 frequency=20 |
     time2depth velocity=$SOURCE
     ''' % (nt,dt))

Result('refl','grey title="Exploding Reflector" ')

Flow('fft','refl','transp | fft1 | fft3 axis=2 pad=1')

Flow('right left','extend fft',
     '''
     transp | scale dscale=0.5 |
     isolr2 seed=2012 dt=%g fft=${SOURCES[1]} left=${TARGETS[1]} 
     ''' % dt)

Flow('exp','refl left right',
     '''
     fftexp0
     left=${SOURCES[1]} right=${SOURCES[2]} 
     nt=%d dt=%g 
     ''' % (nt,dt))

Flow('sigexp','exp','transp | window f2=1000 n2=3201 | costaper nw2=25')

Result('sigexp','grey title="Exploding Reflector Data" ')

sigsbee.getshots('shots')
Result('shots','byte | grey3 frame1=750 frame2=150 frame3=250 flat=n title=Shots point1=0.8')

End()

sfsegyread
sfwindow
sfmask
sfdd
sfmath
sfcat
sftransp
sfscale
sfput
sfgrey
sfheaderwindow
sfcut
sfreverse
sfcostaper
sfspray
sfdepth2time
sfai2refl
sfricker1
sftime2depth
sffft1
sffft3
sfisolr2
sffftexp0
sfintbin
sfmutter
sfbyte
sfgrey3

data/sigsbee/sigsbee2a_nfs.sgy
data/sigsbee/sigsbee2a_migvel.sgy
data/sigsbee/sigsbee2a_stratigraphy.sgy