include ${SEPINC}/SEP.top

UF90LIBS = ${GEELIB}
INVRAS   = n
FAT      = 3

SRCDIR = ./Src
BINDIR = ./Bin
OBJDIR = ./Obj
RESDIR = ./Fig
PARDIR = ./Par
DATDIR = ./Dat

S = ${SRCDIR}
B = ${BINDIR}
O = ${OBJDIR}
R = ${RESDIR}
P = ${PARDIR}
D = ${DATDIR}

G = Grey pclip=100 wantscalebar=y titlesz=16 labelsz=14 color=V > /dev/null

# --------------------------------------------------------------------------------
# #################  BEGIN CHEVRON RESULTS AND FIGURES  ##########################
# --------------------------------------------------------------------------------
s2000.5 w2000.5:
	cp ${D}/s2000.5 .
	cp ${D}/w2000.5 .

seisbin.H seisfold.H wellbin.H wellfold.H xyzseis.H xyzwell.H : ${B}/BinChevron.x ${P}/grid.P s2000.5 w2000.5
	${B}/BinChevron.x par=${P}/grid.P binseis=s.H binwell=w.H xyzseis=xyzseis.H xyzwell=xyzwell.H > /dev/null
	< s.H  Window n3=1 f3=0 > seisbin.H
	< s.H  Window n3=1 f3=1 > seisfold.H
	< w.H  Window n3=1 f3=0 > wellbin.H
	< w.H  Window n3=1 f3=1 > wellfold.H

# --------------------------------------------------------------------------------
# ### REPLACE THE FOLLOWING TRIVIAL RULE WITH ONE USING YOUR NEW FITPLANE.X ######
# --------------------------------------------------------------------------------

seisplane.H: seisbin.H
	< seisbin.H  Add scale=0 > $@

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

seisfill1.H:  seisfold.H seisbin.H ${P}/seisfill.P ${B}/Lapfill2.x
	< seisbin.H  Add add=-1577.58 > sb.H
	Cp seisfold.H sf.H > /dev/null
	Math exp="file1/file2" file1=sf.H file2=seisfold.H >inter.H
	Math exp="file1*file2" file1=sb.H file2=inter.H>s.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=1437 scale=0.0 >inter.H 
	Add add=1577.58 <inter.H > 0.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=1437           >inter.H 
	Add add=1577.58 <inter.H> 1.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=3013           >inter.H 
	Add add=1577.58 <inter.H> 2.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=9427           >inter.H
	Add add=1577.58 <inter.H> 3.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=9321           >inter.H
	Add add=1577.58 <inter.H> 4.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=4801           >inter.H 
	Add add=1577.58 <inter.H> 5.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=5820           >inter.H
	Add add=1577.58 <inter.H> 6.H
	Cat 0.H 1.H 2.H 3.H 4.H 5.H 6.H > $@

seisfill2.H:  seisfold.H seisbin.H ${P}/seisfill.P seisplane.H ${B}/Lapfill2.x
	Add scale=1,-1 seisbin.H seisplane.H > sb.H
	Cp seisfold.H sf.H > /dev/null
	Math exp="file1/file2" file1=sf.H file2=seisfold.H >inter.H
	Math exp="file1*file2" file1=sb.H file2=inter.H>s.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=1437 scale=0.0 >inter.H 
	Add seisplane.H inter.H> 0.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=1437           >inter.H 
	Add seisplane.H inter.H> 1.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=3013           >inter.H
	Add seisplane.H inter.H> 2.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=9427           >inter.H
	Add seisplane.H inter.H> 3.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=9321           >inter.H
	Add seisplane.H inter.H> 4.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=4801           >inter.H
	Add seisplane.H inter.H> 5.H
	< s.H  ${B}/Lapfill2.x par=${P}/seisfill.P seed=5820           >inter.H 
	Add seisplane.H inter.H> 6.H
	Cat 0.H 1.H 2.H 3.H 4.H 5.H 6.H > $@

