1 #ifndef __sbnanalysis_ana_SBNOsc_Utilities__
2 #define __sbnanalysis_ana_SBNOsc_Utilities__
16 #include "nusimdata/SimulationBase/MCTruth.h"
20 #include "gallery/Event.h"
24 #include "ubcore/LLBasicTool/GeoAlgo/GeoAABox.h"
50 double osc_dm2,
double osc_angle);
64 const std::vector<geoalgo::AABox> &boxes);
126 double ECCQE(
const TVector3& l_momentum,
double l_energy,
127 double energy_distortion=0.,
double angle_distortion=0.);
181 double visibleEnergy(TRandom &rand,
const simb::MCTruth &mctruth,
const std::vector<sim::MCTrack> &mctrack_list,
const std::vector<sim::MCShower> &mcshower_list,
182 const VisibleEnergyCalculator &calculator=VisibleEnergyCalculator(),
bool include_showers=
true);
184 double visibleEnergyProposal(TRandom &rand,
const simb::MCTruth &mctruth,
const std::vector<sim::MCTrack> &mctrack_list,
const VisibleEnergyCalculator &calculator);
185 double visibleEnergyProposalMCParticles(TRandom &rand,
const simb::MCTruth &mctruth,
const std::vector<sim::MCTrack> mctrack_list,
const VisibleEnergyCalculator &calculator);
194 double closestDistance(
const TVector3 &line0,
const TVector3 &line1,
const TVector3 &
p);
195 double closestDistanceDim(
const TVector3 &line0,
const TVector3 &line1,
const TVector3 &
p,
int dim);
200 #endif // __sbnanalysis_ana_SBNOsc_Utilities__
double visibleEnergyProposalMCParticles(TRandom &rand, const simb::MCTruth &mctruth, const std::vector< sim::MCTrack > mctrack_list, const VisibleEnergyCalculator &calculator)
int lepton_index
Index of lepton in the mctrack object.
double track_energy_distortion
Distortion of energies of tracks (%).
double visibleEnergyProposal(TRandom &rand, const simb::MCTruth &mctruth, const std::vector< sim::MCTrack > &mctrack_list, const VisibleEnergyCalculator &calculator)
double lepton_energy_distortion_leaving_A
Parameter in function to calculate primary lepton energy resolution.
bool isFromNuVertex(const simb::MCTruth &mc, const simb::MCParticle &mcp, float distance)
double closestDistance(const TVector3 &line0, const TVector3 &line1, const TVector3 &p)
double lepton_energy_distortion_contained
Distortion of energies of primary lepton whose tracks are contained within the TPC (%)...
process_name use argoneut_mc_hitfinder track
double visibleEnergy(TRandom &rand, const simb::MCTruth &mctruth, const std::vector< sim::MCTrack > &mctrack_list, const std::vector< sim::MCShower > &mcshower_list, const VisibleEnergyCalculator &calculator, bool include_showers)
process_name opflashCryoW ana
double shower_threshold
Energy threshold of shower energy counted in calculation [GeV].
VisibleEnergyCalculator()
double lepton_energy_distortion_leaving_B
Parameter in function to calculate primary lepton energy resolution.
double distance(geo::Point_t const &point, CathodeDesc_t const &cathode)
Returns the distance of a point from the cathode.
double smearLeptonEnergy(TRandom &rand, const sim::MCTrack &mct, const VisibleEnergyCalculator &calculator)
event::Interaction TruthReco(const simb::MCTruth &mctruth)
double PDGCharge(int pdg)
Class def header for mctrack data container.
double track_threshold
Energy threshold of track energy counted in calculation [GeV].
double shower_energy_distortion
Distortion of energies of showers (%).
double NuMuOscillation(double numu_energy, double numu_dist, double osc_dm2, double osc_angle)
double ECCQE(const TVector3 &l_momentum, double l_energy, double energy_distortion, double angle_distortion)
double containedLength(const TVector3 &v0, const TVector3 &v1, const std::vector< geoalgo::AABox > &boxes)
double lepton_contained_length
Length of section of primary lepton's track that is contained within the TPC.
Class def header for MCShower data container.
double closestDistanceDim(const TVector3 &line0, const TVector3 &line1, const TVector3 &p, int dim)
int lepton_pdgid
PDGID of lepton in the interaction. Used to add.
All truth information associated with one neutrino interaction.
bool lepton_contained
True if primary lepton's track is contained within TPC.