icecube.offline_filterscripts.filter_segments.Elowen_offline_filter module¶
ELOWEN offline filter segment.
This segment defines the “ELOWEN_Filter_24”
To calculate this filter, this segment:
Uses the DeepCorefilter
Adds SRTInIcePulses
Uses simple cuts on HLC hits, SRT hits, charge and several NoiseEngine instances
- returns:
filter results per-split
- rtype:
I3Bool in InIceSplit P frames named “ELOWEN_Filter_24” with
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.HLCcuttwo(frame, decision_name='ELOWEN_Filter_HLCcut')¶
Ensure less than 10 HLC hits in DeepCore
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.HLCsel(frame, decision_name='ELOWEN_Filter_HLCsel')¶
Select events on HLC in and outside of DeepCore.
Counts HLC hits in Deepcore (string >78) and icecube without deepcore, filters on (HLC_IC == 0) or (HLC_IC<=6 and HLC_DC<=7) Result saved under key decision_name
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.NEcutone(frame, decision_name='ELOWEN_Filter_NE1')¶
Filter on NoiseEngine settings.
Either more than 2 pairs with velocity between 0.2 and 0.9 in 100ns Or more than 0 pairs with velocity between 0.2 and 0.9 in 100ns Result saved under key decision_name
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.NEcuttwo(frame, decision_name='ELOWEN_Filter_NE2')¶
Filter on NoiseEngine settings.
Either more than 2 pairs with velocity between 0.1 and 0.9 in 300ns Or more than 2 pairs with velocity between 0.2 and 0.4 in 300ns Or more than 2 pairs with velocity between 0.1 and 0.9 in 300ns and no more than 0 pairs with velocity between 0.0 and 0.1 in 800ns Or more than 2 pairs with velocity between 0.2 and 0.5 in 500ns
- class icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.Positional(context)¶
Bases:
I3ConditionalModule
Check first hit position and time between first tWo HLC hits.
Filters on -505 > z_firsthlc > -210 and for the distance between first two hits to be less than 70 and timedelta < 50.
The filter result is stored under the key “ELOWEN_Filter_positions”.
- Configure()¶
Configure the module.
- Geometry(frame)¶
Process the geometry frame.
- Physics(frame)¶
Process the physics frame.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.Qcut(frame, decision_name='ELOWEN_Filter_Qcut')¶
Filter on charge fraction.
Calculates total charge in DeepCore (string >78), Counts charge in first 600ns (early charge) excluding the first hit, filters on early charge / total charge >0.26 Result saved under key decision_name
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.Qcuttot(frame, decision_name='ELOWEN_Filter_Qtot')¶
Ensure less than 60 PE of charge in the detector.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.SRTsel(frame, decision_name='ELOWEN_Filter_SRT')¶
Ensure less than 10 SRT hits total.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.all_elowen_filters_passed(frame)¶
Check if all the subfilters have been run and have passed.
Adds a key “ELOWEN_Filter_bool” to the frame with a boolean value indicating whether all subfilters passed.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.deep_core_filter_check(frame)¶
Check if the DeepCore filter exists and is true.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.elowenfilter(tray, name='ELOWEN_filter')¶
Run all the ELOWEN filtersteps.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.hlc_with_atwd_fadc(flag)¶
Check if hit is hlc with ATWD and FADC readout.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.on_deepcore_string(omkey, include_36=False)¶
Check if the hit was on strings 79-86.
- icecube.offline_filterscripts.filter_segments.Elowen_offline_filter.step_passed(frame, name)¶
Check if a frame with a given name exists and if it has passed.