Skip to content
Snippets Groups Projects
Commit 948c07e1 authored by Marian Stahl's avatar Marian Stahl Committed by Rosen Matev
Browse files

[monitoring/hlt1_ks_line_monitoring] drop charm builders

parent 4a211356
No related branches found
No related tags found
1 merge request!1476drop charm builders
......@@ -29,13 +29,14 @@ loose kinematical selections.
TODO: all lines are currently missing HLT1 filtering (waiting for ThOr filter).
"""
import Functors as F
from GaudiKernel.SystemOfUnits import MeV, GeV
from Hlt2Conf.standard_particles import make_long_pions, make_down_pions
from Moore.config import register_line_builder
from Moore.lines import Hlt2Line
from RecoConf.reconstruction_objects import make_pvs
from Hlt2Conf.lines.charm.builders import (filter_particles, combine_2body,
combine_3body)
from Hlt2Conf.algorithms_thor import (ParticleFilter, ParticleCombiner,
require_all)
from Hlt2Conf.standard_particles import make_long_pions, make_down_pions
from Hlt2Conf.lines.charm.particle_properties import _PION_M
from Hlt2Conf.lines.charm.prefilters import charm_prefilters
......@@ -45,13 +46,16 @@ from Hlt2Conf.lines.charm.prefilters import charm_prefilters
def _hlt1validation_pions():
return filter_particles(
return ParticleFilter(
make_long_pions(),
pvs=make_pvs(),
pt_min=400 * MeV,
p_min=2 * GeV,
# trchi2dof_max=2.5, # TODO
mipchi2_min=15.)
F.FILTER(
require_all(
F.PT > 400 * MeV,
F.P > 2 * GeV,
# trchi2dof_max=2.5, # TODO
F.MINIPCHI2CUT(IPChi2Cut=15., Vertices=make_pvs()),
), ),
)
#########################
......@@ -66,18 +70,25 @@ def dptopimpippip_line(
name="Hlt2Monitoring_DpToPimPipPip_PR_Hlt1Monitoring_Line",
prescale=2e-4,
persistreco=True):
dplus = combine_3body(
_hlt1validation_pions(),
_hlt1validation_pions(),
_hlt1validation_pions(),
"[D+ -> pi- pi+ pi+]cc",
pvs=make_pvs(),
comb_m_min=1740 * MeV,
comb_m_max=2000 * MeV,
m_min=1770 * MeV,
m_max=1970 * MeV,
sum_pt_min=1500 * MeV,
comb12_m_max=2000 * MeV - _PION_M)
dplus = ParticleCombiner(
[
_hlt1validation_pions(),
_hlt1validation_pions(),
_hlt1validation_pions()
],
DecayDescriptor="[D+ -> pi- pi+ pi+]cc",
name="Monitoring_Hlt1KsLine_DpToPimPipPip",
Combination12Cut=F.MASS < 2000 * MeV - _PION_M,
CombinationCut=require_all(
F.MASS > 1740 * MeV,
F.MASS < 2000 * MeV,
F.SUM(F.PT) > 1500 * MeV,
),
CompositeCut=require_all(
F.MASS > 1770 * MeV,
F.MASS < 1970 * MeV,
),
)
return Hlt2Line(
name=name,
algs=charm_prefilters() + [dplus],
......@@ -92,28 +103,37 @@ def dptopimpippip_line(
def dptokspip_line(name="Hlt2Monitoring_DpToKsPip_PR_Hlt1Monitoring_Line",
prescale=2e-3,
persistreco=True):
ks0 = combine_2body(
_hlt1validation_pions(),
_hlt1validation_pions(),
"KS0 -> pi+ pi-",
pvs=make_pvs(),
comb_m_min=430 * MeV,
comb_m_max=570 * MeV,
m_min=450 * MeV,
m_max=550 * MeV,
vchi2dof_max=10,
sum_pt_min=200 * MeV)
dplus = combine_2body(
ks0,
_hlt1validation_pions(),
"[D+ -> KS0 pi+]cc",
pvs=make_pvs(),
comb_m_min=1740 * MeV,
comb_m_max=2000 * MeV,
m_min=1770 * MeV,
m_max=1970 * MeV,
sum_pt_min=1500 * MeV)
ks0 = ParticleCombiner(
[_hlt1validation_pions(),
_hlt1validation_pions()],
DecayDescriptor="KS0 -> pi+ pi-",
name="Monitoring_Hlt1KsLine_Ks_for_DpToKsPip",
CombinationCut=require_all(
F.MASS > 430 * MeV,
F.MASS < 570 * MeV,
F.SUM(F.PT) > 200 * MeV,
),
CompositeCut=require_all(
F.MASS > 450 * MeV,
F.MASS < 550 * MeV,
F.CHI2DOF < 10,
),
)
dplus = ParticleCombiner(
[ks0, _hlt1validation_pions()],
DecayDescriptor="[D+ -> KS0 pi+]cc",
name="Monitoring_Hlt1KsLine_DpToKsPip",
CombinationCut=require_all(
F.MASS > 1740 * MeV,
F.MASS < 2000 * MeV,
F.SUM(F.PT) > 1500 * MeV,
),
CompositeCut=require_all(
F.MASS > 1770 * MeV,
F.MASS < 1970 * MeV,
),
)
return Hlt2Line(
name=name,
algs=charm_prefilters() + [dplus],
......@@ -130,25 +150,32 @@ def passthrough_ks_line(
prescale=1e-4,
persistreco=True):
pions = filter_particles(
pions = ParticleFilter(
make_long_pions(),
pvs=make_pvs(),
pt_min=400 * MeV,
p_min=2 * GeV,
# trchi2dof_max=2.5, # TODO
mipchi2_min=20.)
ks0 = combine_2body(
pions,
pions,
"KS0 -> pi+ pi-",
pvs=make_pvs(),
comb_m_min=430 * MeV,
comb_m_max=570 * MeV,
m_min=455 * MeV,
m_max=545 * MeV,
vchi2dof_max=25,
sum_pt_min=250 * MeV)
F.FILTER(
require_all(
F.PT > 400 * MeV,
F.P > 2 * GeV,
# trchi2dof_max=2.5, # TODO
F.MINIPCHI2CUT(IPChi2Cut=20., Vertices=make_pvs()),
), ),
)
ks0 = ParticleCombiner(
[pions, pions],
DecayDescriptor="KS0 -> pi+ pi-",
name="Monitoring_Hlt1KsLine_Ks_for_Passthrough",
CombinationCut=require_all(
F.MASS > 430 * MeV,
F.MASS < 570 * MeV,
F.SUM(F.PT) > 250 * MeV,
),
CompositeCut=require_all(
F.MASS > 455 * MeV,
F.MASS < 545 * MeV,
F.CHI2DOF < 25,
),
)
return Hlt2Line(
name=name,
......@@ -165,28 +192,36 @@ def inclksks_line(name="Hlt2Monitoring_InclKsKs_PR_Hlt1Monitoring_Line",
prescale=1e-2,
persistreco=True):
ks0 = combine_2body(
make_long_pions(),
make_long_pions(),
"KS0 -> pi+ pi-",
pvs=make_pvs(),
comb_m_min=430 * MeV,
comb_m_max=570 * MeV,
m_min=455 * MeV,
m_max=545 * MeV,
vchi2dof_max=10,
sum_pt_min=200 * MeV)
x0 = combine_2body(
ks0,
ks0,
"D0 -> KS0 KS0",
pvs=make_pvs(),
comb_m_min=1350 * MeV,
comb_m_max=5550 * MeV,
m_min=1400 * MeV,
m_max=5500 * MeV,
sum_pt_min=500 * MeV)
ks0 = ParticleCombiner(
[make_long_pions(), make_long_pions()],
DecayDescriptor="KS0 -> pi+ pi-",
name="Monitoring_Hlt1KsLine_Ks_for_InclKsKs",
CombinationCut=require_all(
F.MASS > 430 * MeV,
F.MASS < 570 * MeV,
F.SUM(F.PT) > 200 * MeV,
),
CompositeCut=require_all(
F.MASS > 455 * MeV,
F.MASS < 545 * MeV,
F.CHI2DOF < 10,
),
)
x0 = ParticleCombiner(
[ks0, ks0],
DecayDescriptor="D0 -> KS0 KS0",
name="Monitoring_Hlt1KsLine_InclKsKs",
CombinationCut=require_all(
F.MASS > 1350 * MeV,
F.MASS < 5550 * MeV,
F.SUM(F.PT) > 500 * MeV,
),
CompositeCut=require_all(
F.MASS > 1400 * MeV,
F.MASS < 5500 * MeV,
),
)
return Hlt2Line(
name=name,
......@@ -206,22 +241,26 @@ def passthrough_v0_downstream_line(
persistreco=True):
# TODO: Fix the prescale once Hlt1PassthroughDecision prescale is defined
pions = filter_particles(
pions = ParticleFilter(
make_down_pions(),
pvs=make_pvs(),
pt_min=200 * MeV,
p_min=1 * GeV,
mipchi2_min=5.)
v0 = combine_2body(
pions,
pions,
"KS0 -> pi+ pi-",
pvs=make_pvs(),
comb_m_min=0 * MeV, # needed to avoid combiner error
comb_m_max=1000000 * MeV,
m_min=0 * MeV,
m_max=1000000 * MeV) # needed to avoid combiner error
F.FILTER(
require_all(
F.PT > 200 * MeV,
F.P > 1 * GeV,
F.MINIPCHI2CUT(IPChi2Cut=5., Vertices=make_pvs()),
), ),
)
v0 = ParticleCombiner(
[pions, pions],
DecayDescriptor="KS0 -> pi+ pi-",
name="Monitoring_Hlt1KsLine_Ks_DD_for_Passthrough",
CombinationCut=require_all(
F.MASS > 0 * MeV, # needed to avoid combiner error
F.MASS < 1000000 * MeV,
),
CompositeCut=require_all(F.MASS > 0 * MeV, F.MASS < 1000000 * MeV),
) # needed to avoid combiner error
return Hlt2Line(
name=name,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment