def shotcoord(ss,par): for iexp in range(par['ns']): etag = "-e%03d" % iexp xsou = par['os'] + (par['fs'] + iexp * par['js']) * par['ds'] fdmod.point('ss'+etag,xsou,par['ozimg'],par) Plot(ss+etag,fdmod.ssplot('plotcol=5',par)) Plot(ss,[ss+'-e%03d'%x for x in range(par['ns'])], 'cat axis=3 space=n ${SOURCES[1:%d]} |' % par['ns'] + fdmod.ssplot('plotcol=5',par))
def thrsou(ss, par): fdmod.point(ss + '0', par['ox'] + 3 * par['nx'] / 10 * par['dx'], 0, par) fdmod.point(ss + '1', par['ox'] + 5 * par['nx'] / 10 * par['dx'], 0, par) fdmod.point(ss + '2', par['ox'] + 6 * par['nx'] / 10 * par['dx'], 0, par) Flow(ss, [ss + '0', ss + '1', ss + '2'], 'cat axis=2 space=n ${SOURCES[0:3]}', stdin=0)
def new(par): fdmod.point3('ssold0', par['ox'] + 3 * par['nx'] / 10 * par['dx'], par['oz'], 1, par) fdmod.point3('ssold1', par['ox'] + 5 * par['nx'] / 10 * par['dx'], par['oz'], 1, par) fdmod.point3('ssold2', par['ox'] + 6 * par['nx'] / 10 * par['dx'], par['oz'], 1, par) Flow('ssold', ['ssold0', 'ssold1', 'ssold2'], 'cat axis=2 space=n ${SOURCES[0:3]}', stdin=0) Flow('wavold', 'wav', 'window') fdmod.lmodel('doold', 'woold', 'ddold', 'wdold', 'wavold', 'velo', 'refl', 'ssold', 'rr', 'jsnap=100 nbz=100 nbx=100 ', par) Result('woold', fdmod.wgrey('', par)) Result('wdold', fdmod.wgrey('', par)) fdmod.point('ssnew0', par['ox'] + 3 * par['nx'] / 10 * par['dx'], par['oz'], par) fdmod.point('ssnew1', par['ox'] + 5 * par['nx'] / 10 * par['dx'], par['oz'], par) fdmod.point('ssnew2', par['ox'] + 6 * par['nx'] / 10 * par['dx'], par['oz'], par) Flow('ssnew', ['ssnew0', 'ssnew1', 'ssnew2'], 'cat axis=2 space=n ${SOURCES[0:3]}', stdin=0) Flow('wavnew', 'wav', 'window squeeze=n') fdmod.lwefd1('donew', 'wonew', 'ddnew', 'wdnew', 'wavnew', 'velo', 'dens', 'refl', 'ssnew', 'rr', 'jsnap=100 nb=100 ', par) Result('wonew', fdmod.wgrey('', par)) Result('wdnew', fdmod.wgrey('', par))
def twosou(ss, par): fdmod.point(ss + '0', par['ox'] + 3.5 * par['nx'] / 10 * par['dx'], 0, par) fdmod.point(ss + '1', par['ox'] + 5.0 * par['nx'] / 10 * par['dx'], 0, par) Flow(ss, [ss + '0', ss + '1'], 'cat axis=2 space=n ${SOURCES[0:2]}', stdin=0)
def onesou(ss, par): fdmod.point(ss + '1', par['ox'] + 5 * par['nx'] / 10 * par['dx'], 0, par) Flow(ss, ss + '1', 'window')