${R}/seisfill.v3 ${R}/seisfill.v: seisfill1.H seisfill2.H seisbin.H seisplane.H seisfill-avg1.H seisfill-avg2.H
	< seisbin.H                       ${G} bias=1750 clip=750 out=${R}/sb.v  title="Binned Seismic"
	< seisplane.H                     ${G} bias=1750 clip=750 out=${R}/st.v  title="Seismic trend"
	< seisfill1.H  Window n3=1 f3=0 | ${G} bias=1750 clip=750 out=${R}/s10.v title="Subtr. mean - Normal"
	< seisfill1.H  Window n3=1 f3=1 | ${G} bias=1750 clip=750 out=${R}/s11.v title="Subtr. mean - Real. 1"
	< seisfill1.H  Window n3=1 f3=2 | ${G} bias=1750 clip=750 out=${R}/s12.v title="Subtr. mean - Real. 2"
	< seisfill1.H  Window n3=1 f3=3 | ${G} bias=1750 clip=750 out=${R}/s13.v title="Subtr. mean - Real. 3"
	< seisfill-avg1.H                 ${G} bias=1750 clip=750 out=${R}/s1a.v title="Subtr. mean - Avg. of 6"
	< seisfill2.H  Window n3=1 f3=0 | ${G} bias=1750 clip=750 out=${R}/s20.v title="Subtr. trend - Normal"
	< seisfill2.H  Window n3=1 f3=1 | ${G} bias=1750 clip=750 out=${R}/s21.v title="Subtr. trend - Real. 1"
	< seisfill2.H  Window n3=1 f3=2 | ${G} bias=1750 clip=750 out=${R}/s22.v title="Subtr. trend - Real. 2"
	< seisfill2.H  Window n3=1 f3=3 | ${G} bias=1750 clip=750 out=${R}/s23.v title="Subtr. trend - Real. 3"
	< seisfill-avg2.H                 ${G} bias=1750 clip=750 out=${R}/s2a.v title="Subtr. trend - Avg. of 6"
	vppen gridnum=2,2 ${R}sb.v ${R}st.v ${R}s10.v ${R}s20.v > ${R}/0.v
	vppen gridnum=2,2 ${R}sb.v ${R}st.v ${R}s11.v ${R}s21.v > ${R}/1.v
	vppen gridnum=2,2 ${R}sb.v ${R}st.v ${R}s12.v ${R}s22.v > ${R}/2.v
	vppen gridnum=2,2 ${R}sb.v ${R}st.v ${R}s13.v ${R}s23.v > ${R}/3.v
	vppen gridnum=2,2 ${R}sb.v ${R}st.v ${R}s1a.v ${R}s2a.v > ${R}/a.v
	vp_Movie ${R}/0.v ${R}/1.v ${R}/2.v ${R}/3.v ${R}/a.v > ${R}/seisfill.v3
	< seisbin.H                       ${G} color=I bias=1750 clip=750 out=${R}/sb.v  title="Binned Seismic"
	< seisplane.H                     ${G} color=I bias=1750 clip=750 out=${R}/st.v  title="Seismic trend"
	< seisfill1.H  Window n3=1 f3=0 | ${G} color=I bias=1750 clip=750 out=${R}/s10.v title="Subtr. mean - Normal"
	< seisfill1.H  Window n3=1 f3=1 | ${G} color=I bias=1750 clip=750 out=${R}/s11.v title="Subtr. mean - Real. 1"
	< seisfill1.H  Window n3=1 f3=2 | ${G} color=I bias=1750 clip=750 out=${R}/s12.v title="Subtr. mean - Real. 2"
	< seisfill1.H  Window n3=1 f3=3 | ${G} color=I bias=1750 clip=750 out=${R}/s13.v title="Subtr. mean - Real. 3"
	< seisfill-avg1.H                 ${G} color=I bias=1750 clip=750 out=${R}/s1a.v title="Subtr. mean - Avg. of 6"
	< seisfill2.H  Window n3=1 f3=0 | ${G} color=I bias=1750 clip=750 out=${R}/s20.v title="Subtr. trend - Normal"
	< seisfill2.H  Window n3=1 f3=1 | ${G} color=I bias=1750 clip=750 out=${R}/s21.v title="Subtr. trend - Real. 1"
	< seisfill2.H  Window n3=1 f3=2 | ${G} color=I bias=1750 clip=750 out=${R}/s22.v title="Subtr. trend - Real. 2"
	< seisfill2.H  Window n3=1 f3=3 | ${G} color=I bias=1750 clip=750 out=${R}/s23.v title="Subtr. trend - Real. 3"
	< seisfill-avg2.H                 ${G} color=I bias=1750 clip=750 out=${R}/s2a.v title="Subtr. trend - Avg. of 6"
	vppen gridnum=3,4 ${R}/sb.v ${R}/s10.v ${R}/s20.v ${R}/st.v  ${R}/s11.v ${R}/s21.v \
	                 ${R}/s1a.v ${R}/s12.v ${R}/s22.v ${R}/s2a.v ${R}/s13.v ${R}/s23.v > ${R}/seisfill.v

