from rsf.proj import *
Flow('y1',None,'math n1=41 o1=-4 d1=.2 output=".5*x1"')
Flow('y2','y1','math output="sin(x1)"')
Flow('y3','y1 y2','math sin=${SOURCES[1]} output="input-sin"')
Result('fig1','y3','graph title="0.5x-sin(x)"')
Result('fig2','y3','graph title="0.5x-sin(x)" symbol=o symbolsz=12 grid=y min1=-4 max1=4')
Plot('line','y3','graph wanttitle=n wantaxis=n')
Plot('dots','y3','graph title="0.5x-sin(x)" symbol=o symbolsz=12')
Result('fig3','line dots','Overlay')
Flow('y4','y1 y2 y3','cat ${SOURCES[1]} ${SOURCES[2]} axis=2')
Result('fig4','y4','graph title="0.5x,sin(x),0.5x-sin(x)" label1=x label2=y')
Flow('vb',None,'math n1=101 d1=2 n2=201 d2=2 output="1500+5*x1"')
Flow('v1','vb','math output="-exp(-.002*((x1-100)*(x1-100)+(x2-200)*(x2-200)))*450"')
Flow('v','vb v1','add scale=1,1 ${SOURCES[1]}')
Result('fig5','v','grey title=Velocity color=j bias=1500 scalebar=y barreverse=y')
Flow('eik','v','eikonal yshot=200')
Result('fig6','eik','contour nc=45 title=Traveltime plotfat=5')
Plot('v','v','grey bias=1500 min1=0 max1=200 min2=0 max2=400 wanttitle=n wantaxis=n')
Plot('eik','eik','contour title=Overlay nc=45 plotfat=5 min1=0 max1=200 min2=0 max2=400')
Result('fig7','v eik','Overlay')
Fetch('shots.hh','shots')
Flow('shots','shots.hh','''
dd form=native type=float |
window n1=480 n2=24 | transp plane=23 |
put label1=Time unit1=sec label3=Offset unit3=m label2=Shot unit2=m
''')
Result('fig8','shots','''byte |
grey3 frame1=0 frame2=24 frame3=0 point1=.75 point2=.65
wanttitle=n flat=n title="Data"
''')
Flow('spike',None,
'spike n1=500 n2=50 k1=100,300 nsp=2 o2=1 d2=1 | ricker1 frequency=5')
Flow('offset','spike','window n1=1 | noise type=n rep=y seed=2005 range=3')
Flow('offset2','offset','transp | headersort head=$SOURCE')
Flow('velocity','spike','window n2=1 | math output="3+0.5*x1" ')
Flow('data','spike offset2 velocity',
'inmo offset=${SOURCES[1]} velocity=${SOURCES[2]} half=n')
Result('fig9','data',
'''
wiggle title= label2="Trace Number" unit2=
yreverse=y transp=y poly=y
''')
End() |