icecube.offline_filterscripts.filter_segments.faintparticle_filter module

FaintParticleFilter 2024 tray segment.

This segment defines the “FaintParticleFilter_24”. To calculate this filter, this segment:

  1. Runs noise engine on all events that were only triggered by the FaintParticleTrigger and find the filter decision based on the result

  2. For events with a FPT + another trigger or events that satisfied the DCOnline filter, a cut on the number of hlc_pulses and NChannel in DC is applied

  3. If the DC cut is satisfied a cut on the number of pulses and NChannel in IC is applied. The event is kept if it is within the threshold. Otherwise the corresponding q-frame is marked to apply IceHive in the next FPF_hive module.

  4. Cleaning modules, with the SeedProcedure based on the HLC content in DC of the event, are applied

  5. SPE and MPE fits are calculated for the events that already passed the filter.

returns:
  • I3Bool in InIceSplit p-frames named “FaintParticleFilter_24” with the filter result

  • I3Bool run_hive in the q-frame if IceHive needs to be applied

icecube.offline_filterscripts.filter_segments.faintparticle_filter.FPF_NEcut(frame, config_key)

Write filter decision for only FPT events based on NoiseEngine result.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.FaintParticleFilter(tray, name, If=<function <lambda>>)

Define the FaintParticleFilter segment.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.FaintParticleFilter_decision(frame)

Run the faint particle filter.

class icecube.offline_filterscripts.filter_segments.faintparticle_filter.MarkQForHive(context)

Bases: I3PacketModule

Mark q-frames to apply HiveSplitter.

FramePacket(frames)

Mark q-frames to apply HiveSplitter.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.check_DConline_or_FPT(frame)

Check if the frame has the FPT trigger_id or passed the online DC filter.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.fpf_procedure_check(frame, name, procedure=1)

Check procedure for cleaning modules.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.get_nchannel_and_hlc_pulses(frame, pulsemap)

Return NChannel and HLC pulses for a given pulsemap.

icecube.offline_filterscripts.filter_segments.faintparticle_filter.passed(frame, name)

Check if a key with a given name exists and if it is true.