Show how NanoAOD files can be processed with RDataFrame. 
This tutorial illustrates how NanoAOD files can be processed with ROOT dataframes. The NanoAOD-like input files are filled with 66 mio. events from CMS OpenData containing muon candidates part of 2012 dataset (DOI: 10.7483/OPENDATA.CMS.YLIC.86ZZ and DOI: 10.7483/OPENDATA.CMS.M5AD.Y3V3). The macro matches muon pairs and produces an histogram of the dimuon mass spectrum showing resonances up to the Z mass. Note that the bump at 30 GeV is not a resonance but a trigger effect.
More details about the dataset can be found on the CERN Open Data portal.
 
  
 
 
void df102_NanoAODDimuonAnalysis()
{
   
 
   
   ROOT::RDataFrame df(
"Events", 
"root://eospublic.cern.ch//eos/opendata/cms/derived-data/AOD2NanoAODOutreachTool/" 
                                 "Run2012BC_DoubleMuParked_Muons.root");
 
   
 
   
   auto df_2mu = df.Filter(
"nMuon == 2", 
"Events with exactly two muons");
 
   auto df_os = 
df_2mu.Filter(
"Muon_charge[0] != Muon_charge[1]", 
"Muons with opposite charge");
 
 
   
 
   
   auto h = 
df_mass.Histo1D({
"Dimuon_mass", 
"Dimuon mass;m_{#mu#mu} (GeV);N_{Events}", 30000, 0.25, 300}, 
"Dimuon_mass");
 
 
   
 
   
   auto c = 
new TCanvas(
"c", 
"", 800, 700);
 
   c->SetLogx(); 
c->SetLogy();
 
 
   h->GetXaxis()->SetTitleSize(0.04);
 
   h->GetYaxis()->SetTitleSize(0.04);
 
 
   label.
DrawLatex(0.205, 0.775, 
"#rho,#omega");
 
   label.
SetTextSize(0.030); label.
DrawLatex(0.630, 0.920, 
"#sqrt{s} = 8 TeV, L_{int} = 11.6 fb^{-1}");
 
 
 
   
}
 
{
   df102_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.
 
void AddProgressBar(ROOT::RDF::RNode df)
Add ProgressBar to a ROOT::RDF::RNode.
 
void EnableImplicitMT(UInt_t numthreads=0)
Enable ROOT's implicit multi-threading for all objects and methods that provide an internal paralleli...
 
   
|>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |   [Elapsed time: 0:01m  processing file: 1 / 1  processed evts: 1000 / 54231870  8.13e+02 evt/s 18:31:11h  remaining time (per file being processed)]   
|=======================================================================>                                                                                                                                                                                                                                                                                                                                                                                                                                                             |   [Elapsed time: 0:02m  processing file: 1 / 1  processed evts: 7722000 / 55053565  3.86e+06 evt/s 0:12m  remaining time (per file being processed)]   
|======================================================================================================================================================>                                                                                                                                                                                                                                                                                                                                                                              |   [Elapsed time: 0:03m  processing file: 1 / 1  processed evts: 16666000 / 56696955  5.56e+06 evt/s 0:07m  remaining time (per file being processed)]   
|===============================================================================================================================================================================================================================================>                                                                                                                                                                                                                                                                                     |   [Elapsed time: 0:04m  processing file: 1 / 1  processed evts: 26713000 / 57518650  6.68e+06 evt/s 0:04m  remaining time (per file being processed)]   
|==========================================================================================================================================================================================================================================================================================================================================>                                                                                                                                                                                          |   [Elapsed time: 0:05m  processing file: 1 / 1  processed evts: 37439000 / 58340345  7.49e+06 evt/s 0:02m  remaining time (per file being processed)]   
|================================================================================================================================================================================================================================================================================================================================================================================================================>                                                                                                                    |   [Elapsed time: 0:06m  processing file: 1 / 1  processed evts: 47245000 / 60805430  7.87e+06 evt/s 0:01m  remaining time (per file being processed)]   
|=================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================>                                   |   [Elapsed time: 0:07m  processing file: 1 / 1  processed evts: 57390000 / 61540413  8.20e+06 evt/s 0:00m  remaining time (per file being processed)]   
 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
[Total elapsed time: 0:07m  processed files: 1 / 1  processed evts: 61540413 / 61540413]   
Events with exactly two muons: pass=31104343   all=61540413   -- eff=50.54 % cumulative eff=50.54 %
Muons with opposite charge: pass=24067843   all=31104343   -- eff=77.38 % cumulative eff=39.11 %
- Date
 - August 2018 
 
- Author
 - Stefan Wunsch (KIT, CERN) 
 
Definition in file df102_NanoAODDimuonAnalysis.C.