def fWRrtm(data, wfld, cccc, dens, coor, custom, par): iwindow = ' ' + \ ''' nqz=%(nqz)d oqz=%(oqz)g nqx=%(nqx)d oqx=%(oqx)g jsnap=%(jdata)d jdata=%(jdata)d ''' % par + ' ' fdmod.ewefd(wfld + '_out', wfld, data, cccc, dens, coor, coor, iwindow + custom, par)
def fWRrtm(data, wfld, cccc, dens, coor, custom, par): iwindow = ( " " + """ nqz=%(nqz)d oqz=%(oqz)g nqx=%(nqx)d oqx=%(oqx)g jsnap=%(jdata)d jdata=%(jdata)d """ % par + " " ) fdmod.ewefd(wfld + "_out", wfld, data, cccc, dens, coor, coor, iwindow + custom, par)
def ertm(imag, sdat, rdat, cccc, dens, sacq, racq, iacq, custom, par): swfl = imag + '_us' # source wavefield rwfl = imag + '_ur' # receiver wavefield twfl = imag + '_ut' # temp wavefield sout = imag + '_ds' # source data (not the input sdat!) rout = imag + '_dr' # receiver data (not the input rdat!) iwindow = ' ' + \ ''' nqz=%(nqz)d oqz=%(oqz)g nqx=%(nqx)d oqx=%(oqx)g jsnap=%(jdata)d jdata=%(jdata)d ''' % par + ' ' # source wavefield (z,x,t) fdmod.ewefd(sout, swfl, sdat, cccc, dens, sacq, iacq, " ssou=y opot=n" + custom + iwindow, par) # receiver wavefield (z,x,t) tdat = imag + '_tds' Flow(tdat, rdat, 'reverse which=4 opt=i verb=y') fdmod.ewefd(rout, twfl, tdat, cccc, dens, racq, iacq, " ssou=n opot=n" + custom + iwindow, par) # Flow(rwfl,twfl,'reverse which=8 opt=i verb=y') # ------------------------------------------------------------ Flow(swfl + '1', swfl, 'window n2=1 f2=0') Flow(swfl + '2', swfl, 'window n2=1 f2=1') Flow(rwfl + '1', twfl, 'window n2=1 f2=0 | reverse which=4 opt=i verb=y') Flow(rwfl + '2', twfl, 'window n2=1 f2=1 | reverse which=4 opt=i verb=y') # conventional (cross-correlation zero-lag) imaging condition for i in ('1', '2'): for j in ('1', '2'): Flow(imag + i + j, [swfl + i, rwfl + j], 'xcor2d uu=${SOURCES[1]} axis=3 verb=y nbuf=100') Flow(imag, [imag + '11', imag + '12', imag + '21', imag + '22'], 'cat axis=3 space=n ${SOURCES[1:4]}')