include ${SEPINC}/SEP.top
#LATOPTS = option=web 'style=jfc,makeidx,html,amsmath'
BINDIR = ./Bin/${MTYPE}
OBJDIR = ./Obj/${MTYPE}
SRCDIR = ./Src
RESDIR = ./Fig
PARDIR = ./Par
TXTDIR = ./Txt

RESULTSCR =   Sis_vel mig_Sis hesian_phase_Sis comp_Sis_full comp_off_mig comp_off_inv_damp comp_off_inv_semb     
RESULTSER = 

UF90FLAGS = -O3 -axP  -static-libcxa
UF90LIBS= -lsepgeef90 -lsep2df90  

data_over_f.H:
	< ${SIGSMULT_DATA}/sigsbee2b_nfs_shot.H Window3d max_memory=1000 max3=60000 |Mute vmute=4920 tmute=2 > t1$@
	< t1$@ Interp maxsize=2100  d3out=75 > t2$@
	< t2$@ Transf shotmig=y is2d=y wei=y f_min=5 f_min1=10 f_max1=30 f_max=35 maxsize=1000 >t3$@
	< t3$@ Pad beg1=32 n1=400 n4=709> $@
	Rm t*$@

data_f.H:
	< ${SIGSMULT_DATA}/sigsbee2b_nfs_shot.H Window3d max_memory=1000 max3=60000 |Mute vmute=4920 tmute=2 > t1$@
	< t1$@ Transf shotmig=y is2d=y wei=y f_min=5 f_min1=10 f_max1=30 f_max=35 maxsize=1000 >t3$@
	< t3$@ Pad beg1=132 n1=500 > $@
	Rm t*$@

wave.H:
	Wavelet n1=1024 o1=0 d1=0.011719 domain=time fund=20 wavelet=ricker2 > t1$@
	Add scale=-1 t1$@ > t2$@
	< t2$@ Transf shotmig=y is2d=y wei=y f_min=5 f_min1=10 f_max1=30 f_max=35 maxsize=1000  >$@
	echo o3=4.91667    d3=0.0833333 >> $@
	Rm t*$@

wave_pad.H:
	Wavelet n1=1024 o1=0 d1=0.011719 domain=time fund=20 wavelet=ricker2 > t1$@
	Add scale=-1 t1$@ > t2$@
	< t2$@ Transf shotmig=y is2d=y wei=y f_min=5 f_min1=10 f_max1=30 f_max=35 maxsize=1000  >t$@
	<t$@ Pad n4out=709 extend=1>> $@
	echo o3=4.91667    d3=0.0833333 o4=10925      d4=75 >> $@
	Rm t*$@

data_over_f_1.H:
	< data_over_f.H Window3d squeeze=n n4=1 f4=100 > t$@
	< t$@ Pad beg1=32 > $@

green_test_1.H:
	@date
	/net/koko/homes/sep/alejandro/research/SPWEI_SERIAL/bin/LINUX/ShotMig  D_d=wave.H V=vel_pad.H W_d=$@  \
	nx=100 ny=1 ox=0 oy=0 dx=75 dy=75 nsx=1 nsy=1 osx=3000 osy=1  \
	nxt=50 nyt=1 oxt=2000 oyt=0 dxt=75 dyt=75 \
	nref=1  taper=y  taper_pcent=2 marine=n firstzW=400

vel_pad.H:
	< ${SIGSMULT_DATA}/sigsbee2b_migration_velocity.H Window> j.H
	echo "hff=-1 gff=-1 d1=25 o2=10025 d2=37.5"      >>j.H
	< j.H Window3d n1=701 j2=2|Pad beg2=2000 n2out=10000 extend=1|Transp> vel_pad.H
	/net/koko/alejandro/plib/pcs2/bin/Wedge.x vel_pad.H axis=2 nn=1 no=0. nd=75. 
	echo  "  label1="x" label2="y" label3="z" " >> vel_pad.H

