*-- Author : John V. Morris 23/06/93 SUBROUTINE FTDEOR(JRUN,IERR) COMMON/FHLUN/ LUNH, LUNS, LMES, IL4L5 COMMON/FCOUNT/ NDATE0,NTIME0,ISTATP(20),ISTATR(20),IFRHV,IFPHV, & NEVENT,NFIEL0,NPRES0,NECUR0,NPCUR0,IRTE0,IRTP0, & IEVIN,NFPEVT,NHITSP,NFREVT,NHITSR,NMIN92, & TOTL,H1L,RTIME,REFF,ILRET LOGICAL PLANAR,RADIAL COMMON /FTQRUN/ NRUN,NRUN0,NRUN1,MAXEV,PLANAR,RADIAL CHARACTER*8 NAMES(19),NAMEB(24),NAMEL(14),NAMEH(9),NAMEC(9) CHARACTER*8 NAMEV(18),NAMET(18),NAMEP(26),NAMEE(39) CHARACTER*8 NAMIT(4) CHARACTER*8 FNAME1(6),FNAMET(13),FNAMEE(6) CHARACTER*8 FNAMEA(8),FNAMEP(8),FNAMER(13),FNAMEB(5),FNAMEC(10) CHARACTER*8 NAMES1(8),NAMES2(8),NAMES3(8),NAMES4(8) DIMENSION AVEC(14),IOUT(6),FOUT(17) LOGICAL LEXIST CHARACTER*8 ARNAME LOGICAL FIRST /.TRUE./ DATA NAMIT/'Run_numb','CompCODE','RadialHV','PlanarHV'/ DATA NAMEL/'Run_numb','Date ','Time ','Min92 ','Pressure', + 'Totevs ','Run_lumi','H1R_lumi','Run_time','Run_eff ', + 'ILRET ','e_curr ','p_curr ','Bfield '/ DATA NAMES/'Events ','Htspev ','Clupev ','Cpev_err','PERHts ', + 'PHt_err ','V2pk ','V2pk_err','Vdt ','Vdt_err ', + 'Qmph ','Qmph_err','Resol ','Reso_err','Tzero ', + 'Tzer_err','Weff ','Weff_err','HVflag '/ DATA NAMEH/'HitspL0 ','HitspL1 ','Hitspl2 ','HitspL3 ','HitspL4 ', + 'HitspL5 ','HitspL6 ','Hitspl7 ','HitspL8 '/ DATA NAMEC/'CluspL0 ','CluspL1 ','CluspL2 ','Cluspl3 ','CluspL4 ', + 'CluspL5 ','CluspL6 ','CluspL7 ','Cluspl8 '/ DATA NAMET/'V2pkL0 ','V2pkL1 ','V2pkL2 ','V2pkL3 ','V2pkL4 ', + 'V2pkL5 ','V2pkL6 ','V2pkL7 ','V2pkL8 ', + 'V2L0_err','V2L1_err','V2L2_err','V2L3_err','V2L4_err', + 'V2L5_err','V2L6_err','V2L7_err','V2L8_err'/ DATA NAMEV/'V2p0 ','V2p0_err','V2p1 ','V2p1_err','V2p2 ', + 'V2p2_err','Res0 ','Res0_err','Res1 ','Res1_err', + 'Res2 ','Res2_err','Qmt0 ','Qmt0_err','Qmt1 ', + 'Qmt1_err','Qmt2 ','Qmt2_err'/ DATA NAMEB/'Weff_0 ','Qmph_0 ','Weff_1 ','Qmph_1 ','Weff_2 ', + 'Qmph_2 ','Weff_3 ','Qmph_3 ','Weff_4 ','Qmph_4 ', + 'Weff_5 ','Qmph_5 ','Weff_6 ','Qmph_6 ','Weff_7 ', + 'Qmph_7 ','Weff_8 ','Qmph_8 ','Weff_9 ','Qmph_9 ', + 'Weff_10 ','Qmph_10 ','Weff_11 ','Qmph_11 '/ DATA NAMEP/'Vdtall ','VdtM0 ','VdtM1 ','VdtM2 ', + 'VdtL0 ','VdtL1 ','VdtL2 ','VdtL3 ','VdtL4 ', + 'VdtL5 ','VdtL6 ','VdtL7 ','VdtL8 ', + 'Vdal_err','VdM0_err','VdM1_err','VdM2_err', + 'VdL0_err','VdL1_err','VdL2_err','VdL3_err','VdL4_err', + 'VdL5_err','VdL6_err','VdL7_err','VdL8_err'/ DATA NAMEE/'Winall ','WinM0 ','WinM1 ','Winm2 ','WinL0 ', + 'WinL1 ','WinL2 ','Winl3 ','Winl4 ','Winl5 ', + 'WinL6 ','Winl7 ','WinL8 ', + 'Winall_n','WinM0_n ','WinM1_n ','Winm2_n ','WinL0_n ', + 'WinL1_n ','WinL2_n ','Winl3_n ','Winl4_n ','Winl5_n ', + 'WinL6_n ','Winl7_n ','WinL8_n ', + 'Winall_f','WinM0_f ','WinM1_f ','Winm2_f ','WinL0_f ', + 'WinL1_f ','WinL2_f ','Winl3_f ','Winl4_f ','Winl5_f ', + 'WinL6_f ','Winl7_f ','WinL8_f '/ DATA FNAME1/'Run_numb','Trks_evt','Phit_trk','Rhit_trk', + 'Phit_use','Rhit_use'/ DATA FNAMEA/'Npeak ','Peak_pos','Sigma ','Integral', + 'Peak_hgt','bkg_sig ','Mean ','RMSSigma' / DATA FNAMET/'Npeak ','Peakpos1','Sigma1 ','Integrl1', + 'Peakhgt1','bkgsig1 ','Peakpos2','Sigma2 ', + 'Integrl2','Peakhgt2','bkgsig2 ','Mean ', + 'RMSSigma'/ DATA FNAMEE/'CheffP0 ','CheffR0 ','CheffP1 ','CheffR1 ', + 'CheffP2 ','CheffR2 '/ DATA FNAMEP/'Tot_seg ','Hit_seg0', + 'Hit_seg1','Hit_seg2','9ht_seg ','10ht_seg', + '11ht_seg','12ht_seg'/ DATA FNAMER/'Tot_seg ','Hit_seg0', + 'Hit_seg1','Hit_seg2','4ht_seg ','5ht_seg ', + '6ht_seg ','7ht_seg ','8ht_seg ','9ht_seg ', + '10ht_seg','11ht_seg','12ht_seg'/ DATA FNAMEB/'Hits_seg','9ht_seg ','10ht_seg','11ht_seg', + '12ht_seg'/ DATA FNAMEC/'Hits_seg','4ht_seg ','5ht_seg ','6ht_seg ', + '7ht_seg ','8ht_seg ','9ht_seg ','10ht_seg', + '11ht_seg','12ht_seg'/ DATA NAMES1/ + 'Run_numb','Events ', + 'Vmean ','dVmean ', + 'Vf0r8 ','dVf0r8 ', + 'intercep','dinterc '/ DATA NAMES2/ + 'Vplus ','dVplus ', + 'Splus ','dSplus ', + 'Intplus ','dIplus ', + 'Nopplus ','Chiplus '/ DATA NAMES3/ + 'Vminus ','dVminus ', + 'Sminus ','dSminus ', + 'Intminus','dIminus', + 'Nopminus','Chiminus'/ DATA NAMES4/ + 'TanLor ','dTanLor ', + 'IntLor ','dIntLor ', + 'AngLor ','dAngLor', + 'NopLor ','ChLor '/ NRUN0 = JRUN IF(FIRST) THEN FIRST = .FALSE. CALL H1ENVI(IFLAG,IPROC,NPROC) IL4L5 = IFLAG IF(IL4L5.NE.1 .AND. IL4L5.NE.2) THEN WRITE(6,*) ' ** WARNING ** FTDEOR called & but H1ENVI flag wrong',IL4L5 RETURN ENDIF ELSE CALL HDELET(0) ENDIF IERR = 0 CALL FTQINT CALL FBOOKQ IF(IL4L5.EQ.1) CALL SAREA('L4',NRUN0) IF(IL4L5.EQ.2) CALL SAREA('FTDSGI',0) CALL FLK2HB(NHIST,IER1) CALL SAREA('FTDMON',0) IF(.NOT.LEXIST('VEC',2,0)) THEN CALL BNT( 2, 0, 4, NAMIT) ENDIF IF(.NOT.LEXIST('VEC',1,0)) THEN CALL BNT( 1, 0, 14, NAMEL) CALL BNT( 7, 0, 8,FNAMEA) CALL BNT( 8, 0, 8,FNAMEA) CALL BNT( 9, 0, 26, NAMEP) CALL BNT(10, 0, 39, NAMEE) CALL BNT(11, 0, 19, NAMES) CALL BNT(12, 0, 8, NAMEB) CALL BNT(13, 0, 18, NAMEV) CALL BNT(14, 0, 9, NAMEH) CALL BNT(15, 0, 9, NAMEC) CALL BNT(16, 0, 18, NAMET) CALL BHD (17,0,32,-0.5,31.5,36,0.5,36.5) CALL SHD (17,0,40.,40.) CALL STEXT(17 ,4,'FT Planar') CALL STEXT(17 ,1,'Dead Cell No vs Wire Plane') CALL BHDW (18,0,32,-0.5,31.5,36,0.5,36.5) CALL SHDW (18,0,40.,40.,1.) CALL STEXT(18 ,4,'FT Planar') CALL STEXT(18 ,1,'Cell No vs Wire Plane') CALL BHS (19,0,101,0.0,1.01) CALL SHS (19,0,-1.) CALL STEXT(19 ,4,'FT Planar') CALL STEXT(19 ,1,'Relative Efficiency') CALL BNT(20, 0, 39, NAMEE) CALL BNT(21, 0, 19, NAMES) CALL BNT(22, 0, 24, NAMEB) CALL BNT(23, 0, 18, NAMEV) CALL BNT(24, 0, 9, NAMEH) CALL BNT(25, 0, 9, NAMEC) CALL BNT(26, 0, 18, NAMET) CALL BHD (27,0,48,-0.5,47.5,36,0.5,36.5) CALL SHD (27,0,40.,40.) CALL STEXT(27 ,4,'FT Radial') CALL STEXT(27 ,1,'Dead Wedge Pair No vs Wire Plane') CALL BHDW (28,0,48,-0.5,47.5,36,0.5,36.5) CALL SHDW (28,0,40.,40.,1.) CALL STEXT(28 ,4,'FT Radial') CALL STEXT(28 ,1,'Wedge Pair No vs Wire Plane') CALL BHS (29,0,101,0.0,1.01) CALL SHS (29,0,-1.) CALL STEXT(29 ,4,'FT Radial') CALL STEXT(29 ,1,'Relative Efficiency') IF(IL4L5.EQ.2) THEN CALL BHDW (40,0,32,0.0,32.0,36,0.0,36.0) CALL SHDW (40,0,40.,40.,1.) CALL STEXT(40 ,4,'FT Planar') CALL STEXT(40 ,1,'No. of hits vs Wire Plane') CALL BHDW (41,0,32,0.0,32.0,36,0.0,36.0) CALL SHDW (41,0,40.,40.,1.) CALL STEXT(41 ,4,'FT Planar') CALL STEXT(41 ,1,'No. of used hits vs Wire Plane') CALL BHDW (42,0,32,0.0,32.0,36,0.0,36.0) CALL SHDW (42,0,40.,40.,1.) CALL STEXT(42 ,4,'FT Planar') CALL STEXT(42 ,1,'No. of unused hits vs Wire Plane') CALL BHDW (50,0,24,0.0,24.0,36,0.0,36.0) CALL SHDW (50,0,40.,40.,1.) CALL STEXT(50 ,4,'FT Radial') CALL STEXT(50 ,1,'No. of hits vs Wire Plane') CALL BHDW (51,0,24,0.0,24.0,36,0.0,36.0) CALL SHDW (51,0,40.,40.,1.) CALL STEXT(51 ,4,'FT Radial') CALL STEXT(51 ,1,'No. of used hits vs Wire Plane') CALL BHDW (52,0,24,0.0,24.0,36,0.0,36.0) CALL SHDW (52,0,40.,40.,1.) CALL STEXT(52 ,4,'FT Radial') CALL STEXT(52 ,1,'No. of unused hits vs Wire Plane') ENDIF ENDIF IF(IL4L5.EQ.2) THEN CALL SAREA('FTRMON',0) IF(.NOT.LEXIST('VEC',1,0)) THEN CALL BNT( 1, 0, 6,FNAME1) CALL BNT( 4, 0, 8,FNAMEA) CALL BNT( 5, 0, 8,FNAMEA) CALL BNT( 6, 0, 8,FNAMEA) CALL BNT(75, 0, 8,FNAMEA) CALL BNT(76, 0, 8,FNAMEA) CALL BNT(79, 0, 8,FNAMEA) CALL BNT(81, 0, 8,FNAMEA) CALL BNT(80, 0, 13,FNAMET) CALL BNT(82, 0, 13,FNAMET) CALL BNT(87, 0, 8,FNAMEA) CALL BNT(88, 0, 8,FNAMEA) CALL BNT(89, 0, 8,FNAMEA) CALL BNT(90, 0, 8,FNAMEA) CALL BNT(19, 0, 6,FNAMEE) CALL BNT(100,0, 8,FNAMEP) CALL BNT(101,0, 13,FNAMER) CALL BNT(200,0, 10,FNAMEC) CALL BNT(201,0, 10,FNAMEC) CALL BNT(202,0, 10,FNAMEC) CALL BNT(203,0, 10,FNAMEC) CALL BNT(320,0, 5,FNAMEB) CALL BNT(321,0, 5,FNAMEB) CALL BNT(322,0, 5,FNAMEB) CALL BNT(323,0, 5,FNAMEB) CALL BNT(2016, 0, 8,FNAMEA) CALL BNT(2017, 0, 8,FNAMEA) CALL BNT(907, 0, 8,FNAMEA) CALL BNT(908, 0, 8,FNAMEA) CALL BNT(650, 0, 8,FNAMEA) CALL BNT(651, 0, 8,FNAMEA) CALL BNT(652, 0, 8,FNAMEA) CALL BNT(653, 0, 8,FNAMEA) CALL BNT(654, 0, 8,FNAMEA) CALL BNT(655, 0, 8,FNAMEA) CALL BNT(656, 0, 8,FNAMEA) CALL BNT(657, 0, 8,FNAMEA) ENDIF CALL SAREA('FPOKER',0) IF(.NOT.LEXIST('VEC',1,0)) THEN CALL BNT(1, 0, 8, NAMES1) CALL BNT(2, 0, 8, NAMES2) CALL BNT(3, 0, 8, NAMES3) CALL BNT(4, 0, 8, NAMES4) ENDIF ENDIF CALL SAREA('FTDMON',0) IF( IER1.NE.0 )THEN ! no histograms copied so abort IERR = IER1 CALL FMOUT(NRUN0,IERR) GOTO 9000 ELSE IF( NHIST.EQ.0 )THEN IERR = -10 CALL FMOUT(NRUN0,IERR) GOTO 9000 ENDIF AVEC(1) = FLOAT(NRUN0) AVEC(2) = FLOAT(NDATE0) AVEC(3) = FLOAT(NTIME0) AVEC(4) = FLOAT(NMIN92) AVEC(5) = FLOAT(NPRES0) AVEC(6) = FLOAT(IEVIN) AVEC(7) = TOTL AVEC(8) = H1L AVEC(9) = RTIME AVEC(10) = REFF AVEC(11) = FLOAT(ILRET) AVEC(12) = -1. AVEC(13) = -1. IF(IRTE0.EQ.0) AVEC(12) = FLOAT(NECUR0) IF(IRTP0.EQ.0) AVEC(13) = FLOAT(NPCUR0) AVEC(14) = FLOAT(NFIEL0) CALL SVEC(1,0,AVEC) CALL FQENDP CALL FQENDR IF(ISTATP(1).GE.1000) CALL FDEADP IF(ISTATR(1).GE.1000) CALL FDEADR IF(IL4L5.EQ.1) CALL SAREA('L4',NRUN0) IF(IL4L5.EQ.2) CALL SAREA('FTDSGI',0) CALL FMEANT IERR = 0 CALL FMOUT(NRUN0,IERR) 9000 CONTINUE IF(IL4L5.EQ.2) THEN CALL FHTMAP CALL FTRMON(NRUN0) CALL FPOKEM(NRUN0) ENDIF CALL SAREA('FTDMON',0) RETURN END