Proton Reconstruction and Other Updates

Proton Reconstruction

  • Plan Completed! Except truth match and marking prong with highest proton score: PrimaryProton selection left the NTuple Analysis Stage


interPretEvent() Flow:

  1. Identify and Store – Muon and Proton Prongs
  2. Calculate and Set Muon Kinematics
    • setMuonParticleData( nuInt, muonProng);
  3. Calculate and Set Proton Kinematics
    • setProtonParticleData(nuInt,protonProngs,protonParticles,vertexZ);
  4. Calculate and Set Vertex Parameters
  • Future plan: Increase modularity by creating functions for each stage

Reconstruction Cut List – 04/28/2014





Is Plausible? (MC Only)

truth && !truthIsPlausible(truth)

BadObject flag

event->filtertaglist()->isFilterTagTrue( AnaFilterTags::BadObject() )


Is Vertex Exist?


Is Null Vertex?

interactionVertex == NULL

Is Analyzable?

Apothem = 1000, UpStreamZ = 5750, DownStreamZ = 8700

Is Fiducial?

Apothem = 850, UpStreamZ = 5990, DownStreamZ = 8340


Is Muon Exist or NULL?


Is Plausible? (MC Only)

m_doPlausibilityCuts && !muonIsPlausible( muonProng, mc_frac)

Is Muon Good?

muonPart->score() >= (m_minMuonScore = 0.9)


Is Vertex Michel Exist?

foundMichel == true

Is End Point Michel Exist?

foundMichel == true


Is Proton Good?

getProtonProng() uses “m_minProtonScore = 0.1”



  • Fiducial Volume Check
  • Prints Final State Particles with Parents
    • Study for primary and secondary particles in Final State
  • Count Number of Final State Particles
    • proton, neutron
    • mu-, mu+
    • pi0, pi-,pi+
    • delta+, gamma, other
  • Find Signal – CC Neutrino Interaction with FS Particles: muon, proton, pi0
  • Target Material
  • Vertex module and plane
  • Muon Kinematics