seisfill-avg%.H: seisfill%.H
	< seisfill$*.H  Window n3=1 f3=1 > 1.H
	< seisfill$*.H  Window n3=1 f3=2 > 2.H
	< seisfill$*.H  Window n3=1 f3=3 > 3.H
	< seisfill$*.H  Window n3=1 f3=4 > 4.H
	< seisfill$*.H  Window n3=1 f3=5 > 5.H
	< seisfill$*.H  Window n3=1 f3=6 > 6.H
	Add 1.H 2.H 3.H 4.H 5.H 6.H | Add scale=0.167 > $@

${R}/wellseisfold.v3 ${R}/wellseisfold.v: seisbin.H seisfold.H wellbin.H wellfold.H
	< wellbin.H   ${G} color=I bias=1500 out=${R}/wb.v   title="Binned well data"
	< wellfold.H  ${G} color=I allpos=y  out=${R}/wf.v   title="Well data fold chart"
	< seisbin.H   ${G} color=I bias=1500 out=${R}/sb.v   title="Binned seismic data"
	< seisfold.H  ${G} color=I allpos=y  out=${R}/sf.v   title="Seismic data fold chart"
	vppen gridnum=2,2  ${R}/wb.v ${R}/wf.v ${R}/sb.v ${R}/sf.v > ${R}/wellseisfold.v
	vppen gridnum=2,2  ${R}/wb.v ${R}/wf.v ${R}/sb.v ${R}/sf.v > ${R}/wellseisfold.v3

# --------------------------------------------------------------------------------
# #############  BEGIN INVERSE INTERPOLATION RESULTS AND FIGURES  ################
# --------------------------------------------------------------------------------

GRAPH = Graph clip=1 max2=1 min2=-1 crowd=.99 > /dev/null
DOTY = Dots dots=0 connect=0 gaineach=0 constsep=1 strings=0 clip=1.2 overlap=1.5 > /dev/null
O1D1 = `<alias.P Get o1 d1`
LBL = label1="Iterations"

${R}/multreal.v ${R}/multreal.v3: alias.H ${P}/alias.P ${B}/Invint.x 1-1a.H 
	Cat axis=2 alias.H alias.H > a2.H
	Cat axis=2 a2.H a2.H       > a4.H
	Cat axis=2 a4.H a4.H       > a8.H
	< ${P}/alias.P ${B}/Invint.x n1=200 ${O1D1} nframe=1 scale=0.0 filtin=1-1a.H > lev0.H
	Cat axis=2 lev0.H lev0.H   > l2.H
	Cat axis=2 l2.H l2.H       > l4.H
	Cat axis=2 l4.H l4.H       > l8.H
	< ${P}/alias.P ${B}/Invint.x n1=200 ${O1D1} nframe=8 scale=0.05 filtin=1-1a.H > levint.H
	Cat a8.H l8.H levint.H axis=1 > a.H
	< a.H ${GRAPH} n1=200 dash=1,2,0 plotfat=6 n3=8 n2=3 legend=1 \
	               curvelabel=Known:Normal:Realization out=${R}/multreal.v3
	< a8.H     ${DOTY}  strings=1 out=${R}/alias.v
	< levint.H ${DOTY}  connect=1 out=${R}/levint.v
	vp_Overlay ${R}/alias.v ${R}/levint.v > ${R}/multreal.v

alias.H ${P}/alias.P: ${B}/Alias.x
	${B}/Alias.x tmax=80. pairs=1   n1=200 > ${P}/alias.P
	${B}/Alias.x tmax=80. pairs=0   n1=200 >      alias.H


1%.H : ${D}/1%.HH
	< $< Dd esize=4 > 1$*.H

default: ${R}/wellseisfold.pdf ${R}/seisfill.pdf ${R}/multreal.pdf

clean: jclean
	rm -f s2000.5 w2000.5

burn: clean
	rm ${B}/*
	rm ${O}/*
	rm ${R}/*.pdf
	rm ${R}/*.ps
	rm ${R}/*.v*

include ${SEPINC}/SEP.bottom
