All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
InteractionHisto.h
Go to the documentation of this file.
1 #ifndef _sbnanalysis_InteractionHisto_hh
2 #define _sbnanalysis_InteractionHisto_hh
3 
4 #include <string>
5 #include <vector>
6 
7 #include <core/Event.hh>
9 
10 #include "../Data/RecoEvent.h"
11 #include "../Data/RecoTrack.h"
12 #include "../Data/Mode.h"
13 
14 #include "HistoList.h"
15 
16 class TH1D;
17 class TH2D;
18 namespace ana {
19  namespace SBNOsc {
20 
21 /**
22  * Histograms associated with neutrino interactions. Filled for the list of all true
23  * and reco vertices. These histograms are constructed per interaction mode per cut.
24  */
25 struct InteractionHistos : public HistoList {
26 
27  TH1D *track_length; //!< Length of the reconstructed primary track
28  TH1D *nuE; //!< Neutrino energy
29  TH1D *track_p; //!< Primary track momentum
30  TH1D *beam_center_distance; //!< Distance of the neutrino interaction to the beam center
31  TH1D *Q2; //!< Q2 of the interaction
32  TH1D *true_contained_length; //!< True contained length of primary track
33  TH1D *true_track_multiplicity; //!< True particle multiplicity of the interaction
34  TH1D *crosses_tpc; //!< Whether the primary track crosses a TPC boundary
35  TH1D *dist_to_match; //!< Distance from this vertex to the closest matching vertex reco->truth and truth->reco
36  TH1D *primary_track_completion; //!< Completion of the primary track
37  TH1D *n_reco_vertices; //!< Number of reconstructed vertices in the event with this vertex
38  TH1D *maxpe_crt_intime_hit; //!< Maximum number of PE's in a single CRT hit in time with the beam
41  TH1D *crt_pes;
42  TH1D *fmatch_score;
48  TH1D *fmatch_time;
53  TH2D *vertex_xy;
54  TH2D *vertex_yz;
55  TH2D *vertex_xz;
56  TH1D *vertex_x;
57  TH1D *vertex_y;
58  TH1D *vertex_z;
60 
61  /**
62  * Intialize the histograms
63  * \param prefix A prefix to be added to each histogram name
64  * \param mode The mode of interaction for these histograms
65  * \param index The cut index for these histograms.
66  */
67  void Initialize(const std::string &prefix, const geo::BoxBoundedGeo &detector_volume, const std::vector<double> &tagger_volume);
68 
69  /**
70  * Fill the histograms with a single reconstructed neutrino candidate
71  * \param vertex The reconstructed vertex being filled
72  * \param event The reco event object
73  * \param core_truth The list of true interactions from sbncode core
74  */
75  void Fill(
77  const numu::RecoEvent &event,
78  const std::vector<event::Interaction> &core_truth);
79 
80  /**
81  * Fill the histograms with a single true interaction
82  * \param interaction The true interaction
83  * \param mctruth_id ID of the interaction (index into the list of Interactions)
84  * \param event The reco event object
85  */
86  void Fill(const event::Interaction &interaction, unsigned mctruth_id, const numu::RecoEvent &event);
87 
88 private:
89  void FillEvent(const numu::RecoEvent &event);
90 };
91 
92  } // namespace SBNOSc
93 } // namespace ana
94 #endif
process_name vertex
Definition: cheaterreco.fcl:51
TH1D * true_contained_length
True contained length of primary track.
void FillEvent(const numu::RecoEvent &event)
TH1D * track_p
Primary track momentum.
TH1D * dist_to_match
Distance from this vertex to the closest matching vertex reco-&gt;truth and truth-&gt;reco.
TH1D * n_reco_vertices
Number of reconstructed vertices in the event with this vertex.
TH1D * nuE
Neutrino energy.
process_name opflashCryoW ana
TH1D * beam_center_distance
Distance of the neutrino interaction to the beam center.
void Initialize(const std::string &prefix, const geo::BoxBoundedGeo &detector_volume, const std::vector< double > &tagger_volume)
TH1D * maxpe_crt_intime_hit
Maximum number of PE&#39;s in a single CRT hit in time with the beam.
TH1D * Q2
Q2 of the interaction.
Provides a base class aware of world box coordinates.
A base class aware of world box coordinatesAn object describing a simple shape can inherit from this ...
Definition: BoxBoundedGeo.h:33
TH1D * track_length
Length of the reconstructed primary track.
TH1D * crosses_tpc
Whether the primary track crosses a TPC boundary.
TH1D * primary_track_completion
Completion of the primary track.
void Fill(const numu::RecoInteraction &vertex, const numu::RecoEvent &event, const std::vector< event::Interaction > &core_truth)
TH1D * true_track_multiplicity
True particle multiplicity of the interaction.
All truth information associated with one neutrino interaction.
Definition: Event.hh:150