set rawdir="Raw/" #Make master bias frame unlearn gbias gbias @bias.txt "Zero.fits" rawpath=rawdir$ fl_over+ fl_trim+ fl_inter- fl_vardq+ #Do basic processing (overscan, trim, bias subtraction) unlearn gsreduce #Flats gsreduce @flats.txt rawpath=rawdir$ fl_bias+ fl_over+ fl_flat- fl_gmosaic- fl_cut- fl_gsappwave- bias="Zero.fits" #Science gsreduce @science.txt rawpath=rawdir$ fl_bias+ fl_over+ fl_flat- fl_gmosaic- fl_cut- fl_gsappwave- bias="Zero.fits" #Arc: reduce AND mosaic gsreduce @arcs.txt rawpath=rawdir$ fl_bias+ fl_over+ fl_flat- fl_gmosaic+ fl_gsappwave- fl_fixpix- bias="Zero.fits" #Do the wavelength solution on the mosaic arcs and then transform them: gswavelength gs//@arcs.txt fl_inte+ fl_addf- function=spline3 unlearn gstransform gstransform gs//@arcs.txt wavtran=gs//@arcs.txt #You might want to stop here and take a look at the t frames. #For instance, implot tgsblah.fits[SCI] and then :l 150 o :l 350. # # #Do the QE on the un-mosaic'd flats and science frames: unlearn gqe gqe gs//@sn1.txt ref=gs//@an1.txt gqe gs//@sn2.txt ref=gs//@an2.txt gqe gs//@sn3.txt ref=gs//@an3.txt gqe gs//@sn4.txt ref=gs//@an4.txt gqe gs//@sn5.txt ref=gs//@an5.txt gqe gs//@sn6.txt ref=gs//@an6.txt gqe gs//@fn1.txt ref=gs//@an1.txt gqe gs//@fn2.txt ref=gs//@an2.txt gqe gs//@fn3.txt ref=gs//@an3.txt gqe gs//@fn4.txt ref=gs//@an4.txt gqe gs//@fn5.txt ref=gs//@an5.txt gqe gs//@fn6.txt ref=gs//@an6.txt #Make the flat field. unlearn gmosaic unlearn gsflat gmosaic qgs//@flats.txt fl_fixpix- gsflat mqgs//@fn1.txt FlatN1.fits order=23 fl_over+ gsflat mqgs//@fn2.txt FlatN2.fits order=23 fl_over+ gsflat mqgs//@fn3.txt FlatN3.fits order=23 fl_over+ gsflat mqgs//@fn4.txt FlatN4.fits order=23 fl_over+ gsflat mqgs//@fn5.txt FlatN5.fits order=23 fl_over+ gsflat mqgs//@fn6.txt FlatN6.fits order=23 fl_over+ #Reduce the science exposures, mosaicing the them at the same time: gsreduce qgs//@sn1.txt flat="FlatN1.fits" fl_over- fl_bias- fl_trim- fl_fixpix- gsreduce qgs//@sn2.txt flat="FlatN2.fits" fl_over- fl_bias- fl_trim- fl_fixpix- gsreduce qgs//@sn3.txt flat="FlatN3.fits" fl_over- fl_bias- fl_trim- fl_fixpix- gsreduce qgs//@sn4.txt flat="FlatN4.fits" fl_over- fl_bias- fl_trim- fl_fixpix- gsreduce qgs//@sn5.txt flat="FlatN5.fits" fl_over- fl_bias- fl_trim- fl_fixpix- gsreduce qgs//@sn6.txt flat="FlatN6.fits" fl_over- fl_bias- fl_trim- fl_fixpix- #Apply the wavelength calibration. Note the extra gs that got added above. gstransform gsqgs//@sn1.txt wavtran=gs//@an1.txt gstransform gsqgs//@sn2.txt wavtran=gs//@an2.txt gstransform gsqgs//@sn3.txt wavtran=gs//@an3.txt gstransform gsqgs//@sn4.txt wavtran=gs//@an4.txt gstransform gsqgs//@sn5.txt wavtran=gs//@an5.txt gstransform gsqgs//@sn6.txt wavtran=gs//@an6.txt #Do the extraction outside of the gemini package? #imcopy tgsqgs//@sn1.fits[sci] n1a.fits,n1b.fits,n1c.fits #imcombine n1*.fits N1.fits reject=crreject #apall with lower=-10 upper=10 bsample= -50:-15,15:50, t_nsum=20 t_step=50 t_function=spline3 t_niter=3 t_order=3 #scombine n1*.ms.fits N1alt.ms.fits reject=ccdreject scale=mode sigmas=3 #imreplace N*ms.fits 0 upper=0j