37void hist102_NanoAODDimuonAnalysis()
43 ROOT::RDataFrame df(
"Events",
"root://eospublic.cern.ch//eos/opendata/cms/derived-data/AOD2NanoAODOutreachTool/"
44 "Run2012BC_DoubleMuParked_Muons.root");
47 auto df_2mu = df.Filter(
"nMuon == 2",
"Events with exactly two muons");
48 auto df_os = df_2mu.Filter(
"Muon_charge[0] != Muon_charge[1]",
"Muons with opposite charge");
51 auto df_mass = df_os.Define(
"Dimuon_mass", InvariantMass<float>, {
"Muon_pt",
"Muon_eta",
"Muon_phi",
"Muon_mass"});
54 auto hist = df_mass.Hist(30000, {0.25, 300},
"Dimuon_mass");
57 auto report = df.Report();
61 h->SetName(
"Dimuon_mass");
62 h->SetTitle(
"Dimuon mass;m_{#mu#mu} (GeV);N_{Events}");
67 auto c =
new TCanvas(
"c",
"", 800, 700);
71 h->GetXaxis()->SetTitleSize(0.04);
72 h->GetYaxis()->SetTitleSize(0.04);
78 label.
DrawLatex(0.205, 0.775,
"#rho,#omega");
82 label.
DrawLatex(0.485, 0.700,
"Y(1,2,3S)");
85 label.
DrawLatex(0.100, 0.920,
"#bf{CMS Open Data}");
87 label.
DrawLatex(0.630, 0.920,
"#sqrt{s} = 8 TeV, L_{int} = 11.6 fb^{-1}");
89 c->
SaveAs(
"hist102_dimuon_spectrum.pdf");
97 hist102_NanoAODDimuonAnalysis();
R__EXTERN TStyle * gStyle
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
virtual void SetTextSize(Float_t tsize=1)
Set the text size.
To draw Mathematical Formula.
TLatex * DrawLatex(Double_t x, Double_t y, const char *text)
Make a copy of this object with the new parameters And copy object attributes.
virtual void SaveAs(const char *filename="", Option_t *option="") const
Save this object in the file specified by filename.
void SetOptStat(Int_t stat=1)
The type of information printed in the histogram statistics box can be selected via the parameter mod...
virtual void SetNDC(Bool_t isNDC=kTRUE)
Set NDC mode on if isNDC = kTRUE, off otherwise.
std::unique_ptr< TH1D > ConvertToTH1D(const RHistEngine< double > &engine)
Convert a one-dimensional histogram to TH1D.
void EnableImplicitMT(UInt_t numthreads=0)
Enable ROOT's implicit multi-threading for all objects and methods that provide an internal paralleli...