Skip to content

How can I mask particles from the particle iterator, so they are not processed ?

rtysonCLAS12 edited this page Dec 18, 2020 · 4 revisions

There can be many tracks in the event builder that are not created by real particles but artifacts of the reconstruction. For example split off clusters in calorimeters. When processing events it is better to remove such tracks to better select topologies with less background.

To implement such a mask you can create a MaskedEventParticles class and give it to your final state analysis, an example is MaskCalorSplitOffs which removes split off clusters detected in the calorimeter

   FS->MaskParticles(new MaskCalorSplitOffs(50,50,50,1) );//currently only works with inclusive =="ALL"

Note the parameters here are the distance between clusters for neutral,+ve and -ve particle, while the 1 (could be 0) causes the clusters to be merged (just removes the extra cluster). An additional cut is also put on the requirement of a PCAL hit for valid neutrals.

After running histograms of the distance between clusters are output to chanser::MaskedEventParticles.root for inspections (to check the cut values (50 here) are appropriate).

You can also mask photons that were radiated by electrons and positrons, and correct the electron/positron momentum, with:

   FS->MaskParticles(new MaskRadPhotons(30,0.7,1));

More information on this class is found here.