84 |
|
PurityPaveText->SetTextFont(42); |
85 |
|
PurityPaveText->SetTextSize(0.021); |
86 |
|
PurityPaveText->AddText(spurity.str().c_str()); |
87 |
< |
PurityPaveText->Draw(); |
87 |
> |
//PurityPaveText->Draw(); |
88 |
|
|
89 |
|
|
90 |
|
// TText *purity = new TText(0.8,0.6,spurity.str().c_str()); |
270 |
|
|
271 |
|
TriLeptons::Rsfof_CorrectionFactor=ofwz->Integral() / sfwz->Integral(); |
272 |
|
TriLeptons::Rsfof_CorrectionFactor_Error=(ofwz->Integral()/sfwz->Integral()) * TMath::Sqrt(1/sfwz->GetEntries()+1/ofwz->GetEntries()); |
273 |
+ |
delete sfdata; |
274 |
+ |
delete ofdata; |
275 |
+ |
delete sfwz; |
276 |
+ |
delete ofwz; |
277 |
|
|
278 |
|
} |
279 |
|
|
662 |
|
|
663 |
|
|
664 |
|
void CarryOutWZStudy() { |
665 |
< |
TCut BasicCut("leptonNum>2&&tri_pt1>30&&tri_pt2>20&&tri_pt3>20"); |
666 |
< |
TCut Selection("abs(tri_mlll-91)>30 && tri_mT>40 && met[4] > 30 && abs(tri_mll-91)<10 && tri_submll > 10 && abs(tri_submll-91)>5"); |
665 |
> |
TCut BasicCut("tri_MatchFound&&leptonNum>2&&tri_pt1>30&&tri_pt2>20&&tri_pt3>20"); |
666 |
> |
TCut Selection("abs(tri_mlll-91)>30 && tri_mT>50 && met[4] > 30 && abs(tri_mll-91)<10 && tri_submll > 10 && abs(tri_submll-91)>5"); |
667 |
|
|
668 |
|
//OptimizeSelection(BasicCut); |
669 |
|
|
670 |
|
//ComputeMiscombinationRate(Selection, BasicCut); |
671 |
|
|
672 |
|
// ComputeNewMiscombinationRate(Selection, BasicCut); |
673 |
< |
/* |
673 |
> |
|
674 |
|
WZ_kin_plot("tri_mll",40,0,200,"m_{Z} [GeV]",BasicCut,"Inclusive/Zmass"); |
675 |
|
WZ_kin_plot("tri_mlll",40,0,400,"m_{ll} [GeV]",BasicCut,"Inclusive/TrileptonMass"); |
676 |
|
WZ_kin_plot("tri_mT",40,0,200,"m_{T} [GeV]",BasicCut,"Inclusive/mT"); |
678 |
|
WZ_kin_plot("tri_pt1",40,0,400,"p_{T}^{1} [GeV]",BasicCut,"Inclusive/Pt1"); |
679 |
|
WZ_kin_plot("tri_pt2",40,0,400,"p_{T}^{2} [GeV]",BasicCut,"Inclusive/Pt2"); |
680 |
|
WZ_kin_plot("tri_pt3",40,0,400,"p_{T}^{3} [GeV]",BasicCut,"Inclusive/Pt3"); |
681 |
< |
|
681 |
> |
/* |
682 |
|
WZ_kin_plot("tri_mll",40,0,200,"m_{Z} [GeV]",BasicCut&&TCut("abs(tri_mlll-91)>30"),"Mlll_cut/Zmass"); |
683 |
|
WZ_kin_plot("tri_mlll",40,0,400,"m_{ll} [GeV]",BasicCut&&TCut("abs(tri_mlll-91)>30"),"Mlll_cut/TrileptonMass"); |
684 |
|
WZ_kin_plot("tri_mT",40,0,200,"m_{T} [GeV]",BasicCut&&TCut("abs(tri_mlll-91)>30"),"Mlll_cut/mT"); |
707 |
|
WZ_kin_plot("met[4]",40,0,200,"MET [GeV]",BasicCut&&TCut("tri_mT>40&&abs(tri_mlll-91)>30&&met[4]>30"),"CutFlow/MET__3_CutOn_MT_n_Mll_n_Met"); |
708 |
|
WZ_kin_plot("met[4]",40,0,200,"MET [GeV]",BasicCut&&TCut("tri_mT>40&&abs(tri_mlll-91)>30&&met[4]>30&&abs(tri_mll-91)<10"),"CutFlow/MET__4_CutOn_MT_n_Mll_n_Met_MllWindow"); |
709 |
|
|
710 |
< |
|
710 |
> |
*/ |
711 |
|
WZ_kin_plot("tri_mll",40,0,200,"m_{Z} [GeV]",BasicCut&&Selection,"Zmass"); |
712 |
|
WZ_kin_plot("tri_mlll",40,0,400,"m_{lll} [GeV]",BasicCut&&Selection,"TrileptonMass"); |
713 |
|
WZ_kin_plot("tri_mT",40,0,200,"m_{T} [GeV]",BasicCut&&Selection,"mT"); |
716 |
|
WZ_kin_plot("tri_pt2",40,0,400,"p_{T}^{2} [GeV]",BasicCut&&Selection,"Pt2"); |
717 |
|
WZ_kin_plot("tri_pt3",40,0,400,"p_{T}^{3} [GeV]",BasicCut&&Selection,"Pt3"); |
718 |
|
|
719 |
< |
*/ |
719 |
> |
|
720 |
|
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepSF,"mllsub_SF"); |
721 |
< |
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepOF,"mllsub_OF");/* |
721 |
> |
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepOF,"mllsub_OF"); |
722 |
|
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepSF&&TCut("tri_id2==0"),"mllsub_SF_ee"); |
723 |
|
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepSF&&TCut("tri_id2==1"),"mllsub_SF_mm"); |
724 |
|
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepOF&&TCut("tri_id2==0"),"mllsub_OF_em"); |
725 |
|
WZ_kin_plot("tri_submll",40,0,200,"m_{l_{2}l_{3}} [GeV]",BasicCut&&Selection&&TriLepOF&&TCut("tri_id2==1"),"mllsub_OF_me"); |
726 |
< |
*/ |
726 |
> |
|
727 |
|
|
728 |
|
SF_OF_comparison(BasicCut,Selection); |
729 |
|
// generator_SF_OF_comparison(); |
891 |
|
cout << "Essential cut is " << (const char*) essentialcut << endl; |
892 |
|
cout << "Going to set essential cut to new triggers" << endl; |
893 |
|
TCut essential_bkp = essentialcut; |
890 |
– |
write_warning(__FUNCTION__,"Need to define trigger requirement for WZ!"); |
894 |
|
essentialcut=TCut("mll>5||mll<6"); |
895 |
|
cout << "Essential cut is now " << (const char*) essentialcut << endl; |
896 |
|
|