enu used as energy bin cut *************************************** No Q2 cut Low energy flux exec cs_enu_q2bin 0.0 100.0 -le-cc-bd-i111-ph-sa q2lo_cut= 0.0000 q2hi_cut= 100.0000 e_low e_hi error factor eff purity 0.0 0.8 1.451 0.475 1.000 0.8 1.0 1.386 0.546 0.954 1.0 2.0 1.421 0.597 0.829 2.0 3.0 1.442 0.668 0.720 3.0 4.0 1.423 0.732 0.674 4.0 5.0 1.446 0.727 0.658 5.0 7.0 1.485 0.754 0.601 7.0 10.0 1.431 0.810 0.604 10.0 15.0 1.366 0.808 0.663 15.0 900.0 1.350 0.851 0.645 total error factor efficiency purity 1.440 0.659 0.731 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Low energy flux 0.11.0 exec cs_enu_q2bin 1.0 100.0 -le-cc-bd-i111-ph-sa q2lo_cut= 1.0000 q2hi_cut= 100.0000 e_low e_hi error factor eff purity 0.0 0.8 nan nan nan 0.8 1.0 nan 0.000 nan 1.0 2.0 2.940 0.152 0.759 2.0 3.0 3.640 0.152 0.495 3.0 4.0 2.666 0.318 0.442 4.0 5.0 2.379 0.371 0.476 5.0 7.0 2.001 0.579 0.431 7.0 10.0 2.291 0.476 0.400 10.0 15.0 2.698 0.385 0.357 15.0 900.0 2.828 0.500 0.250 total error factor efficiency purity 2.954 0.238 0.482 *************************************** Medium energy flux No Q2 cut exec cs_enu_q2bin 0.0 100.0 -me-cc-bd-i111-ph-sa q2lo_cut= 0.0000 q2hi_cut= 100.0000 e_low e_hi error factor eff purity 0.0 0.8 1.647 0.379 0.973 0.8 1.0 1.246 0.661 0.975 1.0 2.0 1.538 0.573 0.737 2.0 3.0 1.414 0.694 0.721 3.0 4.0 1.428 0.737 0.666 4.0 5.0 1.456 0.736 0.641 5.0 7.0 1.480 0.765 0.597 7.0 10.0 1.464 0.750 0.622 10.0 15.0 1.431 0.769 0.635 15.0 900.0 1.240 0.917 0.710 total error factor efficiency purity 1.462 0.727 0.644 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Medium energy flux 0.11.0 exec cs_enu_q2bin 1.0 100.0 -me-cc-bd-i111-ph-sa q2lo_cut= 1.0000 q2hi_cut= 100.0000 e_low e_hi error factor eff purity 0.0 0.8 nan nan nan 0.8 1.0 nan nan nan 1.0 2.0 2.898 0.167 0.714 2.0 3.0 2.803 0.212 0.600 3.0 4.0 1.953 0.445 0.589 4.0 5.0 2.529 0.380 0.412 5.0 7.0 2.461 0.460 0.359 7.0 10.0 2.263 0.438 0.445 10.0 15.0 2.872 0.333 0.364 15.0 900.0 nan nan 0.000 total error factor efficiency purity 2.430 0.392 0.432 ************************** function qe_ef_enu_q2bin(dummy) * include ? * real dummy integer nbin parameter(nbin=10) vector q2lo_cut(1) vector q2hi_cut(1) vector bin(nbin+1) vector ntot_qe(nbin) vector ntot_pas(nbin) vector ntot_pas_qe(nbin) vector ntot_qe_al(1) vector ntot_pas_al(1) vector ntot_pas_qe_al(1) integer iev data iev/0/ c c ************88 c qe_ef_enu_q2bin=1.0 bin(1)=0 bin(2)=0.75 bin(3)=1.0 bin(4)=2.0 bin(5)=3.0 bin(6)=4.0 bin(7)=5.0 bin(8)=7.0 bin(9)=10.0 bin(10)=15.0 bin(11)=900.0 iev=iev+1 if(iev.eq.1)then write(6,310)q2lo_cut(1),q2hi_cut(1) 310 format(' q2lo_cut=',f9.4,' q2hi_cut=',f9.4) ntot_qe_al(1)=0 ntot_pas_al(1)=0 ntot_pas_qe_al(1)=0 do i=1,nbin ntot_qe(i)=0.0 ntot_pas(i)=0.0 ntot_pas_qe(i)=0.0 enddo endif ibin=0 do i=1,nbin if(enu.ge.bin(i).and.enu.lt.bin(i+1))then ibin=i goto 500 endif c if(iev.le.100)write(6,100)enu,bin(i),bin(i+1) 100 format(' enu=',f10.4,2i6) enddo 500 continue if(q2.lt.q2lo_cut(1).or.q2.gt.q2hi_cut(1))return if(cc*channel.eq.1.0.and.fidvtx.eq.1.and.nprong.ne.0)then ntot_qe(ibin)=ntot_qe(ibin)+1 ntot_qe_al(1)=ntot_qe_al(1)+1 endif pas_qe=qe_cuts_ad(0.0) if(pas_qe.eq.1.0)then ntot_pas(ibin)=ntot_pas(ibin)+1 ntot_pas_al(1)=ntot_pas_al(1)+1 endif if(pas_qe.eq.1.0.and.cc*channel.eq.1.)then ntot_pas_qe(ibin)=ntot_pas_qe(ibin)+1 ntot_pas_qe_al(1)=ntot_pas_qe_al(1)+1 endif c if(iev.le.500)write(6,300)iev,ibin,enu,cc*channel c +,ntot_pas(ibin),ntot_pas_qe(ibin), ntot_qe(ibin) 300 format(' iev,ibin,enu=',2i5,f8.2,f4.1,3i5) return end real function qe_cuts_ad(dummy) * include ? * real dummy c trk= 1 means nprong can be 1 or 2 c trk(2) = 2 means nprong must be 2 integer ntrk real q2low real q2hig real delx real ppert real hit c c ************ c qe_cuts_ad=0.0 if(fidvtx.eq.1.and.muon.eq.1)then c 0 to 0.5 GeV q2low = 0.0 q2hig = 0.5 ntrk = 1.0 delx = 1.5 ppert = 4.0 hit = 0.8 if(.true. + .and.q2rec.gt.q2low + .and.q2rec.le.q2hig + .and.nprong.ge.ntrk + .and.abs(Q2qe-twomnu)/q2_err.le.delx + .and.ptrec/pt_err.le.ppert + .and.hitsplan.gt.hit + .and..true.)qe_cuts_ad=1. c 0.5 to 1.0 q2low = 0.5 q2hig = 1.0 ntrk = 1.0 delx = 2.0 ppert = 4.0 hit = 0.8 if(.true. + .and.q2rec.gt.q2low + .and.q2rec.le.q2hig + .and.nprong.ge.ntrk + .and.abs(Q2qe-twomnu)/q2_err.le.delx + .and.ptrec/pt_err.le.ppert + .and.hitsplan.gt.hit + .and..true.)qe_cuts_ad=1. c 1.0 to 2.0 q2low = 1.0 q2hig = 2.0 ntrk = 2.0 delx = 2.0 ppert = 2.0 hit = .8 if(.true. + .and.q2rec.gt.q2low + .and.q2rec.le.q2hig + .and.nprong.ge.ntrk + .and.abs(Q2qe-twomnu)/q2_err.le.delx + .and.ptrec/pt_err.le.ppert + .and.hitsplan.gt.hit + .and..true.)qe_cuts_ad=1. c 2.0 to 3.0 q2low = 2.0 q2hig = 3.0 ntrk = 2.0 delx = 2.0 ppert = 2.0 hit = .8 if(.true. + .and.q2rec.gt.q2low + .and.q2rec.le.q2hig + .and.nprong.ge.ntrk + .and.abs(Q2qe-twomnu)/q2_err.le.delx + .and.ptrec/pt_err.le.ppert + .and.hitsplan.gt.hit + .and..true.)qe_cuts_ad=1. c 3.0 to 10.0 q2low = 3.0 q2hig = 10.0 ntrk = 2.0 delx = 2.0 ppert = 2.0 hit = .8 if(.true. + .and.q2rec.gt.q2low + .and.q2rec.le.q2hig + .and.nprong.ge.ntrk + .and.abs(Q2qe-twomnu)/q2_err.le.delx + .and.ptrec/pt_err.le.ppert + .and.hitsplan.gt.hit + .and..true.)qe_cuts_ad=1. endif return end