from rsf.proj import * # Thanks to Ning Tu # Velocity Flow('vel',None, ''' spike mag=1500,3000 nsp=2 k1=1,101 l1=100,200 d1=4 d2=4 label1=Depth label2=Distance n1=200 n2=200 o1=2 o2=2 unit1=m unit2=m ''') Plot('vel', ''' grey wanttitle=n scalebar=y allpos=y bias=1500 barlabel=Velocity barunit=m/s barreverse=y ''') # Density Flow('den','vel','math output=1') # Source Flow('sou',None, 'spike n1=2 nsp=2 k1=1,2 mag=400,100 o1=0 o2=0') Plot('sou', ''' dd type=complex | graph symbol=* symbolsz=10 wantaxis=n plotcol=3 plotfat=3 wanttitle=n scalebar=y min1=2 max1=801 min2=2 max2=801 yreverse=y ''') Result('vel','vel sou','Overlay') # Receiver Flow('rec',None, 'spike n1=2 nsp=2 k1=1,2 mag=400,100 o1=0 o2=0') # Wavelet Flow('wav',None, ''' spike n1=2000 d1=0.0005 k1=200 | ricker1 frequency=20 ''') Result('wav','wiggle poly=y pclip=100 title=Wavelet') # Finite-difference modeling Flow('dat wvl','wav vel den sou rec', ''' transp | awefd2d vel=\${SOURCES[1]} den=\${SOURCES[2]} sou=\${SOURCES[3]} rec=\${SOURCES[4]} wfl=\${TARGETS[1]} verb=y free=n snap=y dabc=y jdata=1 jsnap=10 ''') # Run 'scons wvl.vpl' to watch a movie Plot('wvl', ''' grey gainpanel=a title=Wave label1=Depth label2=Distance unit1=m unit2=m ''',view=1) Result('wvl', ''' window n3=1 min3=0.4 | grey title="Wave at 0.4 s" screenratio=1 label1=Depth label2=Distance unit1=m unit2=m ''') End()