mig_Sis_Parallel_16000.H:  data_f.H wave.H vel_pad.H ${PARDIR}/go_sis.P 
	@date
	nohup Parallel command=/net/koko/brad/bin/LINUX/ShotMig files="data_f.H,wave.H,vel_pad.H,$@"  \
	tags="D,D_d,V,R" usage="INPUT,INPUT,INPUT,OUTPUT" nblock=60 axis=4,4,5,5 pverb=2  \
	file_type="DISTRIBUTE,COPY,COPY,COPY"  mach_mfile=machinefile_all nx_shots=327 ox_shots=10925. \
	par=${PARDIR}/go_sis.P  taper=y  taper_pcent=2 marine=y watercolumn=6000 #restart=y

mig_Sis_Parallel_pad.H:  data_f.H wave.H vel_pad.H ${PARDIR}/go_sis.P 
	@date
	nohup Parallel command=./ShotMigNew files="data_f_pad.H,wave.H,vel_pad.H,$@"  \
	tags="D,D_d,V,R" usage="INPUT,INPUT,INPUT,OUTPUT" nblock=37 axis=4,4,5,5 pverb=2  \
	file_type="DISTRIBUTE,COPY,COPY,COPY"  mach_mfile=machinefile_half nx_shots=327 ox_shots=10925. \
	par=${PARDIR}/go_sis.P  taper=y  taper_pcent=2 marine=y watercolumn=6000 minx=10925 maxx=60000   #restart=y


test.H:
	/net/koko/brad/bin/LINUX/ShotMigNew D=dat-b.H D_d=wav-b.H V=vel_pad.H R=test.H nref=1 taper=y  taper_pcent=2 marine=y watercolumn=6000 minx=10925 maxx=60040

mig_ang_97.H: 
	< mig_off64.H OFF2ANG  verb=y eps=1 > $@

green_Sis: wave_pad.H vel_pad.H ${PARDIR}/go_sis.P 
	@date
	nohup Parallel command=/net/koko/homes/sep/alejandro/research/SPWEI_SERIAL/bin/LINUX/ShotMig files="wave_pad.H,vel_pad.H,$@.H"  \
	tags="D_d,V,W_d" usage="INPUT,INPUT,OUTPUT" nblock=22 axis=4,5,5 pverb=2  \
	file_type="DISTRIBUTE,COPY,DISTRIBUTE" mach_mfile=machinefile_half \
	nx=770 ny=1 ox=7925 oy=0 dx=75 dy=75 \
	par=${PARDIR}/go_sis.P  taper=y  taper_pcent=2 marine=n firstzW=320 nx_W=66 ny_W=1 ox_W=32000 oy_W=0 dx_W=75 dy_W=75 restart=y
	

green_Sis_t.H:
	< green_Sis.H Transp reshape=2,3,6 maxmemory=1000 maxsise=1000 plane=23 > $@
 



green_Sis_test :  data_over_f.H wave_pad.H vel_pad.H ${PARDIR}/go_sis.P 
	@date
	/net/koko/homes/sep/alejandro/research/SPWEI_SERIAL/bin/LINUX/ShotMig D_d=wave_pad.H V=vel_pad.H  W_d=$@.H \
	nx=750 ny=1 ox=7925 oy=0 dx=75 dy=75 \
	par=${PARDIR}/go_sis.P  taper=y  taper_pcent=2 marine=n firstzW=320 nx_W=66 ny_W=1 ox_W=32000 oy_W=0 dx_W=75 dy_W=75#restart=y 
#	/net/koko/homes/sep/alejandro/research/SPWEI_SERIAL/bin/LINUX/ShotMig D_d=wave_pad.H V=vel_pad.H  W_d=$@ \
  	/net/koko/brad/bin/LINUX/ShotMig D_d=wave_pad.H V=vel_pad.H  W_d=$@ \ 

