119 truth.SetOrigin( simb::kSuperNovaNeutrino );
128 const marley::Particle&
nu =
event.projectile();
129 const marley::Particle& lep =
event.ejectile();
130 double qx = nu.px() - lep.px();
131 double qy = nu.py() - lep.py();
132 double qz = nu.pz() - lep.pz();
133 double Enu = nu.total_energy();
134 double Elep = lep.total_energy();
135 double Q2 = qx*qx + qy*qy + qz*qz - std::pow(Enu - Elep, 2);
139 double bjorken_x = Q2 / (2 *
event.target().mass() * (Enu - Elep));
140 double inelasticity_y = 1. - Elep / Enu;
146 const marley::Particle& res =
event.residue();
147 double hadronic_mass_W = res.mass() +
event.Ex();
152 simb::kUnknownInteraction,
153 simb::kUnknownInteraction,
154 marley_utils::get_nucleus_pid(18, 40),
155 marley_utils::NEUTRON,
157 hadronic_mass_W * MeV_to_GeV,
160 Q2 * std::pow(MeV_to_GeV, 2)
163 if ( marley_event ) *marley_event = event;
std::unique_ptr< marley::Generator > fMarleyGenerator
void add_marley_particles(simb::MCTruth &truth, const std::vector< marley::Particle * > &particles, const TLorentzVector &vtx_pos, bool track)
std::stringstream fMarleyLogStream
Charged-current interactions.
BEGIN_PROLOG don t mess with this pandoraTrackGausCryoW true