include ${SEPINC}/SEP.top

RES_PATH = /net/santorin/scr2/louis/6planes-3rd
RES_PATH2 = /net/santorin/scr3/louis/6planes-3rd
RES_PATH3 = /net/santorin/scr4/louis/6planes-3rd

BINDIR = /net/kana/louis/Bin/$(SEP_ARCH)
3DSI-BINDIR = /net/kana/book/3DI/Bin/$(SEP_ARCH)

TT  = Grey eout=1 pclip=95 gainpanel=a
T12 = Transp core=50000 plane=12
T23 = Transp core=50000 plane=23
P = ./Par

######################## Prepare slowness ############################

slowness.H: $(P)/grad.P
	$(BINDIR)/slow_grad.x par=$(P)/grad.P > $@ datapath=$(RES_PATH)/

######################### Prepare data ################################

data-freq.H : 6planes-3rd-good-pad.HH
	/net/kana/book/3DI/Bin/SGI64/Transf f_min=0 f_max=55 dim=4 \
	< 6planes-3rd-good-pad.HH > $@ \
	out=$(RES_PATH)/DATA_$(@F)@ \
	2>$@.log

data-freq-transp.H: data-freq.H
	$(T12) < data-freq.H | $(T23) > $@ datapath=$(RES_PATH)/

6planes-pad.H: 6planes-3rd-good-pad.HH
	Cp 6planes-3rd-good-pad.HH junk.H
	< junk.H /net/kana/paul/plib/bin/SGI64/FakeAxis \
	axis=3 nn=1 no=0. nd=30. >> junk.H
	echo label1="time" label2="offset-x" >> junk.H
	echo label3="offset-y" label4="cmp-x" >> junk.H
	echo label5="cmp-y" >> junk.H
	$(BINDIR)/Zero_pad.x < junk.H n3out=16 > $@ \
	datapath=$(RES_PATH3)/
	Rm junk.H

data-freq-hy-pad.H: 6planes-pad.H
	$(3DSI-BINDIR)/Transf f_min=0 f_max=55 dim=5 \
	< 6planes-pad.H > $@ \
	out=$(RES_PATH2)/DATA_$(@F)@ \
	2>$@.log

data-freq-hy-pad-transp.H: data-freq-hy-pad.H
	echo "n1=3072 n2=4096 n3=225 n4=1 n5=1" >>data-freq-hy-pad.H
	$(T12) <data-freq-hy-pad.H >data-freq-hy-pad-transp.H n2in=4096 \
	datapath=$(RES_PATH3)/DATA_
	echo "n1=192 n2=16 n3=64 n4=64 n5=225" >>data-freq-hy-pad.H
	echo "n1=64      o1=0.000000     d1=25.000000 " >> $@
	echo "n2=64      o2=0.000000     d2=25.000000 " >> $@
	echo "n3=192     o3=0.000000     d3=15.000000 " >> $@
	echo "n4=16      o4=0.000000     d4=30.000000 " >> $@
	echo "n5=225     o5=0.000000     d5=0.244141 " >> $@
	echo label1="cmp-x" label2="cmp-y" >> $@
	echo label3="offset-x" label4="offset-y" >> $@
	echo label5="freq" >> $@

#-------narrow-azimuth data------------------
6planes-NApad.H: 6planes-3rd.HH
	Cp 6planes-3rd.HH junk.H
	< junk.H /net/kana/paul/plib/bin/SGI64/FakeAxis \
	axis=3 nn=1 no=0. nd=25. >> junk.H
	echo label1="time" label2="offset-x" >> junk.H
	echo label3="offset-y" label4="cmp-x" >> junk.H
	echo label5="cmp-y" >> junk.H
	$(BINDIR)/Zero_pad.x < junk.H n3out=5 > $@ \
	datapath=$(RES_PATH)/
	Rm junk.H