#mig_Sis_Parallel_16000.H green_Sis_16000.H:  data_over_f.H wave_over.H ${BINDIR}/Wedge.x ${BINDIR}/sp_serial.x ${PARDIR}/go_sis.P
#	< ${SIGSMULT_DATA}/sigsbee2b_migration_velocity.H Window> j.H
#	echo "hff=-1 gff=-1 d1=25 o2=10025 d2=37.5"      >>j.H
#	< j.H Window3d n1=701 |Pad beg2=1000 extend=1|Transp> vel_pad.H
#	${BINDIR}/Wedge.x vel_pad.H axis=2 nn=1 no=0. nd=75. 
#	echo  "  label1="x" label2="y" label3="z" " >> vel_pad.H
#	@date
#	Parallel command=/net/koko/brad/bin/LINUX/ShotMig  files="data_over_f.H,wave_over.H,vel_pad.H,green_Sis_16000.H,$@"  \
#	tags="D,D_d,S,W_d,R" usage="INPUT,INPUT,INPUT,OUTPUT,OUTPUT" nblock=653 axis=4,5,5,5,6 pverb=2 device=eth0 \
#	file_type="DISTRIBUTE,COPY,COPY,DISTRIBUTE,DISTRIBUTE"  mach_mfile=machinefile_all nx_shots=653 ox_shots=6475. \
#	par=${PARDIR}/go_sis.P watercolumn=6500. wtr_steps=2 taper=y  taper_pcent=2 marine=y firstzW= #restart=y

mig_Sis_Parallel_16000_w_stack.H: mig_Sis_Parallel_16000.H  \
	 ${BINDIR}/Pad_mx_nosym.x ${BINDIR}/stack_5d.x
	< mig_Sis_Parallel_16000.H ${BINDIR}/Pad_mx_nosym.x | ${BINDIR}/stack_5d.x > $@

mig_Sis_Parallel_16000_w_stack_t.H: mig_Sis_Parallel_16000_w_stack.H
	Transp < mig_Sis_Parallel_16000_w_stack.H reshape=2,5 maxsize=400>$@


LtL_Sis_az21_ax7_16000_off_w_t.H:./Bin/LINUX/Lt_L_reshape_3D_off.x  green_Sis_16000.H
	date
	Window3d < green_Sis_16000.H max_memory=1000| Transp plane=23 max_memory=1000 reshape=1,2,4,5,6 > green_Sis_16000_reshape.H
	Parallel command=./Bin/LINUX/Lt_L_reshape_3D_off.x  files="green_Sis_16000_reshape.H,$@" \
	tags="stdin,outtag" file_type="DISTRIBUTE,COPY" usage="INPUT,OUTPUT" axis=6,11 nblock=360 \
	nax=7 naz=21 nay=1  mach_mfile=machinefile  marine=y  pverb=2  minix=38775 nx=230 device=eth0 \
	nry=1 nrx=348 nsy=1 nsx=326 ratiox=2 noffx=9 # restart=y #print_all=1
	date

inv_Sis_az21ax7zo_off_eps10_50.H: ${BINDIR}/Sparse_Mxv_inv_off.x mig_Sis_Parallel_16000_w_stack_t.H LtL_Sis_az21_ax7_16000_off_w_t.H
    Window3d <  mig_Sis_Parallel_16000_w_stack_t.H n1=5 j1=2 min1=0.  min3=16000 n3=61 min4=38775 n4=230 squeeze=n| Scale scale_to=1.> ppp.H
    Window3d < LtL_Sis_az21_ax7_16000_off_w_t.H  n8=61 squeeze=n max_memory=500 > ppp1.H
    < ppp1.H ${BINDIR}/Sparse_Mxv_inv_off.x mig=ppp.H  niter=50 eps=10. alpha=.001 na=1 reg_off=0 remov=rmov.H mmov=mmov.H wmov=wmov.H>$@

inv_Sis_az21ax7Diff_off_eps10_50.H: ${BINDIR}/Sparse_Mxv_inv_off.x mig_Sis_Parallel_16000_w_stack_t.H LtL_Sis_az21_ax7_16000_off_w_t.H
    Window3d < mig_Sis_Parallel_16000_w_stack_t.H n1=5 j1=2 min1=0. min3=16000 n3=61 min4=38775 n4=230 squeeze=n| Scale scale_to=1.> ppp.H
    Window3d < LtL_Sis_az21_ax7_16000_off_w_t.H  n8=61 squeeze=n max_memory=500 > ppp1.H
    < ppp1.H ${BINDIR}/Sparse_Mxv_inv_off.x mig=ppp.H  niter=50 eps=10. alpha=.001 na=1 reg_off=1 remov=rmov.H mmov=mmov.H wmov=wmov.H>$

