1 #include "art/Framework/Core/EDFilter.h"
2 #include "art/Framework/Core/ModuleMacros.h"
3 #include "art/Framework/Principal/Event.h"
4 #include "art/Framework/Principal/Handle.h"
5 #include "art/Framework/Principal/Run.h"
6 #include "art/Framework/Principal/SubRun.h"
7 #include "canvas/Utilities/InputTag.h"
8 #include "fhiclcpp/ParameterSet.h"
9 #include "messagefacility/MessageLogger/MessageLogger.h"
10 #include "ElectronEventSelectionAlg.h"
11 #include "art/Framework/Services/Optional/TFileService.h"
12 #include "larcoreobj/SummaryData/POTSummary.h"
15 #include "nusimdata/SimulationBase/MCParticle.h"
16 #include "nusimdata/SimulationBase/MCTruth.h"
17 #include "larevt/SpaceChargeServices/SpaceChargeService.h"
18 #include "lardata/DetectorInfoServices/DetectorPropertiesService.h"
19 #include "lardata/DetectorInfoServices/DetectorClocksService.h"
20 #include "lardata/DetectorInfo/DetectorProperties.h"
21 #include "uboone/EventWeight/EventWeightTreeUtility.h"
22 #include "uboone/EventWeight/MCEventWeight.h"
27 class ElectronNeutrinoFilter;
44 bool filter(art::Event & e)
override;
47 void reconfigure(fhicl::ParameterSet
const & p)
override;
48 void respondToOpenInputFile(art::FileBlock
const &fb)
override;
49 bool endSubRun(art::SubRun &sr)
override;
57 std::ofstream _run_subrun_list_file;
61 float _lee_bins[12] = {200, 300, 375, 475, 550, 675, 800, 950, 1100, 1300, 1500, 3000};
62 float _lee_scaling[13] = {0, 3.88549, 3.05421, 1.59615, 0.383725, 0, 0, 0, 0, 0, 0, 0, 0};
64 TH1F *_h_lee_scaling =
new TH1F(
"h_lee_scaling",
"", 11, _lee_bins);
65 int _selection_result;
67 std::vector< std::vector<double> > _genie_weights;
68 std::vector< std::string > _genie_names;
70 std::vector< std::vector<double> > _flux_weights;
71 std::vector< std::string > _flux_names;
77 bool m_isOverlaidSample;
80 unsigned int _subrun_sr;
81 unsigned int _n_true_nu;
88 int _interaction_type;
89 unsigned int _n_primaries;
90 bool _true_nu_is_fiducial;
100 std::vector<double> _nu_daughters_E;
101 std::vector<int> _nu_daughters_pdg;
102 std::vector<double> _flash_time;
103 std::vector<double> _flash_pe;
105 std::vector < std::vector<double> > _nu_daughters_p;
106 std::vector < std::vector<double> > _nu_daughters_start_v;
107 std::vector < std::vector<double> > _nu_daughters_end_v;
109 std::string _mctruthLabel =
"generator";
110 std::string _mcparticleLabel =
"largeant";
Definition: PandoraInterfaceHelper.h:55
Definition: ElectronEventSelectionAlg.h:61
Definition: GeometryHelper.h:40
Definition: ElectronNeutrinoFilter.h:30