data-freq-hy-NApad.H: 6planes-NApad.H
	$(3DSI-BINDIR)/Transf f_min=0 f_max=55 dim=5 \
	< 6planes-NApad.H > $@ \
	out=$(RES_PATH2)/DATA_$(@F)@ \
	2>$@.log

data-freq-hy-NApad-transp.H: data-freq-hy-NApad.H
	/net/kana/paul/plib/bin/SGI64/F12T34 data-freq-hy-NApad.H $@ \
	datapath=$(RES_PATH)/DATA_
	echo label1="cmp-x" label2="cmp-y" >> $@
	echo label3="offset-x" label4="offset-y" >> $@
	echo label5="freq" >> $@

#########################  Beginning computation #####################

# common-azimuth DSR - CIG are px
comaz-mig.H: data-freq-transp.H slowness.H $(P)/comaz-mig.P
	/bin/time $(3DSI-BINDIR)/ComAz_salt.x par=$(P)/comaz-mig.P \
	Slow=slowness.H \
	Data=data-freq-transp.H \
	>comaz-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

# common-azimuth DSR - CIG are px
CA-mig.H: data-freq-transp.H slowness.H $(P)/CA-mig.P
	/bin/time $(BINDIR)/CAM.x par=$(P)/CA-mig.P \
	Slow=slowness.H \
	Data=data-freq-transp.H \
	>CA-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

# full 3-D DSR on common-azimuth data (4-D,  no padding)
# CIGs are px
full-mig.H: data-freq-transp.H slowness.H $(P)/full-mig.P
	/bin/time $(BINDIR)/Full3D_salt.x par=$(P)/full-mig.P \
	Slow=slowness.H \
	Data=data-freq-transp.H \
	>full-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

# full 3-D DSR on common-azimuth padded data (5-D)
# CIGs are px projections 
full-hy-mig.H: data-freq-hy-pad-transp.H slowness.H $(P)/full-hy-mig.P
	/bin/time $(BINDIR)/Full3D_salt.x par=$(P)/full-hy-mig.P \
	Slow=slowness.H \
	Data=data-freq-hy-pad-transp.H \
	>full-hy-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

# full 3-D DSR on common-azimuth padded data (5-D)
# CIGs are |p| projections on px axis
fulltst-hy-mig.H: data-freq-hy-pad-transp.H slowness.H $(P)/fulltst-hy-mig.P
	/bin/time $(BINDIR)/Full3Dtst_salt.x par=$(P)/fulltst-hy-mig.P \
	Slow=slowness.H \
	Data=data-freq-hy-pad-transp.H \
	>fulltst-hy-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

# NAM DSR on common-azimuth narrow-azimuth padded data (5-D)
# CIGs are px projections 
NA-mig.H: data-freq-hy-NApad-transp.H slowness.H $(P)/NA-mig.P
	/bin/time $(BINDIR)/NAM.x par=$(P)/NA-mig.P \
	Slow=slowness.H \
	Data=data-freq-hy-NApad-transp.H \
	>NA-mig-head.H \
	Image=$@ \
	datapath=$(RES_PATH)/DATA_ \
	2>$@.log

#############################  Beginning graphics ############################

%.T : %.H
	$(TT) < $*.H > $@ datapath=$(RES_PATH)/DATA_

CA-and-full-hy.H:
	echo "n1=4096 n2=48 n3=100 n4=1" >> CA-mig.H
	echo "n1=4096 n2=48 n3=100 n4=1" >> full-hy-mig.H
	Merge axis=2 space=n CA-mig.H full-hy-mig.H > j1.H
	Merge axis=2 space=n full-hy-mig.H CA-mig.H > j2.H
	Merge axis=3 space=n j1.H  j2.H  > $@
	echo "n1=64 n2=64 n3=96 n4=200" >> $@
	echo "n1=64 n2=64 n3=48 n4=100" >> CA-mig.H
	echo "n1=64 n2=64 n3=48 n4=100" >> full-hy-mig.H

#############################  Beginning misc ############################

.PRECIOUS: 

clean:jclean	

include ${SEPINC}/SEP.bottom
