demo2.C
Go to the documentation of this file.
1 // Create an oscillatable spectrum
2 
4 
5 #include "CAFAna/Core/Binning.h"
6 #include "CAFAna/Cuts/Cuts.h"
8 #include "CAFAna/Core/Spectrum.h"
10 #include "CAFAna/Vars/Vars.h"
11 
13 
14 #include "TCanvas.h"
15 #include "TH2.h"
16 
17 using namespace ana;
18 
19 
20 void demo2()
21 {
22  const std::string fname = "prod_sumdecaf_R19-11-18-prod5reco.f_fd_genie_N1810j0211a_nonswap_fhc_nova_v08_full_v1_numu2020";
23 
24  SpectrumLoader loader(fname);
25 
26  const Binning bins = Binning::Simple(100, 0, 1000);
27 
28  const Var kNHit([](const caf::SRProxy* sr)
29  {
30  return sr->slc.nhit;
31  });
32 
33  Spectrum nhit("Number of hits in slice", bins, loader, kNHit, kIsNumuCC);
34 
35  // With true energy axis too
36  OscillatableSpectrum sosc("Number of hits in slice", bins, loader, kNHit, kIsNumuCC);
37 
38  // Do it!
39  loader.Go();
40 
41  // How to scale histograms
42  const double pot = 18e20;
43 
44  // We have histograms
45  nhit.ToTH1(pot)->Draw("hist");
46 
47  // And 2D histograms
48  new TCanvas;
49  sosc.ToTH2(pot)->Draw("colz");
50 }
const Cut kIsNumuCC(CCFlavSel(14, 14))
Select CC .
Represent the binning of a Spectrum's x-axis.
Definition: Binning.h:16
Cuts and Vars for the 2020 FD DiF Study.
Definition: vars.h:6
void demo2()
Definition: demo2.C:20
Proxy for caf::StandardRecord.
Definition: SRProxy.h:2126
nhit
Definition: demo1.py:25
sosc
Definition: demo2.py:18
Representation of a spectrum in any variable, with associated POT.
Definition: Spectrum.h:40
caf::Proxy< unsigned int > nhit
Definition: SRProxy.h:1315
const Var kNHit
Definition: Vars.cxx:71
#define pot
caf::StandardRecord * sr
virtual void Go() override
Load all the registered spectra.
loader
Definition: demo0.py:10
const Binning bins
Definition: NumuCC_CPiBin.h:8
caf::Proxy< caf::SRSlice > slc
Definition: SRProxy.h:2142
Collaborates with Spectrum and OscillatableSpectrum to fill spectra from CAF files.
Spectrum with true energy information, allowing it to be oscillated
static Binning Simple(int n, double lo, double hi, const std::vector< std::string > &labels={})
Definition: Binning.cxx:107
TH2D * ToTH2(double pot) const
enum BeamMode string