pro ir_darks ;revised 8/11/97 to change max to min. csee ;compares the 'LEFT' shutter closed data with that of the data in the ;current, (co2) directory. Looking for changes in dark current. ; The current directory is the default cd,'',current=cdir & cd,cdir ;csee 8/7/97 if n_params() eq 0 then log = cdir ;csee 8/7/97 @c_system.inc @c_header.inc !y.range=[0,0] ;Autoscale !x.range=[0,0] ;Autoscale !P.MULTI=[0,1,1,0,0] ; **** Define Baseline Values **** ; For Ir Measurements: ; ir_status,temp,col_time,samp_time,precharge,up_min,up_ave,down_min,down_ave ir=[0000,306.02,0.242,8.064,12592,44027,48869.4,40984,45029.6, $ 0000,306.02,60.,8.064,12592,44008,48852.7,40970,45021.1, $ 0000,306.05,60.,8.064,12592,43977,48835.9,40940,45004.4] ir_stat=['0000','0000','0000'] ; **** Setup Output File **** openw,1,'ir_darks.out' ; **** IR Data **** ; Display IR spectra dark current and then response to lamp print,'*IR' cd,'DB/Ir' files=t_getfil('V_*') d_irread,files(0),h0,p0,g0 d_irread,files(1),h1,p1,g1 d_irread,files(2),h2,p2,g2 ; use pixels 3:146 to trim 2 pixels from each end p0_min_d = min(p0(3:146,1)) p1_min_d = min(p1(3:146,1)) p2_min_d = min(p2(3:146,1)) p0_min_u = min(p0(3:146,3)) p1_min_u = min(p1(3:146,3)) p2_min_u = min(p2(3:146,3)) p0_ave_d = mean(p0(3:146,1)) p1_ave_d = mean(p1(3:146,1)) p2_ave_d = mean(p2(3:146,1)) p0_ave_u = mean(p0(3:146,3)) p1_ave_u = mean(p1(3:146,3)) p2_ave_u = mean(p2(3:146,3)) printf,1,format='(/,75("_"))' printf,1,format='("IR Data from Health Check",/)' printf,1,log, $ format='("The Test Log is: ",a,/,"The Baseline Log is: /DF302/11Oct96/Log/DISR#3_LEFT_on_probe_11Oct96.1",/)' printf,1, $ format='("The first is a quick (noisy) dark, Second is an averaged (60 sec) dark")' printf,1,format='("The third is an averaged (60 sec) bright. All are shutter closed ")' col_time=d_value(h0,h_ir_col_time) temp=0.5*(d_value(h0,105)+d_value(h0,106)) ir_status=d_value(h0,h_ir_status) precharge=d_value(h0,h_precharge) samp=g0.reading(5)*8.064 ; IR Table header printf,1,format='(/,2x,"Comb",T16,"IR status",T28,"Chip",T37,"Collect",T47,"Sample",T57,"Precharge",T72,"Up",T80,"Up",T88,"Down",T97,"Down")' printf,1,format='(2x,"read",T18,"word",T28,"temp",T37,"time (s)",T47,"time (ms)",T72,"Min.",T80,"Ave.",T88,"Min.",T97,"Ave.",/)' ; First Combination Exposure (dark): printf,1,ir_status,temp,col_time,samp,precharge,p0_min_u,p0_ave_u,p0_min_d,p0_ave_d, $ format='(2x,"First",T18,z4.4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,ir_stat(0),ir(1),ir(2),ir(3),ir(4),ir(5),ir(6),ir(7),ir(8), $ format='(2x,"Base 1",T18,a4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,temp-ir(1),p0_min_u-ir(5),p0_ave_u-ir(6),p0_min_d-ir(7),p0_ave_d-ir(8), $ format='(2x,"Difference",T28,f6.2,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1,/)' printf,1,temp-ir(1),100.*(p0_min_u-ir(5))/ir(5),100.*(p0_ave_u-ir(6))/ir(6), $ 100.*(p0_min_d-ir(7))/ir(7),100.*(p0_ave_d-ir(8))/ir(8), $ format='(2x,"Difference (%)",T28,f6.2,T67,f8.1,"%",T76,f8.1,"%",T85,f8.1,"%",T94,f8.1,"%",/)' ; Second Combination Exposure (dark): col_time=d_value(h1,h_ir_col_time) temp=0.5*(d_value(h1,105)+d_value(h0,106)) ir_status=d_value(h1,h_ir_status) precharge=d_value(h1,h_precharge) samp=g1.reading(5)*8.064 printf,1,ir_status,temp,col_time,samp,precharge,p1_min_u,p1_ave_u,p1_min_d,p1_ave_d, $ format='(2x,"Second",T18,z4.4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,ir_stat(1),ir(10),ir(11),ir(12),ir(13),ir(14),ir(15),ir(16),ir(17), $ format='(2x,"Base 2",T18,a4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,temp-ir(10),p1_min_u-ir(14),p1_ave_u-ir(15),p1_min_d-ir(16),p1_ave_d-ir(17), $ format='(2x,"Difference",T28,f6.2,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1,/)' printf,1,temp-ir(10),100.*(p1_min_u-ir(14))/ir(14),100.*(p1_ave_u-ir(15))/ir(15), $ 100.*(p1_min_d-ir(16))/ir(16),100.*(p1_ave_d-ir(17))/ir(17), $ format='(2x,"Difference (%)",T28,f6.2,T67,f8.1,"%",T76,f8.1,"%",T85,f8.1,"%",T94,f8.1,"%",/)' ; Third Combination Exposure (bright): col_time=d_value(h2,h_ir_col_time) temp=0.5*(d_value(h2,105)+d_value(h0,106)) ir_status=d_value(h2,h_ir_status) precharge=d_value(h2,h_precharge) samp=g2.reading(5)*8.064 printf,1,ir_status,temp,col_time,samp,precharge,p2_min_u,p2_ave_u,p2_min_d,p2_ave_d, $ format='(2x,"Third",T18,z4.4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,ir_stat(2),ir(19),ir(20),ir(21),ir(22),ir(23),ir(24),ir(25),ir(26), $ format='(2x,"Base 3",T18,a4,T28,f6.2,T37,f6.3,T47,f5.3,T57,f7.0,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1)' printf,1,temp-ir(19),p2_min_u-ir(23),p2_ave_u-ir(24), $ p2_min_d-ir(25),p2_ave_d-ir(26), $ format='(2x,"Difference",T28,f6.2,T67,f8.1,T76,f8.1,T85,f8.1,T94,f8.1,/)' printf,1,temp-ir(19),100.*(p2_min_u-ir(23))/ir(23),100.*(p2_ave_u-ir(24))/ir(24), $ 100.*(p2_min_d-ir(25))/ir(25),100.*(p2_ave_d-ir(26))/ir(26), $ format='(2x,"Difference (%)",T28,f6.2,T67,f8.1,"%",T76,f8.1,"%",T85,f8.1,"%",T94,f8.1,"%",/)' printf,1,format='(//,"ir_darks.pro rev. 8/11/97")' cd,cdir !y.range=[0,0] ;Autoscale !x.range=[0,0] ;Autoscale !P.MULTI=[0,1,1,0,0] close,1 end