from rsf.proj import *
from rsf.recipes import fdmod
f2m=0.3048
par = dict(
nx=1601,ox=25.*f2m,dx=0.025*f2m,lx='x',ux='km',
nz=801, oz=4.5*f2m,dz=0.025*f2m,lz='z',uz='km',
nt=5001,ot=0.0, dt=0.0009, lt='t',ut='s',
jsnap=200,
kt=100,
nb=100
)
fdmod.param(par)
strvelfile = 'sigsbee2a_stratigraphy.sgy'
Fetch(strvelfile,'sigsbee')
Flow('vraw',strvelfile,'segyread read=data')
Flow('modl','vraw',
'''
scale rscale=%g |
put o1=%g d1=%g o2=%g d2=%g |
window n1=%d min1=%g n2=%d min2=%g
''' % (0.001*f2m,
0 ,0.025*f2m,
10*f2m,0.025*f2m,
par['nz'],par['oz'],
par['nx'],par['ox']
))
Plot ('modl',fdmod.cgrey('mean=y',par))
Result('modl',fdmod.cgrey('mean=y',par))
fdmod.boxarray('ss',
5,
5,
0.5,
14,
10,
0.5,
par)
Plot( 'ss',fdmod.ssplot('',par))
Result('ss',['modl','ss'],'Overlay')
fdmod.horizontal('tH',1.5,par)
par['jrH']=10
par['orH']=14.0
par['nrH']=75
fdmod.vertical('tV',8.5,par)
par['jrV']=20
par['orV']=2.5
par['nrV']=25
for j in ('H','V'):
Flow('r'+j,'t'+j,
'window j2=%d min2=%g n2=%d'%
(par['jr'+j],
par['or'+j],
par['nr'+j]))
Plot( 'r'+j,fdmod.rrplot('',par))
Result('r'+j,['modl','r'+j],'Overlay')
Flow('rA',['rH','rV'],
'cat axis=2 space=n ${SOURCES[1]}')
Plot('rA',['rH','rV'],'Overlay')
Flow('dens','modl',
'math output=1')
Plot( 'dens',fdmod.cgrey('mean=y',par))
Result('dens',['dens','ss','rH','rV'],'Overlay')
Flow('vstr','modl',
'window')
Flow('vsmo','modl',
'smooth rect1=25 rect2=25 repeat=3')
for v in ('vstr','vsmo'):
Plot( v,fdmod.cgrey('mean=y',par))
Result(v,[v,'ss','rH','rV'],'Overlay')
fdmod.wavelet('wav_',10,par)
Flow( 'wav','wav_','transp')
Result('wav','window n2=1000 |'
+ fdmod.waveplot('',par))
fdmod.awefd1('tmpA',
'wfld',
'wav',
'vsmo',
'dens',
'ss',
'rA',
'fsrf=n',
par)
par['nfrm']=int((par['nt']-1)/par['jsnap'])
for i in range(par['nfrm']):
tag = '-%02d'%i
fdmod.wframe('wfld'+tag,
'wfld',i,'pclip=99',par)
Plot( 'wovl'+tag,['wfld'+tag,'ss','rH','rV'],
'Overlay')
Result('wfld'+tag,['wfld'+tag,'ss','rH','rV'],
'Overlay')
Result('wfld',
['wovl-%02d'%i for i in range(par['nfrm'])],
'Movie')
Flow('datA','tmpA',
'''
window squeeze=n f2=%(kt)d |
pad end2=%(kt)d |
put o2=%(ot)g
''' %par)
Flow('datH','datA',
'''
window squeeze=n n1=%d |
put o1=%g d1=%g
'''%(par['nrH'],
par['orH'],
par['jrH']*par['dx']))
Result('datH', 'window j2=4 | transp|'
+ fdmod.dgrey(''%par,par))
Result('wigH','datH','window j2=4 | transp|'
+ fdmod.dwigl('pclip=98'%par,par))
Flow('datV','datA',
'''
window squeeze=n f1=%d |
put o1=%g d1=%g
'''%(par['nrH'],
par['orV'],
par['jrV']*par['dz']))
Result('datV', 'window j2=4 |'
+ fdmod.egrey(''%par,par))
Result('wigV','datV','window j2=4 |'
+ fdmod.ewigl('pclip=98'%par,par))
for j in ('H','V','A'):
fdmod.zom('img'+j,
'dat'+j,
'vsmo',
'dens',
'r'+j,
'fsrf=n',
par)
Plot( 'img'+j,'bandpass flo=2 |'
+ fdmod.cgrey('pclip=99.99',par))
Result('img'+j,['img'+j,'ss','r'+j],'Overlay')
End() |