pro batch_darkcurrent,dkdir=dkdir ; default directory containing raw dark current FITS files if not(keyword_set(dkdir)) then begin ; set directory according to whether using a PC or workstation if (!version.os_family eq 'unix') then begin dkdir='/data/skunk3/idtl/data/H1RG-018-SIPIN/cold2/darkcurrent_test.7Jun04/' endif else begin dkdir='\\rabbit\Rockwell5\H1RG-021-SIPIN\cold1\darkcurrent_test.21Jul04\' endelse endif ; check to see if input directory name ends in path delimiter--if not, add it to the end if (strmid(dkdir,strlen(dkdir)-1,1) ne path_sep()) then dkdir=dkdir+path_sep() ; define regions for analysis region1=[4,1019,4,1019] region2=[200,300,100,200] regiontop=[0,1023,1020,1023] regionleft=[0,3,0,1023] ; set flags to enable reducing specific regions doregion1=0 doregion2=1 doregiontop=1 doregionleft=1 ; define directories to contain slope images and plots and histograms slopedir1=dkdir+'SlopePlots'+path_sep() slopedir2=slopedir1 + 'Region2' + path_sep() slopehistdir1=dkdir+'SlopePlots'+path_sep()+'histograms'+path_sep() slopehistdir2=slopedir2 +'histograms'+path_sep() file_mkdir,slopedir1 file_mkdir,slopedir2 file_mkdir,slopehistdir1 file_mkdir,slopehistdir2 ; define directories to contain read noise images, plots, and histograms readnoisedir1=dkdir+'ReadNoise_Results'+path_sep() readnoisehistdir1=dkdir+'ReadNoise_Results'+path_sep()+'histograms'+path_sep() readnoisedir2=dkdir+'ReadNoise_Results'+path_sep()+'Region2'+path_sep() readnoisedirtop=dkdir+'ReadNoise_Results'+path_sep()+'ref_pixels_top'+path_sep() readnoisedirleft=dkdir+'ReadNoise_Results'+path_sep()+'ref_pixels_left'+path_sep() readnoisehistdir2=dkdir+'ReadNoise_Results'+path_sep()+'Region2'+path_sep()+'histograms'+path_sep() readnoisehistdirtop=dkdir+'ReadNoise_Results'+path_sep()+'ref_pixels_top'+path_sep()+'histograms'+path_sep() readnoisehistdirleft=dkdir+'ReadNoise_Results'+path_sep()+'ref_pixels_left'+path_sep()+'histograms'+path_sep() file_mkdir,readnoisedir1 file_mkdir,readnoisedir2 file_mkdir,readnoisedirtop file_mkdir,readnoisedirleft file_mkdir,readnoisehistdir1 file_mkdir,readnoisehistdir2 file_mkdir,readnoisehistdirtop file_mkdir,readnoisehistdirleft ; reduce read dark current data--------------------------------------------------------------- if doregion1 then begin region=region1 slopedir=slopedir1 slopehistdir=slopehistdir1 darkcurrent_reduce,dkdir,outdir=slopedir,region=region darkcurrent_analysis,slopedir makehistogram,slopedir,'slopeimgs.txt','Dark Current',outdir=slopehistdir,'Dark Current (ADU/second)',region=region darkjumbo2,slopedir ; reduce initial dark current images cd, dkdir cd, current = cwd temp=file_search('initial_dark_*.fits') if (temp[0] ne '') then begin darkcurrent_reduce,dkdir,infile='initial.lst',outdir=slopedir,region=region,valoutfile='slopevals_init.txt', $ imgoutfile = 'slopeimgs_init.txt' darkcurrent_analysis,slopedir,infile='slopevals_init.txt',jumbofile='darkjumbo_init.txt' makehistogram,slopedir,'slopeimgs_init.txt','Dark Current',outdir=slopehistdir,'Dark Current (ADU/second)',region=region darkjumbo2,slopedir,infile='darkjumbo_init.txt',ext='_init' endif cd, cwd endif ; reduce read noise data--------------------------------------------------------------- if doregion2 then begin ; readuce read noise data for region2 region=region2 outdir=readnoisedir2 histdir=readnoisehistdir2 readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region, /minexp readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region, /novar ; create read noise histogram data rnperpixel,dkdir,infile='dark.lst',outdir=outdir,region=region ; make read noise histograms makehistogram,outdir,'stdfiles.txt','CDS Noise','CDS Noise (ADU)',outdir=histdir,region=region endif if doregiontop then begin ; readuce read noise data for top reference rows region=regiontop outdir=readnoisedirtop histdir=readnoisehistdirtop readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region, /novar ; create read noise histogram data rnperpixel,dkdir,infile='dark.lst',outdir=outdir,region=region ; make read noise histograms makehistogram,outdir,'stdfiles.txt','CDS Noise','CDS Noise (ADU)',outdir=histdir,region=region endif if doregionleft then begin ; readuce read noise data for left reference rows region=regionleft outdir=readnoisedirleft histdir=readnoisehistdirleft readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region readnoise_reduce,dkdir,infile='rnfiles.lst',outdir=outdir,region=region, /novar ; create read noise histogram data rnperpixel,dkdir,infile='dark.lst',outdir=outdir,region=region ; make read noise histograms makehistogram,outdir,'stdfiles.txt','CDS Noise','CDS Noise (ADU)',outdir=histdir,region=region endif ;----------------------------------------------------------------- end