#----------------------------------------------------------

#----------------------------------------------------------


GREYP= Grey clip=10 label1="az (ft)" label2="ax (ft)" label3=" " labelsz=12 titlesz=12 crowd2=.7   \
	    grid=y > /dev/null 
GREYS= Grey  label1="z (ft) " label2="x (ft)" label3=" "  labelsz=8 title=" "  \
		o1num=16000 d1num=1000 d2num=6000  title=" "  > /dev/null \
		labelsz=14 titlesz=14  crowd1=.7  crowd2=.6
GREYC2= Grey   pclip=100 label1="z (ft) " label2="x (ft)" label3=" "  \
	    o1num=16000 d1num=1000 d2num=6000  title=" " > /dev/null \
		labelsz=14 titlesz=14  crowd1=.7  crowd2=.6 
GREYV2= Grey allpos=y  pclip=100 label1="z (ft) " label2="x (ft)" label3="velociy ft/s" labelsz=8 titlesz=8 \
	    wantscalebar=y  crowd1=.75  crowd2=.75 bias=4920 title=" "  > /dev/null
GREYSS= Grey label1="z (ft) " label2="h (ft)"   title=" " labelsz=16 titlesz=16 d1num=300 o1num=16000 crowd=.65 #xll=3 yll=1.2 xur=10 yur=9   crowd=.85   
frames= frame1=0 frame2=100 frame3=0 flat=1 point1=0.668539 point2=0.935094 titlesz=8 wantcoordlabel=-1 crowd=.65
 
${RESDIR}/Sis_vel.v:
	< ${SIGSMULT_DATA}/sigsbee2b_migration_velocity.H Window> j.H
	echo "hff=-1 gff=-1 d1=25 o2=10025 d2=37.5"      >>j.H
	Window3d < j.H  min2=10925 max2=65000 min1=6000 max1=17525| ${GREYV2}  out=pp.v 
	< pp.v vp_annotate batch=y text=${TXTDIR}/text_Sis  | vppen vpstyle=n   > $@
	Rm j.H; \rm pp.v 

${RESDIR}/hesian_phase_Sis.v: LtL_Sis_az21_ax7_16000_off_w_t.H
	cp 	LtL_Sis_az21_ax7_16000_off_w_t.H LtL_1.H
	echo o1=-250 o2=-250 >> LtL_1.H
	Window3d n8=1 min8=17000 n9=1 min9=40000 n1=1 n6=1  < LtL_1.H | ${GREYP} title="(a)"  out=1.v
	Window3d n8=1 min8=17000 n9=1 min9=45000 n1=1 n6=1  < LtL_1.H | ${GREYP} title="(b)"  out=2.v
	Window3d n8=1 min8=17000 n9=1 min9=50000 n1=1 n6=1  < LtL_1.H | ${GREYP} title="(c)"  out=3.v
	Window3d n8=1 min8=17000 n9=1 min9=55000 n1=1 n6=1  < LtL_1.H | ${GREYP} title="(d)"  out=4.v
	vp_SideBySideAniso 1.v 2.v | vppen vpstyle=n txscale=1.8 tyscale=1.8 > top.v
	vp_SideBySideAniso 3.v 4.v | vppen vpstyle=n txscale=1.8 tyscale=1.8 > bot.v
	vp_OverUnderAniso top.v bot.v > $@
	\rm 1.v 2.v 3.v 4.v  top.v bot.v

${RESDIR}/mig_Sis.v: mig_Sis_Parallel_16000_w_stack.H
	Window3d < mig_Sis_Parallel_16000_w_stack.H min1=10925 max1=65000 min2=6000 | Transp | ${GREYS} pclip=97 out=$@ > /dev/null

