ROOT::Math::PxPyPzMVectorDelta(parts[0]-parts[2]-parts[7]-parts[8]);//jpsi->l l' gamma, ignore gamma
doublenu=q.Dot(P)/P.mass();
doubleQ2=-q.Dot(q);
doublet=Delta.Dot(Delta);
inv_quantquantities={nu,Q2,Q2/2./P.mass()/nu,t};
returnquantities;
//import Geant4 and set the wanted particles in the intended order
//0:e0 1:p0 2:e1 3:p1 4:recoil system (without p1) 5:l1 from 4 6:l2 from 4
inlineautomomenta_sort_sim(conststd::vector<dd4pod::Geant4ParticleData>&parts,std::string_viewmother,std::string_viewdaughter){//mother and daughter are not used yet; will be useful when generater is different and/or when the mcparticles doesn't follow the same order in all events