
# Pipeline for Target blueflat

all: stage-overscan stage-gain stage-ydist-copy stage-orders-copy stage-xdist-copy stage-wdist-copy stage-subscat stage-normalize stage-combine ../targ_blueflat

stage-overscan:
# Overscan Subtraction, Trimming, and Image Reorientation.
	echo Stage:  Overscan Subtraction, Trimming, and Image Reorientation.
	magebias /data1/Data/MagE/processed_2d/../ut170530_31/mage0016.fits blueflat_flat0016.fits
	magebias /data1/Data/MagE/processed_2d/../ut170530_31/mage0017.fits blueflat_flat0017.fits
	magebias /data1/Data/MagE/processed_2d/../ut170530_31/mage0018.fits blueflat_flat0018.fits
	magebias /data1/Data/MagE/processed_2d/../ut170530_31/mage0019.fits blueflat_flat0019.fits
	magebias /data1/Data/MagE/processed_2d/../ut170530_31/mage0020.fits blueflat_flat0020.fits
	touch stage-overscan

stage-gain: stage-overscan
# Compute the gain.
	echo Stage:  Compute the gain.
	getGain -b 20 -nb 100  blueflat_flat0016.fits blueflat_flat0017.fits > GAIN.dat
	touch stage-gain

stage-ydist-copy: stage-gain
# Copying the Y Distortion.
	echo Stage:  Copying the Y Distortion.
	copyrect -ydist lamp.fits blueflat_flat0016.fits
	copyrect -ydist lamp.fits blueflat_flat0017.fits
	copyrect -ydist lamp.fits blueflat_flat0018.fits
	copyrect -ydist lamp.fits blueflat_flat0019.fits
	copyrect -ydist lamp.fits blueflat_flat0020.fits
	touch stage-ydist-copy

stage-orders-copy: stage-ydist-copy
# Copy the Order Edges.
	echo Stage:  Copy the Order Edges.
	copyslit -fwhm 20.000000 -ydist -fft lamp.fits blueflat_flat0016.fits
	copyslit -fwhm 20.000000 -ydist -fft lamp.fits blueflat_flat0017.fits
	copyslit -fwhm 20.000000 -ydist -fft lamp.fits blueflat_flat0018.fits
	copyslit -fwhm 20.000000 -ydist -fft lamp.fits blueflat_flat0019.fits
	copyslit -fwhm 20.000000 -ydist -fft lamp.fits blueflat_flat0020.fits
	touch stage-orders-copy

stage-xdist-copy: stage-orders-copy
# Copying the X Distortion.
	echo Stage:  Copying the X Distortion.
	copyrect -xdist lamp.fits blueflat_flat0016.fits
	copyrect -xdist lamp.fits blueflat_flat0017.fits
	copyrect -xdist lamp.fits blueflat_flat0018.fits
	copyrect -xdist lamp.fits blueflat_flat0019.fits
	copyrect -xdist lamp.fits blueflat_flat0020.fits
	touch stage-xdist-copy

stage-wdist-copy: stage-xdist-copy
# Copying the Wavelength Solution.
	echo Stage:  Copying the Wavelength Solution.
	copyrect -wdist lamp.fits blueflat_flat0016.fits
	copyrect -wdist lamp.fits blueflat_flat0017.fits
	copyrect -wdist lamp.fits blueflat_flat0018.fits
	copyrect -wdist lamp.fits blueflat_flat0019.fits
	copyrect -wdist lamp.fits blueflat_flat0020.fits
	touch stage-wdist-copy

stage-subscat: stage-wdist-copy
# Subtract the Scattered Light.
	echo Stage:  Subtract the Scattered Light.
	interOrder blueflat_flat0016.fits
	interOrder blueflat_flat0017.fits
	interOrder blueflat_flat0018.fits
	interOrder blueflat_flat0019.fits
	interOrder blueflat_flat0020.fits
	touch stage-subscat

stage-normalize: stage-subscat
# Normalizing the Flatfields.
	echo Stage:  Normalizing the Flatfields.
	procFlash -sx 8 blueflat_flat0016o.fits
	procFlash -sx 8 blueflat_flat0017o.fits
	procFlash -sx 8 blueflat_flat0018o.fits
	procFlash -sx 8 blueflat_flat0019o.fits
	procFlash -sx 8 blueflat_flat0020o.fits
	touch stage-normalize

stage-combine: stage-normalize
# Combine the Flats.
	echo Stage:  Combine the Flats.
	combineFlats -o blueflat.fits -s 60e3 -n 1 blueflat_flat0016oflt.fits blueflat_flat0017oflt.fits blueflat_flat0018oflt.fits blueflat_flat0019oflt.fits blueflat_flat0020oflt.fits
	addkeys -f blueflat.fits newgain `cat GAIN.dat`

	touch stage-combine

../targ_blueflat:
	touch ../targ_blueflat

clean:
	rm -f lamp_lamp0007.fits blueflat_flat0016.fits blueflat_flat0017.fits blueflat_flat0018.fits blueflat_flat0019.fits blueflat_flat0020.fits blueflat_flat0016o.fits blueflat_flat0017o.fits blueflat_flat0018o.fits blueflat_flat0019o.fits blueflat_flat0020o.fits blueflat_flat0016oblz.fits blueflat_flat0017oblz.fits blueflat_flat0018oblz.fits blueflat_flat0019oblz.fits blueflat_flat0020oblz.fits blueflat_flat0016oflt.fits blueflat_flat0017oflt.fits blueflat_flat0018oflt.fits blueflat_flat0019oflt.fits blueflat_flat0020oflt.fits

veryclean:
	rm -f stage-overscan stage-gain stage-ydist-copy stage-orders-copy stage-xdist-copy stage-wdist-copy stage-subscat stage-normalize stage-combine

