diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/pid/L0ToPPi.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/pid/L0ToPPi.py index d758df832b9f06fe5af9d63d00df56d8473d13dd..864326dddadbbafe927fc425b41abbd1830839b5 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/pid/L0ToPPi.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/pid/L0ToPPi.py @@ -34,8 +34,11 @@ from Hlt2Conf.lines.pid.utils import constants, filters as flt all_lines = {} -def filter_protons(particles, p_min=2.0 * GeV, pt_min=0 * GeV): - code = F.require_all(F.P > p_min, F.PT > pt_min) +def filter_protons(particles, + p_min=2.0 * GeV, + pt_min=0 * GeV, + pt_max=1000 * GeV): + code = F.require_all(F.P > p_min, F.PT > pt_min, F.PT < pt_max) return ParticleFilter(particles, F.FILTER(code)) @@ -108,10 +111,33 @@ def make_l0dds( @register_line_builder(all_lines) -def L0ToPPi_LL(name="Hlt2PID_L0ToPPi_LL", prescale=0.03): +def L0ToPPi_LL_LowPT(name="Hlt2PID_L0ToPPi_LL_LowPT", prescale=0.002): pvs = make_pvs() protons = flt.filter_long_particles( - filter_protons(make_long_protons()), pvs, trchi2_max=4, mipchi2_min=36) + filter_protons(make_long_protons(), pt_max=1.5 * GeV), + pvs, + trchi2_max=4, + mipchi2_min=36) + pions = flt.filter_long_particles( + make_long_pions(), pvs, trchi2_max=4, mipchi2_min=36) + l0lls = make_l0lls(protons, pions, pvs) + + return HltLine( + name=name, + algs=flt.pid_prefilters() + [l0lls], + prescale=prescale, + persistreco=True, + ) + + +@register_line_builder(all_lines) +def L0ToPPi_LL_MidPT(name="Hlt2PID_L0ToPPi_LL_MidPT", prescale=0.01): + pvs = make_pvs() + protons = flt.filter_long_particles( + filter_protons(make_long_protons(), pt_min=1.5 * GeV, pt_max=3 * GeV), + pvs, + trchi2_max=4, + mipchi2_min=36) pions = flt.filter_long_particles( make_long_pions(), pvs, trchi2_max=4, mipchi2_min=36) l0lls = make_l0lls(protons, pions, pvs) @@ -125,10 +151,10 @@ def L0ToPPi_LL(name="Hlt2PID_L0ToPPi_LL", prescale=0.03): @register_line_builder(all_lines) -def L0ToPPi_LL_HighPT(name="Hlt2PID_L0ToPPi_LL_HighPT", prescale=1): +def L0ToPPi_LL_HighPT(name="Hlt2PID_L0ToPPi_LL_HighPT", prescale=0.1): pvs = make_pvs() protons = flt.filter_long_particles( - filter_protons(make_long_protons(), pt_min=3 * GeV), + filter_protons(make_long_protons(), pt_min=3 * GeV, pt_max=6 * GeV), pvs, trchi2_max=4, mipchi2_min=36) @@ -165,10 +191,11 @@ def L0ToPPi_LL_VeryHighPT(name="Hlt2PID_L0ToPPi_LL_VeryHighPT", prescale=1): @register_line_builder(all_lines) -def L0ToPPi_DD(name="Hlt2PID_L0ToPPi_DD", prescale=0.03): +def L0ToPPi_DD_LowPT(name="Hlt2PID_L0ToPPi_DD_LowPT", prescale=0.002): pvs = make_pvs() protons = flt.filter_down_particles( - filter_protons(make_down_protons()), + filter_protons( + make_down_protons(), pt_min=0.175 * GeV, pt_max=1.5 * GeV), p_min=3.0 * GeV, pt_min=0.175 * GeV, trchi2_max=4, @@ -190,10 +217,34 @@ def L0ToPPi_DD(name="Hlt2PID_L0ToPPi_DD", prescale=0.03): @register_line_builder(all_lines) -def L0ToPPi_DD_HighPT(name="Hlt2PID_L0ToPPi_DD_HighPT", prescale=1): +def L0ToPPi_DD_MidPT(name="Hlt2PID_L0ToPPi_DD_MidPT", prescale=0.01): + pvs = make_pvs() + protons = flt.filter_down_particles( + filter_protons(make_down_protons(), pt_min=1.5 * GeV, pt_max=3 * GeV), + p_min=3.0 * GeV, + trchi2_max=4, + ) + pions = flt.filter_down_particles( + make_down_pions(), + p_min=3.0 * GeV, + pt_min=0.175 * GeV, + trchi2_max=4, + ) + l0dds = make_l0dds(protons, pions, pvs) + + return HltLine( + name=name, + algs=flt.pid_prefilters() + [l0dds], + prescale=prescale, + persistreco=True, + ) + + +@register_line_builder(all_lines) +def L0ToPPi_DD_HighPT(name="Hlt2PID_L0ToPPi_DD_HighPT", prescale=0.1): pvs = make_pvs() protons = flt.filter_down_particles( - filter_protons(make_down_protons()), + filter_protons(make_down_protons(), pt_min=3.0 * GeV, pt_max=6 * GeV), p_min=3.0 * GeV, pt_min=3.0 * GeV, trchi2_max=4, @@ -218,7 +269,7 @@ def L0ToPPi_DD_HighPT(name="Hlt2PID_L0ToPPi_DD_HighPT", prescale=1): def L0ToPPi_DD_VeryHighPT(name="Hlt2PID_L0ToPPi_DD_VeryHighPT", prescale=1): pvs = make_pvs() protons = flt.filter_down_particles( - filter_protons(make_down_protons()), + filter_protons(make_down_protons(), pt_min=6.0 * GeV), p_min=3.0 * GeV, pt_min=6.0 * GeV, trchi2_max=4,