${RESDIR}/comp_Sis_full.v: LtL_Sis_az21_ax7_16000_off_w_t.H mig_Sis_Parallel_16000_w_stack_t.H inv_Sis_az21ax7zo_off_eps10_50.H inv_Sis_az21ax7Diff_off_eps10_50.H
	Window3d < ${SIGSMULT_DATA}/sigsbee2b_stratigraphy_r.H min1=16000 n1=61 min2=39000 n2=230  | ${GREYC2}  out=0.v  allpos=y bias=5000 title="(a)"
	Window3d f3=10 n3=1 f4=3 n4=1 n8=61 n1=1 n6=1< LtL_Sis_az21_ax7_16000_off_w_t.H | ${GREYC2} pclip=100 out=00.v  allpos=y title="(b)"
	Window3d < mig_Sis_Parallel_16000_w_stack_t.H min1=0 n1=1 min4=39000 n4=230 min3=16000 n3=61  | ${GREYS} pclip=99.9   out=1.v title="(c)"
	Window3d < inv_Sis_az21ax7zo_off_eps10_50.H min1=0 n1=1 min4=39000  min3=16000 n3=61  | ${GREYS} pclip=99.9  out=2.v title="(d)"
	Window3d < inv_Sis_az21ax7Diff_off_eps10_50.H min1=0 n1=1 min4=39000  min3=16000 n3=61  | ${GREYS} pclip=99.9  out=3.v title="(e)"
	vp_OverUnderAniso 0.v 00.v 1.v 2.v 3.v|  vppen vpstyle=n > $@

${RESDIR}/comp_off_mig.v: mig_Sis_Parallel_16000_w_stack_t.H
    Window3d < mig_Sis_Parallel_16000_w_stack_t.H n1=5 j1=2 min1=0. min3=16000 n3=61 min4=38775 n4=230 squeeze=n| Scale scale_to=1.> ppp.H
	Window3d < ppp.H min4=45000 n4=1| Transp | ${GREYSS} title="(a)"  out=1.v >/dev/null
	Window3d < ppp.H min4=50000 n4=1| Transp | ${GREYSS} title="(b)"  out=2.v >/dev/null
	Window3d < ppp.H min4=55000 n4=1| Transp | ${GREYSS} title="(c)"  out=3.v >/dev/null
	vp_SideBySideAniso 1.v 2.v 3.v| vppen  vpstyle=n  > $@


${RESDIR}/comp_off_inv_damp.v: inv_Sis_az21ax7zo_off_eps10_50.H
	Window3d < inv_Sis_az21ax7zo_off_eps10_50.H min4=45000 n4=1| Transp | ${GREYSS} title="(a)"  out=1.v >/dev/null
	Window3d < inv_Sis_az21ax7zo_off_eps10_50.H min4=50000 n4=1| Transp | ${GREYSS} title="(b)"  out=2.v >/dev/null
	Window3d < inv_Sis_az21ax7zo_off_eps10_50.H min4=55000 n4=1| Transp | ${GREYSS} title="(c)"  out=3.v >/dev/null
	vp_SideBySideAniso 1.v 2.v 3.v| vppen  vpstyle=n  > $@

${RESDIR}/comp_off_inv_semb.v: inv_Sis_az21ax7Diff_off_eps10_50.H
	Window3d < inv_Sis_az21ax7Diff_off_eps10_50.H min4=45000 n4=1| Transp | ${GREYSS} title="(a)"  out=1.v >/dev/null
	Window3d < inv_Sis_az21ax7Diff_off_eps10_50.H min4=50000 n4=1| Transp | ${GREYSS} title="(b)"  out=2.v >/dev/null
	Window3d < inv_Sis_az21ax7Diff_off_eps10_50.H min4=55000 n4=1| Transp | ${GREYSS} title="(c)"  out=3.v >/dev/null
	vp_SideBySideAniso 1.v 2.v 3.v| vppen  vpstyle=n  > $@


clean: jclean
	rm -f ./*.stb ./*fix*
	rm -f ./Obj/LINUX/*.o ./Obj/SGI64/*.o
	rm -f ./Bin/LINUX/*.x ./Bin/SGI64/*.x
	rm -f ./Lib/LINUX/* ./Lib/SGI64/*
	rm -f ./Src/*.o ./Src/*.stb ./Src/*.mod ./Src/*fix*

include ${SEPINC}/SEP.bottom
