def interpSep2d(wtlst,uAz,uAx,cAref,n,par): for j in range(n): ref="-%02d"%j Flow('cA'+ref,'cAref','window n1=1 f1=%d squeeze=n'%j) Flow('nu'+ref,'nuref','window n1=1 f1=%d'%j) fdd.separatorD('dzK'+ref,'dxK'+ref, 'spkk', 'cA'+ref, 'y','k','gauss', 0.866, 8, 25, 25, par) fdd.SepK('P'+ref,'S'+ref, uAz,uAx, 'dzK'+ref+'-tmp','dxK'+ref+'-tmp', par) for wt in wtlst: Flow('PP'+ref+'-'+wt,['wt'+wt,'P'+ref], 'window n3=1 f3=%d | add ${SOURCES[1]} mode=p'%j ) Flow('SS'+ref+'-'+wt,['wt'+wt,'S'+ref], 'window n3=1 f3=%d | add ${SOURCES[1]} mode=p'%j ) for wt in wtlst: Flow('PP-'+wt, map(lambda x: 'PP-%02d-' % x +wt, range(n)), 'add ${SOURCES[1:%d]}'%n ) Flow('SS-'+wt, map(lambda x: 'SS-%02d-' % x +wt, range(n)), 'add ${SOURCES[1:%d]}'%n )
def AnalyInterp2d(suffix, uAz, uAx, cAref, nepdel, nnu, epsilon, delta, nu, par): listPnu = [] listSnu = [] for j in range(0, nnu): refnu = "%01d" % j nux = nu[j] print nux listP = [] listS = [] Flow('nu' + refnu, '', 'spike n1=1 mag=%f' % nux) for i in range(0, nepdel): ref = "%01d" % i ep = epsilon[i] de = delta[i] ca = stiff.tti2d_point(3, 1.5, 2.4, ep, de, nux) Flow( 'cA' + ref + '_nu' + refnu, '', 'spike n3=6 nsp=6 k3=1,2,3,4,5,6 mag=%f,%f,%f,%f,%f,%f n1=1 n2=1 ' % (ca[0], ca[1], ca[2], ca[3], ca[4], ca[5])) fdd.separatorD('dzK' + ref + '_nu' + refnu, 'dxK' + ref + '_nu' + refnu, 'spkk', 'cA' + ref + '_nu' + refnu, 'y', 'k', 'gauss', 0.866, 8, 25, 25, par) listP.append('PP' + ref + '_nu' + refnu) listS.append('SS' + ref + '_nu' + refnu) fdd.SepK('P' + ref + '_nu' + refnu, 'S' + ref + '_nu' + refnu, 'uAz', 'uAx', 'dzK' + ref + '_nu' + refnu + '-tmp', 'dxK' + ref + '_nu' + refnu + '-tmp', par) Flow('PP' + ref + '_nu' + refnu, ['wtepdel', 'P' + ref + '_nu' + refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p' % (i)) Flow('SS' + ref + '_nu' + refnu, ['wtepdel', 'S' + ref + '_nu' + refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p' % (i)) Flow('PP_nu' + refnu, listP, 'add ${SOURCES[1:%d]}' % nepdel) Flow('SS_nu' + refnu, listS, 'add ${SOURCES[1:%d]}' % nepdel) listPnu.append('sepp_nu' + refnu + '_P_wtd') listSnu.append('sepp_nu' + refnu + '_S_wtd') Flow('sepp_nu' + refnu + '_P_wtd', ['wtnu', 'PP_nu' + refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p' % (j)) Flow('sepp_nu' + refnu + '_S_wtd', ['wtnu', 'SS_nu' + refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p' % (j)) Flow('PP-' + suffix, listPnu, 'add ${SOURCES[1:%d]}' % nepdel) Flow('SS-' + suffix, listSnu, 'add ${SOURCES[1:%d]}' % nepdel)
def AnalyInterp2d(suffix,uAz,uAx,cAref,nepdel,nnu,epsilon,delta,nu,par): listPnu=[] listSnu=[] for j in range(0,nnu): refnu="%01d"%j nux=nu[j] print nux listP=[] listS=[] Flow('nu'+refnu,'','spike n1=1 mag=%f'%nux) for i in range(0,nepdel): ref="%01d"%i ep = epsilon[i] de = delta[i] ca = stiff.tti2d_point(3, 1.5, 2.4, ep, de, nux) Flow('cA'+ref+'_nu'+refnu,'', 'spike n3=6 nsp=6 k3=1,2,3,4,5,6 mag=%f,%f,%f,%f,%f,%f n1=1 n2=1 ' %(ca[0],ca[1],ca[2],ca[3],ca[4],ca[5]) ) fdd.separatorD('dzK'+ref+'_nu'+refnu,'dxK'+ref+'_nu'+refnu, 'spkk', 'cA'+ref+'_nu'+refnu, 'y','k','gauss',0.866 ,8, 25, 25,par) listP.append('PP'+ref+'_nu'+refnu) listS.append('SS'+ref+'_nu'+refnu) fdd.SepK('P'+ref+'_nu'+refnu,'S'+ref+'_nu'+refnu, 'uAz','uAx', 'dzK'+ref+'_nu'+refnu+'-tmp','dxK'+ref+'_nu'+refnu+'-tmp', par) Flow('PP'+ref+'_nu'+refnu,['wtepdel','P'+ref+'_nu'+refnu],'window n3=1 f3=%d |add ${SOURCES[1]} mode=p'%(i) ) Flow('SS'+ref+'_nu'+refnu,['wtepdel','S'+ref+'_nu'+refnu],'window n3=1 f3=%d |add ${SOURCES[1]} mode=p'%(i) ) Flow('PP_nu'+refnu,listP,'add ${SOURCES[1:%d]}'%nepdel) Flow('SS_nu'+refnu,listS,'add ${SOURCES[1:%d]}'%nepdel) listPnu.append('sepp_nu'+refnu+'_P_wtd') listSnu.append('sepp_nu'+refnu+'_S_wtd') Flow('sepp_nu'+refnu+'_P_wtd',['wtnu','PP_nu'+refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p'%(j) ) Flow('sepp_nu'+refnu+'_S_wtd',['wtnu','SS_nu'+refnu], 'window n3=1 f3=%d |add ${SOURCES[1]} mode=p'%(j) ) Flow('PP-'+suffix,listPnu,'add ${SOURCES[1:%d]}'%nepdel) Flow('SS-'+suffix,listSnu,'add ${SOURCES[1:%d]}'%nepdel)
def interpSep2d(wtlst, uAz, uAx, cAref, n, par): for j in range(n): ref = "-%02d" % j Flow('cA' + ref, 'cAref', 'window n1=1 f1=%d squeeze=n' % j) Flow('nu' + ref, 'nuref', 'window n1=1 f1=%d' % j) fdd.separatorD('dzK' + ref, 'dxK' + ref, 'spkk', 'cA' + ref, 'y', 'k', 'gauss', 0.866, 8, 25, 25, par) fdd.SepK('P' + ref, 'S' + ref, uAz, uAx, 'dzK' + ref + '-tmp', 'dxK' + ref + '-tmp', par) for wt in wtlst: Flow('PP' + ref + '-' + wt, ['wt' + wt, 'P' + ref], 'window n3=1 f3=%d | add ${SOURCES[1]} mode=p' % j) Flow('SS' + ref + '-' + wt, ['wt' + wt, 'S' + ref], 'window n3=1 f3=%d | add ${SOURCES[1]} mode=p' % j) for wt in wtlst: Flow('PP-' + wt, map(lambda x: 'PP-%02d-' % x + wt, range(n)), 'add ${SOURCES[1:%d]}' % n) Flow('SS-' + wt, map(lambda x: 'SS-%02d-' % x + wt, range(n)), 'add ${SOURCES[1:%d]}' % n)