diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/algorithms_thor.py b/Hlt/Hlt2Conf/python/Hlt2Conf/algorithms_thor.py index b870f5afe6d1b487a2668cd2ba8b49a01f4d4236..7a6b093dad0311c1e6db6612bf816264abe54994 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/algorithms_thor.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/algorithms_thor.py @@ -13,7 +13,7 @@ from PyConf import configurable from PyConf.Algorithms import ( ChargedBasicsFilter, ParticleRangeFilter, PrFilter__PV, TwoBodyCombiner, ThreeBodyCombiner, FourBodyCombiner, FiveBodyCombiner, SixBodyCombiner, - ParticleContainerMerger, MCParticleRangeFilter) + SevenBodyCombiner, ParticleContainerMerger, MCParticleRangeFilter) from Moore.persistence.particle_moving import is_particle_producer from RecoConf.reconstruction_objects import make_pvs @@ -34,6 +34,7 @@ PARTICLE_COMBINERS = { 4: FourBodyCombiner, 5: FiveBodyCombiner, 6: SixBodyCombiner, + 7: SevenBodyCombiner, }, } diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu.py index 0c976ec37a77d2a84609b403062922b30c996611..b8a5f6b71e2d8a95863700286fc0e70b96807082 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu.py @@ -88,7 +88,8 @@ def bstophiemu_line(name="Hlt2RD_BsToPhiEMu_PhiToKK", prescale=1): electrons = rdbuilder_thor.make_rd_detached_electrons( mipchi2dvprimary_min=9, pid=(F.PID_E > 2.)) muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons() + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2.)) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e-]cc") dikaons = b_to_hemu_builders.make_hh( @@ -118,8 +119,10 @@ def bdtokstemu_line(name="Hlt2RD_BdToKstEMu_KstToKpPim", prescale=1): electrons = rdbuilder_thor.make_rd_detached_electrons( mipchi2dvprimary_min=9, pid=(F.PID_E > 2.)) muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons() - pions = rdbuilder_thor.make_rd_has_rich_detached_pions() + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2.)) + pions = rdbuilder_thor.make_rd_has_rich_detached_pions( + mipchi2dvprimary_min=9) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e-]cc") kstars = b_to_hemu_builders.make_hh(kaons, pions, pvs, @@ -144,9 +147,11 @@ def lbtopkemu_line(name="Hlt2RD_LbToPKEMu", prescale=1): muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e-]cc") - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons(pid=(F.PID_K > 0)) + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) protons = rdbuilder_thor.make_rd_has_rich_detached_protons( - pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 0.)) + mipchi2dvprimary_min=9, + pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 2.)) dihadron = b_to_hemu_builders.make_hh( protons, kaons, @@ -174,7 +179,7 @@ def butokemuSS_line(name="Hlt2RD_BuToKpEMu_SameSign", prescale=1): mipchi2dvprimary_min=9, pid=(F.PID_E > 2.)) muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( - mipchi2dvprimary_min=9) + mipchi2dvprimary_min=9, pid=(F.PID_K > 2.)) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e+]cc") bu = b_to_hemu_builders.make_btohemu(kaons, dileptons, pvs, @@ -217,7 +222,8 @@ def bstophiemuSS_line(name="Hlt2RD_BsToPhiEMu_SameSign_PhiToKK", prescale=1): electrons = rdbuilder_thor.make_rd_detached_electrons( mipchi2dvprimary_min=9, pid=(F.PID_E > 2.)) muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons() + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2.)) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e+]cc") dikaons = b_to_hemu_builders.make_hh( @@ -248,8 +254,10 @@ def bdtokstemuSS_line(name="Hlt2RD_BdToKstEMu_SameSign_KstToKpPim", electrons = rdbuilder_thor.make_rd_detached_electrons( mipchi2dvprimary_min=9, pid=(F.PID_E > 2.)) muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons() - pions = rdbuilder_thor.make_rd_has_rich_detached_pions() + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2.)) + pions = rdbuilder_thor.make_rd_has_rich_detached_pions( + mipchi2dvprimary_min=9) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e+]cc") kstars = b_to_hemu_builders.make_hh(kaons, pions, pvs, @@ -274,9 +282,11 @@ def lbtopkemuSS_line(name="Hlt2RD_LbToPKEMu_SameSign", prescale=1): muons = rdbuilder_thor.make_rd_detached_muons(mipchi2dvprimary_min=9) dileptons = b_to_hemu_builders.make_dilepton(muons, electrons, pvs, "[J/psi(1S) -> mu+ e+]cc") - kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons(pid=(F.PID_K > 0)) + kaons = rdbuilder_thor.make_rd_has_rich_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) protons = rdbuilder_thor.make_rd_has_rich_detached_protons( - pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 0.)) + mipchi2dvprimary_min=9, + pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 2.)) dihadron = b_to_hemu_builders.make_hh( protons, kaons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu_control_modes.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu_control_modes.py index 11e98cac73e3e423f92633fb1f4f340733ed3bcc..c6230153d332958a973f31d91ed9829fe1d707c1 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu_control_modes.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_hemu_control_modes.py @@ -41,7 +41,8 @@ all_lines = {} @configurable def butokjpsi_mumu_line(name="Hlt2RD_BuToKpJpsi_JpsiToMuMu", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons(mipchi2dvprimary_min=9) + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) dileptons = rdbuilder_thor.make_rd_detached_dimuon(am_max=5500 * MeV) bu = b_to_hemu_builders.make_btohemu(kaons, dileptons, pvs, "[B+ -> J/psi(1S) K+]cc") @@ -76,7 +77,8 @@ def butopijpsi_mumu_line(name="Hlt2RD_BuToPipJpsi_JpsiToMuMu", prescale=1): def bstophijpsi_mumu_line(name="Hlt2RD_BsToPhiJpsi_PhiToKK_JpsiToMuMu", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons() + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) dileptons = rdbuilder_thor.make_rd_detached_dimuon(am_max=5500 * MeV) dikaons = b_to_hemu_builders.make_hh( kaons, @@ -88,7 +90,7 @@ def bstophijpsi_mumu_line(name="Hlt2RD_BsToPhiJpsi_PhiToKK_JpsiToMuMu", m_max=1100 * MeV, ) bs = b_to_hemu_builders.make_btohemu(dikaons, dileptons, pvs, - "[B+ -> J/psi(1S) phi(1020)]cc") + "B_s0 -> J/psi(1S) phi(1020)") return Hlt2Line( name=name, @@ -103,13 +105,14 @@ def bstophijpsi_mumu_line(name="Hlt2RD_BsToPhiJpsi_PhiToKK_JpsiToMuMu", def bdtokstjpsi_mumu_line(name="Hlt2RD_BdToKstJpsi_KstToKpPim_JpsiToMuMu", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons() - pions = rdbuilder_thor.make_rd_detached_pions() + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) + pions = rdbuilder_thor.make_rd_detached_pions(mipchi2dvprimary_min=9) dileptons = rdbuilder_thor.make_rd_detached_dimuon(am_max=5500 * MeV) kstars = b_to_hemu_builders.make_hh(kaons, pions, pvs, "[K*(892)0 -> K+ pi-]cc") bd = b_to_hemu_builders.make_btohemu(kstars, dileptons, pvs, - "[B+ -> J/psi(1S) K*(892)0]cc") + "[B0 -> J/psi(1S) K*(892)0]cc") return Hlt2Line( name=name, @@ -124,8 +127,10 @@ def bdtokstjpsi_mumu_line(name="Hlt2RD_BdToKstJpsi_KstToKpPim_JpsiToMuMu", def lbtopkjpsi_mumu_line(name="Hlt2RD_LbToPKJpsi_JpsiToMuMu", prescale=1): pvs = make_pvs() dileptons = rdbuilder_thor.make_rd_detached_dimuon(am_max=5500 * MeV) - kaons = rdbuilder_thor.make_rd_detached_kaons(pid=(F.PID_K > 0)) + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) protons = rdbuilder_thor.make_rd_detached_protons( + mipchi2dvprimary_min=9, pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 0.)) dihadron = b_to_hemu_builders.make_hh( protons, @@ -150,7 +155,8 @@ def lbtopkjpsi_mumu_line(name="Hlt2RD_LbToPKJpsi_JpsiToMuMu", prescale=1): @configurable def butokjpsi_ee_line(name="Hlt2RD_BuToKpJpsi_JpsiToEE", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons(mipchi2dvprimary_min=9) + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) dileptons = rdbuilder_thor.make_rd_detached_dielectron( pid_e_min=2, am_max=5500 * MeV) bu = b_to_hemu_builders.make_btohemu(kaons, dileptons, pvs, @@ -187,7 +193,8 @@ def butopijpsi_ee_line(name="Hlt2RD_BuToPipJpsi_JpsiToEE", prescale=1): def bstophijpsi_ee_line(name="Hlt2RD_BsToPhiJpsi_PhiToKK_JpsiToEE", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons() + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) dileptons = rdbuilder_thor.make_rd_detached_dielectron( pid_e_min=2, am_max=5500 * MeV) dikaons = b_to_hemu_builders.make_hh( @@ -215,8 +222,9 @@ def bstophijpsi_ee_line(name="Hlt2RD_BsToPhiJpsi_PhiToKK_JpsiToEE", def bdtokstjpsi_ee_line(name="Hlt2RD_BdToKstJpsi_KstToKpPim_JpsiToEE", prescale=1): pvs = make_pvs() - kaons = rdbuilder_thor.make_rd_detached_kaons() - pions = rdbuilder_thor.make_rd_detached_pions() + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) + pions = rdbuilder_thor.make_rd_detached_pions(mipchi2dvprimary_min=9) dileptons = rdbuilder_thor.make_rd_detached_dielectron( pid_e_min=2, am_max=5500 * MeV) kstars = b_to_hemu_builders.make_hh(kaons, pions, pvs, @@ -238,8 +246,10 @@ def lbtopkjpsi_ee_line(name="Hlt2RD_LbToPKJpsi_JpsiToEE", prescale=1): pvs = make_pvs() dileptons = rdbuilder_thor.make_rd_detached_dielectron( pid_e_min=2, am_max=5500 * MeV) - kaons = rdbuilder_thor.make_rd_detached_kaons(pid=(F.PID_K > 0)) + kaons = rdbuilder_thor.make_rd_detached_kaons( + mipchi2dvprimary_min=9, pid=(F.PID_K > 2)) protons = rdbuilder_thor.make_rd_detached_protons( + mipchi2dvprimary_min=9, pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 0.)) dihadron = b_to_hemu_builders.make_hh( protons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_multilepton_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_multilepton_hlt2.py index e8fb5ba31127944655895edde9d1ee0b6b9ba8a8..6fadfe178bf34cf7c1197e619943c9ab616c34ed 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_multilepton_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_multilepton_hlt2.py @@ -30,6 +30,7 @@ import Functors as F from Moore.config import Hlt2Line, register_line_builder +from GaudiKernel.SystemOfUnits import MeV from .builders.rdbuilder_thor import ( make_rd_detached_muons, make_rd_detached_kaons, make_rd_detached_dimuon, make_rd_detached_dielectron, make_rd_detached_electrons) @@ -252,7 +253,8 @@ def BTo3LLP_LLPToMuMu_LLL_line(name="Hlt2RD_BTo3LLP_LLPToMuMu_LLL", prescale=1, persistreco=False): """Bs/Bd -> X (mumu) X (mumu) X (mumu) with long muon combinations""" - dimuons_long = make_rd_detached_dimuon(parent_id="KS0", pidmu_muon_min=0) + dimuons_long = make_rd_detached_dimuon( + parent_id="KS0", pidmu_muon_min=0, pt_muon_min=150 * MeV) b = make_B26l_LLP( dimuons_long, dimuons_long, @@ -294,8 +296,9 @@ def BuTo3LLPKp_LLPToMuMu_LLL_line(name="Hlt2RD_BuTo3LLPKp_LLPToMuMu_LLL", prescale=1, persistreco=False): """B+ -> X (mumu) X (mumu) X (mumu) K+ with long muon combinations""" - dimuons_long = make_rd_detached_dimuon(parent_id="KS0", pidmu_muon_min=0) - kaon = make_rd_detached_kaons(pid=(F.PID_K > 0.), mipchi2dvprimary_min=25.) + dimuons_long = make_rd_detached_dimuon( + parent_id="KS0", pidmu_muon_min=0, pt_muon_min=150 * MeV) + kaon = make_rd_detached_kaons(pid=(F.PID_K > 0.), mipchi2dvprimary_min=16.) b = make_B26lK_LLP( dimuons_long, dimuons_long, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_v0ll_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_v0ll_hlt2.py index 759c0c5609dd3c863c6f3cd27bc89e4396b80bdc..9a7a58062837b2d997a107f82e93de8781e949d9 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_v0ll_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_v0ll_hlt2.py @@ -58,7 +58,7 @@ B2V0ll_Selections = { "min_pt_e": 500 * MeV, "min_pt_mu": 500. * MeV, "max_vchi2ndof": 9., - "min_probnn_mu": None, + "min_probnn_mu": None, # Until ProbNNmu is working "min_PIDmu": 0.0, "IsMuon": True, "min_PIDe": 0.0, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_hlt2.py index 65c696b164fa40c704a58411e5c4256c1f07cedb..1d744d6a61c9637be78ac7a683f1f9596a776236 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_hlt2.py @@ -41,30 +41,27 @@ from Hlt2Conf.lines.rd.builders.rd_prefilters import rd_prefilter, _RD_MONITORIN all_lines = {} +def make_kstar0s_with_tighter_mass(): + return ParticleFilter( + make_rd_detached_kstar0s(), + F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), + name="rd_detached_kstar0s_mass_btoxgamma_{hash}") + + +def make_rho0s_with_tighter_mass(): + return ParticleFilter( + make_rd_detached_rho0(), + F.FILTER(F.require_all(F.MASS > 500. * MeV, F.MASS < 1850 * MeV)), + name="rd_detached_rho0s_mass_btoxgamma_{hash}") + + @register_line_builder(all_lines) def bd_to_kpigamma_gammatoeeLL_line(name="Hlt2RD_BdToKpPimGamma_GammaToEELL", persistreco=False, prescale=1.): pvs = make_pvs() - kpi = ParticleFilter( - make_rd_detached_kstar0s( - name="rd_detached_kstar0s_{hash}", - am_max=2000. * MeV, - k_pid=(F.PID_K > 2.), - pi_pid=(F.PID_K < 2.), - k_ipchi2_min=9., - pi_ipchi2_min=9., - k_p_min=2. * GeV, - pi_p_min=2. * GeV, - k_pt_min=250. * MeV, - pi_pt_min=250. * MeV, - vchi2pdof_max=10., - adocachi2cut=10., - kstar0_pt_min=800. * MeV, - ), - F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), - name="rd_detached_kstar0s_tightermass_{hash}") + kpi = make_kstar0s_with_tighter_mass() photons = make_gamma_eeLL(pvs, max_pid_e_min=2) @@ -137,21 +134,7 @@ def bd_to_pipigamma_gammatoeeLL_line(name="Hlt2RD_BdToPipPimGamma_GammaToEELL", prescale=1.): pvs = make_pvs() - pipi = ParticleFilter( - make_rd_detached_rho0( - name="rd_detached_rho0_{hash}", - am_max=2000. * MeV, - pi_pid=(F.PID_K < 2.), - pi_ipchi2_min=9., - pi_p_min=2. * GeV, - pi_pt_min=250. * MeV, - adocachi2cut=10., - vchi2pdof_max=10., - pt_min=800. * MeV, - ), - F.FILTER(F.require_all(F.MASS < 1850. * MeV)), - name="rd_detached_rhos_tightermass_{hash}") - + pipi = make_rho0s_with_tighter_mass() photons = make_gamma_eeLL(pvs, max_pid_e_min=2) b = make_b2xgamma_excl( @@ -230,24 +213,7 @@ def bd_to_kpigamma_gammatoeeDD_line(name="Hlt2RD_BdToKpPimGamma_GammaToEEDD", prescale=1.): pvs = make_pvs() - kpi = ParticleFilter( - make_rd_detached_kstar0s( - name="rd_detached_kstar0s_{hash}", - am_max=2000. * MeV, - k_pid=(F.PID_K > 2.), - pi_pid=(F.PID_K < 2.), - k_ipchi2_min=9., - pi_ipchi2_min=9., - k_p_min=2. * GeV, - pi_p_min=2. * GeV, - k_pt_min=250. * MeV, - pi_pt_min=250. * MeV, - vchi2pdof_max=10., - adocachi2cut=10., - kstar0_pt_min=800. * MeV, - ), - F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), - name="rd_detached_kstar0s_tightermass_{hash}") + kpi = make_kstar0s_with_tighter_mass() photons = make_gamma_eeDD(pvs, max_pid_e_min=2) @@ -320,20 +286,7 @@ def bd_to_pipigamma_gammatoeeDD_line(name="Hlt2RD_BdToPipPimGamma_GammaToEEDD", prescale=1.): pvs = make_pvs() - pipi = ParticleFilter( - make_rd_detached_rho0( - name="rd_detached_rho0_{hash}", - am_max=2000. * MeV, - pi_pid=(F.PID_K < 2.), - pi_ipchi2_min=9., - pi_p_min=2. * GeV, - pi_pt_min=250. * MeV, - adocachi2cut=10., - vchi2pdof_max=10., - pt_min=800. * MeV, - ), - F.FILTER(F.require_all(F.MASS < 1850. * MeV)), - name="rd_detached_rhos_tightermass_{hash}") + pipi = make_rho0s_with_tighter_mass() photons = make_gamma_eeDD(pvs, max_pid_e_min=2) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_spruce.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_spruce.py index a898bed0a8395a60a5bf70d1f7c7df0d064537df..84af558b58a293b2d2438fe68c2d0a42b1310966 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_spruce.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_conv_exclusive_spruce.py @@ -43,22 +43,27 @@ from Hlt2Conf.lines.rd.builders.rad_incl_builder import (make_gamma_eeLL, sprucing_lines = {} +def make_kstar0s_with_tighter_mass(): + return ParticleFilter( + make_rd_detached_kstar0s(), + F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), + name="rd_detached_kstar0s_mass_btoxgamma_{hash}") + + +def make_rho0s_with_tighter_mass(): + return ParticleFilter( + make_rd_detached_rho0(), + F.FILTER(F.require_all(F.MASS > 500. * MeV, F.MASS < 1850 * MeV)), + name="rd_detached_rho0s_mass_btoxgamma_{hash}") + + @register_line_builder(sprucing_lines) def spruce_bd_to_kpigamma_gammatoeeLL_line( name="SpruceRD_BdToKpPimGamma_GammaToEELL", persistreco=False, prescale=1.): pvs = make_pvs() - kpi = ParticleFilter( - make_rd_detached_kstar0s( - name="rd_detached_kstar0s_{hash}", - am_max=2000. * MeV, - vchi2pdof_max=25., - k_pid=(F.PID_K > -10.), - pi_pid=(F.PID_K < 10.), - ), - F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), - name="rd_detached_kstar0s_tightermass_{hash}") + kpi = make_kstar0s_with_tighter_mass() photons = make_gamma_eeLL(pvs) @@ -125,15 +130,7 @@ def spruce_bd_to_pipigamma_gammatoeeLL_line( prescale=1.): pvs = make_pvs() - pipi = ParticleFilter( - make_rd_detached_rho0( - name="rd_detached_rho0_{hash}", - am_max=2000. * MeV, - vchi2pdof_max=25., - pi_pid=(F.PID_K < 10.), - ), - F.FILTER(F.require_all(F.MASS < 1850. * MeV)), - name="rd_detached_rhos_tightermass_{hash}") + pipi = make_rho0s_with_tighter_mass() photons = make_gamma_eeLL(pvs) @@ -200,16 +197,7 @@ def spruce_bd_to_kpigamma_gammatoeeDD_line( prescale=1.): pvs = make_pvs() - kpi = ParticleFilter( - make_rd_detached_kstar0s( - name="rd_detached_kstar0s_{hash}", - am_max=2000. * MeV, - vchi2pdof_max=25., - k_pid=(F.PID_K > -10.), - pi_pid=(F.PID_K < 10.), - ), - F.FILTER(F.require_all(F.MASS > 767. * MeV, F.MASS < 1825. * MeV)), - name="rd_detached_kstar0s_tightermass_{hash}") + kpi = make_kstar0s_with_tighter_mass() photons = make_gamma_eeDD(pvs) @@ -276,15 +264,7 @@ def spruce_bd_to_pipigamma_gammatoeeDD_line( prescale=1.): pvs = make_pvs() - pipi = ParticleFilter( - make_rd_detached_rho0( - name="rd_detached_rho0_{hash}", - am_max=2000. * MeV, - vchi2pdof_max=25., - pi_pid=(F.PID_K < 10.), - ), - F.FILTER(F.require_all(F.MASS < 1850. * MeV)), - name="rd_detached_rhos_tightermass_{hash}") + pipi = make_rho0s_with_tighter_mass() photons = make_gamma_eeDD(pvs) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_exclusive_hlt2.py index 7f69f1b79a1e6ce9253c6c4954b95effeb137cb3..8f91201acd60a5a65bb8024f5f86ef58d2e547f3 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xgamma_exclusive_hlt2.py @@ -16,23 +16,55 @@ Registration of exclusive radiative B -> X gamma Hlt2 lines: author: Izaac Sanderswood date: 25.05.22 + +Exclusive RAD lines: +- B_s0 -> phi(1020) gamma (broad KK mass) +- B0 -> K*(892)0 gamma (borad Kpi mass) +- B+ -> K_1(1270)+ gamma +- B+ -> K phi(1020) gamma +- B0 -> Ks pi pi gamma (LL) +- B0 -> Ks pi pi gamma (DD) +- B0 -> Ks K K gamma (LL) +- B0 -> Ks K K gamma (DD) +- B_s0 -> Ks K pi gamma (LL) +- B_s0 -> Ks K pi gamma (DD) +- Lambda_b0 -> Ks p pi gamma (LL) +- Lambda_b0 -> Ks p pi gamma (DD) +- Lambda_b0 -> p K gamma +- B0 -> pi pi gamma (broad pipi mass) +- B_c+ -> D*(2010)+ gamma +- B_c+ -> D*_s+ gamma + +authors: Debashis Sahoo, Biplab Dey +date: 15.05.2024 + """ from Moore.config import register_line_builder from Moore.lines import Hlt2Line from RecoConf.reconstruction_objects import make_pvs -from GaudiKernel.SystemOfUnits import GeV, MeV +from GaudiKernel.SystemOfUnits import GeV, MeV, ps import Functors as F from math import cos +from Hlt2Conf.algorithms_thor import ParticleFilter + from Hlt2Conf.lines.rd.builders.rdbuilder_thor import ( - make_rd_detached_kstar0s, make_rd_detached_phis, make_rd_photons) + make_rd_detached_kstar0s, make_rd_detached_phis, make_rd_photons, + make_rd_detached_rho0, make_rd_detached_k1, + make_rd_has_rich_detached_pions, make_rd_has_rich_detached_kaons, + make_rd_ks0_lls, make_rd_detached_pions, make_rd_ks0_dds, + make_rd_detached_down_pions) from Hlt2Conf.lines.rd.builders.b_to_xgamma_exclusive_builders import ( - make_b2xgamma_excl) + make_b2xgamma_excl, make_rd_detached_pK, make_PV, make_dzeros_for_rd_bc, + make_ds_for_rd_bc, make_dsst, make_b2xgamma_excl_bc) from Hlt2Conf.lines.rd.builders.rd_prefilters import rd_prefilter, _RD_MONITORING_VARIABLES +from Hlt2Conf.lines.rd.builders import rd_isolation +from Functors.math import in_range + all_lines = {} @@ -118,3 +150,1135 @@ def bd_to_kstgamma_line(name="Hlt2RD_BdToKstGamma", monitoring_variables=_RD_MONITORING_VARIABLES, tagging_particles=True, ) + + +@register_line_builder(all_lines) +def bs_to_kkgamma_line(name="Hlt2RD_BsToKKGamma", + persistreco=False, + prescale=1.): + + pvs = make_pvs() + # remember to also look at the definition of make_rd_detached_phis as only some cuts are changed here + phis = make_rd_detached_phis( + name="rd_BsToKKGamma_detached_phis", + k_p_min=2. * GeV, + k_pt_min=500. * MeV, + k_ipchi2_min=11., + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 0)), + phi_pt_min=1500. * MeV, + vchi2pdof_max=15., + am_min=950. * MeV, + am_max=2450. * MeV) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b_s0 = make_b2xgamma_excl( + intermediate=phis, + photons=photons, + pvs=pvs, + descriptor="B_s0 -> phi(1020) gamma", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BsToKKGamma_Combiner") + + gamma_child = rd_isolation.find_in_decay(input=b_s0, id="gamma") + + #Make cone isolation for parent and direct products + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B_s0"], + candidates=[b_s0], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["gamma"], + candidates=[gamma_child], + cut=F.require_all( + in_range(0., F.DR2, 0.16), + ~F.REQUIRE_CLOSE(F.PT() @ F.FORWARDARG0(), + F.PT() @ F.FORWARDARG1()), + F.IS_NOT_H() @ F.FORWARDARG1() > 0.3), + LongTrackIso=False, + TTrackIso=False, + DownstreamTrackIso=False, + UpstreamTrackIso=False, + NeutralIso=True, + PiZerosIso=True, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [phis, b_s0], + extra_outputs=iso_parts, + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bd_to_kpigamma_line(name="Hlt2RD_BdToKpiGamma", + persistreco=False, + prescale=1.): + + pvs = make_pvs() + + # remember to also look at the definition of make_rd_detached_kstar0s as only some cuts are changed here + kst = make_rd_detached_kstar0s( + name="rd_BdToKpiGamma_detached_kstar0s", + pi_p_min=2. * GeV, + pi_pt_min=500. * MeV, + k_p_min=3. * GeV, + pi_pid=(F.PID_K < -3.), + k_pt_min=500. * MeV, + k_ipchi2_min=11., + pi_ipchi2_min=11., + k_pid=((F.PID_K > 3.) & ((F.PID_K - F.PID_P) > 2)), + kstar0_pt_min=1500. * MeV, + vchi2pdof_max=15., + am_min=650. * MeV, + am_max=2350. * MeV, + ) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b0 = make_b2xgamma_excl( + intermediate=kst, + photons=photons, + pvs=pvs, + descriptor="[B0 -> K*(892)0 gamma]cc", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BdToKpiGamma_Combiner") + + gamma_child = rd_isolation.find_in_decay(input=b0, id="gamma") + + #Make cone isolation for parent and direct products + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B"], + candidates=[b0], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["gamma"], + candidates=[gamma_child], + cut=F.require_all( + in_range(0., F.DR2, 0.16), + ~F.REQUIRE_CLOSE(F.PT() @ F.FORWARDARG0(), + F.PT() @ F.FORWARDARG1()), + F.IS_NOT_H() @ F.FORWARDARG1() > 0.3), + LongTrackIso=False, + TTrackIso=False, + DownstreamTrackIso=False, + UpstreamTrackIso=False, + NeutralIso=True, + PiZerosIso=True, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kst, b0], + extra_outputs=iso_parts, + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bu_to_kpipigamma_line(name="Hlt2RD_BuToKpipiGamma", + persistreco=False, + prescale=1.): + + pvs = make_pvs() + + # remember to also look at the definition of make_rd_detached_k1 as only some cuts are changed here + k1 = make_rd_detached_k1( + name='rd_detached_k1_{hash}', + make_rd_detached_pions=make_rd_has_rich_detached_pions, + make_rd_detached_kaons=make_rd_has_rich_detached_kaons, + pi_p_min=1. * GeV, + pi_pt_min=300. * MeV, + pi_ipchi2_min=7.0, + pi_pid=(F.PID_K < -2), + k_p_min=1. * GeV, + k_pt_min=300. * MeV, + k_ipchi2_min=7.0, + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 2)), + pt_min=1500. * MeV, + am_2pi_max=1500 * MeV, + am_kpi_max=1430 * MeV, + am_min=1100. * MeV, + am_max=1850. * MeV, + adocachi2_cut=10., + vchi2pdof_max=9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + bu = make_b2xgamma_excl( + intermediate=k1, + photons=photons, + pvs=pvs, + descriptor="[B+ -> K_1(1270)+ gamma]cc", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=20., + name="rd_BuToKpipiGamma_Combiner") + + gamma_child = rd_isolation.find_in_decay(input=bu, id="gamma") + + #Make cone isolation for parent and direct products + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B"], + candidates=[bu], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["gamma"], + candidates=[gamma_child], + cut=F.require_all( + in_range(0., F.DR2, 0.16), + ~F.REQUIRE_CLOSE(F.PT() @ F.FORWARDARG0(), + F.PT() @ F.FORWARDARG1()), + F.IS_NOT_H() @ F.FORWARDARG1() > 0.3), + LongTrackIso=False, + TTrackIso=False, + DownstreamTrackIso=False, + UpstreamTrackIso=False, + NeutralIso=True, + PiZerosIso=True, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [k1, bu], + extra_outputs=iso_parts, + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def bu_to_kphigamma_line(name="Hlt2RD_BuToKPhiGamma", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + phi = make_rd_detached_phis( + name="rd_BuToKPhiGamma_detached_phis_{hash}", + make_rd_detached_kaons=make_rd_has_rich_detached_kaons, + make_pvs=make_pvs, + am_min=990. * MeV, + am_max=1070. * MeV, + k_p_min=2. * GeV, + k_pt_min=250. * MeV, + k_ipchi2_min=7., + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 2)), + phi_pt_min=500. * MeV, + adocachi2cut=30., + vchi2pdof_max=25.) + + k1680 = make_PV( + hadrons=phi, + kshort=make_rd_has_rich_detached_kaons(), + decay_descriptor="[K*(1680)+ -> phi(1020) K+]cc", + name="rd_radexcl_KPhi_{hash}", + vtxchi2dof_max=16.0, + m_min=1500 * MeV, + m_max=2800 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + bu = make_b2xgamma_excl( + intermediate=k1680, + photons=photons, + pvs=pvs, + descriptor="[B+ -> K*(1680)+ gamma]cc", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BuToKPhiGamma_Combiner") + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [phi, k1680, bu], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def bd_to_kspipigamma_LL_line(name="Hlt2RD_BdToKspipiGamma_LL", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + ks = ParticleFilter( + make_rd_ks0_lls( + name="rd_ks0_lls_{hash}", + make_pions=make_rd_detached_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200 * MeV, + pi_ipchi2_min=9., + pt_min=400 * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.), + F.FILTER( + F.require_all(F.CHILD(1, F.PID_K) < 0, + F.CHILD(2, F.PID_K) < 0)), + ) + + rho0 = make_rd_detached_rho0( + name="rd_detached_rho0_{hash}", + make_rd_detached_pions=make_rd_has_rich_detached_pions, + pi_pt_min=200. * MeV, + pi_p_min=2. * GeV, + pi_ipchi2_min=4.0, + pi_pid=(F.PID_K < -3.), + pt_min=600. * MeV, + am_min=400. * MeV, + am_max=1500. * MeV, + adocachi2cut=10., + vchi2pdof_max=9.) + + k1 = make_PV( + hadrons=rho0, + kshort=ks, + decay_descriptor="K_1(1270)0 -> rho(770)0 KS0", + name="rd_radexcl_Kspipi_{hash}", + vtxchi2dof_max=16.0, + m_min=1050 * MeV, + m_max=1900 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b0 = make_b2xgamma_excl( + intermediate=k1, + photons=photons, + pvs=pvs, + descriptor="B0 -> K_1(1270)0 gamma", + dira_min=0.999, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BdToKspipiGamma_LL_Combiner") + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, rho0, k1, b0], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bd_to_kspipigamma_DD_line(name="Hlt2RD_BdToKspipiGamma_DD", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + ks = make_rd_ks0_dds( + name="rd_ks0_dds_{hash}", + make_pions=make_rd_detached_down_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200 * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + rho0 = make_rd_detached_rho0( + name="rd_detached_rho0_{hash}", + make_rd_detached_pions=make_rd_has_rich_detached_pions, + pi_pt_min=200. * MeV, + pi_p_min=2. * GeV, + pi_ipchi2_min=4.0, + pi_pid=(F.PID_K < -3.), + pt_min=600. * MeV, + am_min=400. * MeV, + am_max=1500. * MeV, + adocachi2cut=10., + vchi2pdof_max=9.) + + k1 = make_PV( + hadrons=rho0, + kshort=ks, + decay_descriptor="K_1(1270)0 -> rho(770)0 KS0", + name="rd_radexcl_Kspipi_{hash}", + vtxchi2dof_max=16.0, + m_min=1050 * MeV, + m_max=1900 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b0 = make_b2xgamma_excl( + intermediate=k1, + photons=photons, + pvs=pvs, + descriptor="B0 -> K_1(1270)0 gamma", + dira_min=0.999, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BdToKspipiGamma_DD_Combiner") + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, rho0, k1, b0], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bd_to_kskkgamma_LL_line(name="Hlt2RD_BdToKsKKGamma_LL", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + ks = make_rd_ks0_lls( + name="rd_ks0_lls_{hash}", + make_pions=make_rd_detached_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200. * MeV, + pi_ipchi2_min=9., + pt_min=400 * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + phi = make_rd_detached_phis( + name="rd_BdToKsKKGamma_detached_phis_{hash}", + make_rd_detached_kaons=make_rd_has_rich_detached_kaons, + make_pvs=make_pvs, + am_min=990. * MeV, + am_max=1070. * MeV, + k_p_min=2. * GeV, + k_pt_min=250. * MeV, + k_ipchi2_min=4., + k_pid=((F.PID_K > 0.) & ((F.PID_K - F.PID_P) > 0)), + phi_pt_min=500. * MeV, + adocachi2cut=30., + vchi2pdof_max=25.) + + k2 = make_PV( + hadrons=phi, + kshort=ks, + decay_descriptor="K*_2(1980)0 -> phi(1020) KS0", + name="rd_radexcl_KsKK_{hash}", + vtxchi2dof_max=16.0, + m_min=1500 * MeV, + m_max=2800 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b0 = make_b2xgamma_excl( + intermediate=k2, + photons=photons, + pvs=pvs, + descriptor="B0 -> K*_2(1980)0 gamma", + name="rd_BdToKsKKGamma_LL_Combiner", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, phi, k2, b0], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +def bd_to_kskkgamma_DD_line(name="Hlt2RD_BdToKsKKGamma_DD", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + ks = make_rd_ks0_dds( + name="rd_ks0_dds_{hash}", + make_pions=make_rd_detached_down_pions, + make_pvs=make_pvs, + mass_window_comb=80. * MeV, + mass_window=64. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200. * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + phi = make_rd_detached_phis( + name="rd_BdToKsKKGamma_detached_phis_{hash}", + make_rd_detached_kaons=make_rd_has_rich_detached_kaons, + make_pvs=make_pvs, + am_min=990. * MeV, + am_max=1070. * MeV, + k_p_min=2. * GeV, + k_pt_min=250. * MeV, + k_ipchi2_min=4., + k_pid=((F.PID_K > 0.) & ((F.PID_K - F.PID_P) > 0)), + phi_pt_min=500. * MeV, + adocachi2cut=30., + vchi2pdof_max=25.) + + k2 = make_PV( + hadrons=phi, + kshort=ks, + decay_descriptor="K*_2(1980)0 -> phi(1020) KS0", + name="rd_radexcl_KsKK_{hash}", + vtxchi2dof_max=16.0, + m_min=1500 * MeV, + m_max=2800 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + b0 = make_b2xgamma_excl( + intermediate=k2, + photons=photons, + pvs=pvs, + descriptor="B0 -> K*_2(1980)0 gamma", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + name="rd_BdToKsKKGamma_DD_Combiner") + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, phi, k2, b0], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bs_to_kskpigamma_LL_line(name="Hlt2RD_BsToKsKpiGamma_LL", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + ks = make_rd_ks0_lls( + name="rd_ks0_lls_{hash}", + make_pions=make_rd_detached_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=1. * GeV, + pi_pt_min=200. * MeV, + pi_ipchi2_min=9., + pt_min=400 * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + kst = make_rd_detached_kstar0s( + name="rd_BsToKsKpiGamma_detached_kstar0s", + pi_p_min=1. * GeV, + pi_pt_min=200. * MeV, + pi_pid=(F.PID_K < -3.), + k_p_min=1. * GeV, + k_pt_min=250. * MeV, + k_ipchi2_min=4., + pi_ipchi2_min=4., + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 2)), + kstar0_pt_min=500. * MeV, + vchi2pdof_max=15., + am_min=650. * MeV, + am_max=2500. * MeV, + ) + + k1 = make_PV( + hadrons=kst, + kshort=ks, + decay_descriptor="[phi(1680) -> K*(892)0 KS0]cc", + name="rd_radexcl_KsKpi_{hash}", + vtxchi2dof_max=16.0, + m_min=1000 * MeV, + m_max=3000 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + bs = make_b2xgamma_excl( + intermediate=k1, + photons=photons, + pvs=pvs, + descriptor="[B_s0 -> phi(1680) gamma]cc", + dira_min=0.9995, + name="rd_BsToKsKpiGamma_LL_Combiner", + bpv_ipchi2_max=12, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, kst, k1, bs], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +def bs_to_kskpigamma_DD_line(name="Hlt2RD_BsToKsKpiGamma_DD", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + ks = make_rd_ks0_dds( + name="rd_ks0_dds_{hash}", + make_pions=make_rd_detached_down_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=1. * GeV, + pi_pt_min=200. * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + kst = make_rd_detached_kstar0s( + name="rd_BsToKsKpiGamma_detached_kstar0s", + pi_p_min=1. * GeV, + pi_pt_min=200. * MeV, + pi_pid=(F.PID_K < -3.), + k_p_min=1. * GeV, + k_pt_min=250. * MeV, + k_ipchi2_min=4., + pi_ipchi2_min=4., + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 2)), + kstar0_pt_min=1000. * MeV, + vchi2pdof_max=15., + am_min=650. * MeV, + am_max=2500. * MeV, + ) + + k1 = make_PV( + hadrons=kst, + kshort=ks, + decay_descriptor="[phi(1680) -> K*(892)0 KS0]cc", + name="rd_radexcl_KsKpi_{hash}", + vtxchi2dof_max=16.0, + m_min=1000 * MeV, + m_max=3000 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + bs = make_b2xgamma_excl( + intermediate=k1, + photons=photons, + pvs=pvs, + descriptor="[B_s0 -> phi(1680) gamma]cc", + dira_min=0.9995, + name="rd_BsToKsKpiGamma_DD_Combiner", + pt_min=2000 * MeV, + bpv_ipchi2_max=12, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, kst, k1, bs], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def lb_to_ksppigamma_LL_line(name="Hlt2RD_LbToKsppiGamma_LL", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + ks = make_rd_ks0_lls( + name="rd_ks0_lls_{hash}", + make_pions=make_rd_detached_pions, + make_pvs=make_pvs, + mass_window_comb=50. * MeV, + mass_window=35. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200. * MeV, + pi_ipchi2_min=9., + pt_min=400 * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + lst = ParticleFilter( + make_rd_detached_pK( + am_min=1300. * MeV, + am_max=2800. * MeV, + p_pid=F.require_all(F.PID_P > 2, (F.PID_P - F.PID_K > 2.)), + k_pid=(F.PID_K < -1.), #pion + p_ipchi2_min=9., + k_ipchi2_min=9., + k_p_min=2. * GeV, + p_p_min=2. * GeV, + k_pt_min=250. * MeV, + p_pt_min=400. * MeV, + adocachi2cut=10., + vchi2pdof_max=10., + pK_pt_min=800. * MeV, + ), + F.FILTER(F.require_all(F.MASS > 1375. * MeV, F.MASS < 2625. * MeV)), + name="rd_dt_pk_{hash}") + + l1800 = make_PV( + hadrons=lst, + kshort=ks, + decay_descriptor="[Lambda(1800)0 -> Lambda(1520)0 KS0]cc", + name="rd_radexcl_Ksppi_{hash}", + vtxchi2dof_max=16.0, + m_min=1700 * MeV, + m_max=3200 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + lb = make_b2xgamma_excl( + intermediate=l1800, + photons=photons, + pvs=pvs, + descriptor="[Lambda_b0 -> Lambda(1800)0 gamma]cc", + name="rd_LbToKsppiGamma_LL_Combiner", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, lst, l1800, lb], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def lb_to_ksppigamma_DD_line(name="Hlt2RD_LbToKsppiGamma_DD", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + ks = make_rd_ks0_dds( + name="rd_ks0_dds_{hash}", + make_pions=make_rd_detached_down_pions, + make_pvs=make_pvs, + mass_window_comb=80. * MeV, + mass_window=64. * MeV, + pi_p_min=2. * GeV, + pi_pt_min=200. * MeV, + adocachi2cut=30., + bpvvdchi2_min=50., + bpvltime_min=1. * ps, + vchi2pdof_max=15.) + + lst = ParticleFilter( + make_rd_detached_pK( + am_min=1300. * MeV, + am_max=2800. * MeV, + p_pid=F.require_all(F.PID_P > 2, (F.PID_P - F.PID_K > 2.)), + k_pid=(F.PID_K < 0.), #pion + p_ipchi2_min=9., + k_ipchi2_min=9., + k_p_min=2. * GeV, + p_p_min=2. * GeV, + k_pt_min=250. * MeV, + p_pt_min=400. * MeV, + adocachi2cut=10., + vchi2pdof_max=10., + pK_pt_min=800. * MeV, + ), + F.FILTER(F.require_all(F.MASS > 1375. * MeV, F.MASS < 2625. * MeV)), + name="rd_dt_pk_{hash}") + + l1800 = make_PV( + hadrons=lst, + kshort=ks, + decay_descriptor="[Lambda(1800)0 -> Lambda(1520)0 KS0]cc", + name="rd_radexcl_Ksppi_{hash}", + vtxchi2dof_max=16.0, + m_min=1700 * MeV, + m_max=3200 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + lb = make_b2xgamma_excl( + intermediate=l1800, + photons=photons, + pvs=pvs, + descriptor="[Lambda_b0 -> Lambda(1800)0 gamma]cc", + name="rd_LbToKsppiGamma_DD_Combiner", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ks, lst, l1800, lb], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def lb_to_pkgamma_line(name="Hlt2RD_LbTopKGamma", + persistreco=False, + prescale=1.): + + pvs = make_pvs() + + lst = ParticleFilter( + make_rd_detached_pK( + am_min=1350. * MeV, + am_max=2800. * MeV, + p_pid=F.require_all(F.PID_P > 2, (F.PID_P - F.PID_K > 2.)), + k_pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 0.)), + p_ipchi2_min=9., + k_ipchi2_min=9., + k_p_min=2. * GeV, + p_p_min=2. * GeV, + k_pt_min=400. * MeV, + p_pt_min=500. * MeV, + adocachi2cut=10., + vchi2pdof_max=10., + pK_pt_min=1300. * MeV, + ), + F.FILTER(F.require_all(F.MASS > 1375. * MeV, F.MASS < 2625. * MeV)), + name="rd_dt_pk_{hash}") + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + lb = make_b2xgamma_excl( + intermediate=lst, + photons=photons, + pvs=pvs, + descriptor="[Lambda_b0 -> Lambda(1520)0 gamma]cc", + name="rd_LbTopKGamma_Combiner", + dira_min=0.9995, + sum_pt_min=4. * GeV, + bpv_fdchi2_min=25., + comb_m_min=4500 * MeV, + comb_m_max=6500 * MeV, + ) + + gamma_child = rd_isolation.find_in_decay(input=lb, id="gamma") + + #Make cone isolation for parent and direct products + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb"], + candidates=[lb], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["gamma"], + candidates=[gamma_child], + cut=F.require_all( + in_range(0., F.DR2, 0.16), + ~F.REQUIRE_CLOSE(F.PT() @ F.FORWARDARG0(), + F.PT() @ F.FORWARDARG1()), + F.IS_NOT_H() @ F.FORWARDARG1() > 0.3), + LongTrackIso=False, + TTrackIso=False, + DownstreamTrackIso=False, + UpstreamTrackIso=False, + NeutralIso=True, + PiZerosIso=True, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [lst, lb], + extra_outputs=iso_parts, + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def b0_to_pipigamma_line(name="Hlt2RD_BdTopipiGamma", + persistreco=False, + prescale=1.): + + pvs = make_pvs() + rho0 = make_rd_detached_rho0( + name="rd_detached_rho0_{hash}", + make_rd_detached_pions=make_rd_has_rich_detached_pions, + pi_pt_min=500. * MeV, + pi_p_min=2. * GeV, + pi_ipchi2_min=16., + pi_pid=(F.PID_K < -5.) & (F.PID_P < 0), + pt_min=1200. * MeV, + am_min=500. * MeV, + am_max=4000. * MeV, + adocachi2cut=10., + vchi2pdof_max=9.) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.6, IsNotH_min=0.4, E19_min=0.2) + + bd = make_b2xgamma_excl( + intermediate=rho0, + photons=photons, + pvs=pvs, + descriptor="B0 -> rho(770)0 gamma", + dira_min=0.9999, + sum_pt_min=5. * GeV, + bpv_fdchi2_min=25., + name="rd_BtopipiGamma_Combiner") + + gamma_child = rd_isolation.find_in_decay(input=bd, id="gamma") + + #Make cone isolation for parent and direct products + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B"], + candidates=[bd], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["gamma"], + candidates=[gamma_child], + cut=F.require_all( + in_range(0., F.DR2, 0.16), + ~F.REQUIRE_CLOSE(F.PT() @ F.FORWARDARG0(), + F.PT() @ F.FORWARDARG1()), + F.IS_NOT_H() @ F.FORWARDARG1() > 0.3), + LongTrackIso=False, + TTrackIso=False, + DownstreamTrackIso=False, + UpstreamTrackIso=False, + NeutralIso=True, + PiZerosIso=True, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [rho0, bd], + extra_outputs=iso_parts, + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + tagging_particles=True, + pv_tracks=True, + ) + + +@register_line_builder(all_lines) +def bc_to_dstgamma_line(name="Hlt2RD_BcToDstGamma", + persistreco=True, + prescale=1.): + + pvs = make_pvs() + + pions = make_rd_has_rich_detached_pions() + kaons = make_rd_has_rich_detached_kaons() + dzeros = make_dzeros_for_rd_bc(kaons, pions) + + deltaM_min = 135.421 * MeV + deltaM_max = 160.421 * MeV + + dst = ParticleFilter( + make_PV( + hadrons=dzeros, + kshort=make_rd_detached_pions(p_min=1.5 * GeV, pt_min=150. * MeV), + decay_descriptor="[D*(2010)+ -> D0 pi+]cc", + name="rd_radexcl_d0pi_{hash}", + vtxchi2dof_max=10., + m_min=1920. * MeV, + m_max=2100. * MeV, + min_pt=1000. * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9), + F.FILTER( + F.require_all( + in_range(deltaM_min, F.MASS - F.CHILD(1, F.MASS), + deltaM_max)), )) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + bc = make_b2xgamma_excl( + intermediate=dst, + photons=photons, + pvs=pvs, + descriptor="[B_c+ -> D*(2010)+ gamma]cc", + name="rd_BcToDstGamma_Combiner", + comb_m_min=5200. * MeV, + comb_m_max=7200. * MeV, + dira_min=0.9995, + sum_pt_min=4. * GeV, + ) + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [dzeros, dst, bc], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) + + +@register_line_builder(all_lines) +def bc_to_dsstgamma_line(name="Hlt2RD_BcToDsstGamma", + persistreco=True, + prescale=1.): + + pions = make_rd_has_rich_detached_pions(pid=(F.PID_K < 0.)) + kaons = make_rd_has_rich_detached_kaons( + pid=((F.PID_K > 2.) & ((F.PID_K - F.PID_P) > 2))) + ds = make_ds_for_rd_bc(kaons, kaons, pions) + + photons = make_rd_photons( + et_min=2.5 * GeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + soft_photons = make_rd_photons( + et_min=500. * MeV, IsPhoton_min=0.4, IsNotH_min=0.3, E19_min=0.2) + + dsst = make_dsst( + hadrons=ds, + kshort=soft_photons, + decay_descriptor="[D*_s+ -> D_s+ gamma]cc", + name="rd_radexcl_dsgamma_{hash}", + m_min=2010. * MeV, + m_max=2210. * MeV, + min_pt=1000. * MeV, + ) + + bc = make_b2xgamma_excl_bc( + intermediate=dsst, + photons=photons, + descriptor="[B_c+ -> D*_s+ gamma]cc", + sum_pt_min=4. * GeV, + name="rd_BcToDsstGamma_Combiner") + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [ds, dsst, bc], + prescale=prescale, + persistreco=persistreco, + calo_clusters=True, + calo_digits=True, + monitoring_variables=_RD_MONITORING_VARIABLES, + ) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2.py index ee91dfb45301c56c34fe9b26548d36c5ea227638..0a779ae5e2d4193af3d6c17ec9a3a0eb695bacf2 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2.py @@ -603,16 +603,6 @@ Btopipiee = { "am_min": 0. * MeV, "am_max": 5_500. * MeV, "bpvvdchi2_min": 36., - }, - "rhos": { - "pi_pid": (F.PID_K <= 4.), - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pt_min": 350. * MeV, - "pt_min": 250. * MeV, - "pi_ipchi2_min": 9., - "adocachi2cut": 36., - "vchi2pdof_max": 25., } } @@ -637,16 +627,6 @@ Btopipimumu = { "bpvvdchi2_min": 16., "am_min": 0. * MeV, "am_max": 5_500. * MeV, - }, - "rhos": { - "pi_pid": (F.PID_K <= 4.), - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pt_min": 350. * MeV, - "pt_min": 250. * MeV, - "pi_ipchi2_min": 4., - "adocachi2cut": 36., - "vchi2pdof_max": 25., } } @@ -657,7 +637,7 @@ def B0ToPipPimEE_line(name="Hlt2RD_B0ToPipPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Btopipiee["dielectrons"], pid_e_min=0.0, opposite_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipiee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -690,7 +670,7 @@ def B0ToPipPimEE_SameSign_line(name="Hlt2RD_B0ToPipPimEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Btopipiee["dielectrons"], pid_e_min=0.0, opposite_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipiee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -722,7 +702,7 @@ def B0ToPipPimMuMu_line(name="Hlt2RD_B0ToPipPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Btopipimumu["dimuons"], same_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipimumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -755,7 +735,7 @@ def B0ToPipPimMuMu_SameSign_line(name="Hlt2RD_B0ToPipPimMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Btopipimumu["dimuons"], same_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipimumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1012,22 +992,6 @@ BtoKPiee = { "am_min": 0. * MeV, "am_max": 5_500. * MeV, "bpvvdchi2_min": 36., - }, - "Kst0s": { - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pid": (F.PID_K < 4.), - "k_pid": (F.PID_K > -4.), - "pi_p_min": 2_000. * MeV, - "pi_pt_min": 250. * MeV, - "pi_ipchi2_min": 9., - "k_p_min": 1_000. * MeV, - "k_pt_min": 250. * MeV, - "k_ipchi2_min": 9., - "kstar0_pt_min": 400. * MeV, - "adocachi2cut": 36., - "vchi2pdof_max": 25., - "bpvipchi2_min": 16., } } @@ -1052,22 +1016,6 @@ BtoKPimumu = { "bpvvdchi2_min": 16., "am_min": 0. * MeV, "am_max": 5_500. * MeV, - }, - "Kst0s": { - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pid": (F.PID_K < 4.), - "k_pid": (F.PID_K > -4.), - "pi_p_min": 2_000. * MeV, - "pi_pt_min": 250. * MeV, - "pi_ipchi2_min": 4., - "k_p_min": 1_000. * MeV, - "k_pt_min": 250. * MeV, - "k_ipchi2_min": 4., - "kstar0_pt_min": 400. * MeV, - "adocachi2cut": 36., - "vchi2pdof_max": 25., - "bpvipchi2_min": 4., } } @@ -1078,7 +1026,7 @@ def B0ToKpPimEE_line(name="Hlt2RD_B0ToKpPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiee["dielectrons"], pid_e_min=0.0, opposite_sign=True) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPiee["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1108,7 +1056,7 @@ def B0ToKpPimEE_SameSign_line(name="Hlt2RD_B0ToKpPimEE_SameSign", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiee["dielectrons"], pid_e_min=0.0, opposite_sign=False) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPiee["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1138,7 +1086,7 @@ def B0ToKpPimMuMu_line(name="Hlt2RD_B0ToKpPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPimumu["dimuons"], same_sign=False) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPimumu["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1169,7 +1117,7 @@ def B0ToKpPimMuMu_SameSign_line(name="Hlt2RD_B0ToKpPimMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPimumu["dimuons"], same_sign=True) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPimumu["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1218,25 +1166,7 @@ BtoKPiPiee = { "am_min": 0. * MeV, "am_max": 5_500. * MeV, "bpvvdchi2_min": 36., - }, - "K1s": { - "pi_PIDK_max": 4., - "K_PIDK_min": -4., - "K_1_pt_min": 0. * MeV, - "pi_p_min": 1_000. * MeV, - "pi_pt_min": 0. * MeV, - "pi_ipchi2_min": 9., - "K_p_min": 1_000. * MeV, - "K_pt_min": 0. * MeV, - "K_ipchi2_min": 9., - "vchi2pdof_max": 9., - "adocachi2_max": 36., - "am_min": 0. * MeV, - "am_max": 4200. * MeV, - "K_1_min_DIRA": None, - "K_1_min_bpvfdchi2": 81., - "bpvipchi2_min": 16., - }, + } } BtoKPiPimumu = { @@ -1260,25 +1190,7 @@ BtoKPiPimumu = { "bpvvdchi2_min": 16., "am_min": 0. * MeV, "am_max": 5_500. * MeV, - }, - "K1s": { - "pi_PIDK_max": 4., - "K_PIDK_min": -4., - "K_1_pt_min": 0. * MeV, - "pi_p_min": 1_000. * MeV, - "pi_pt_min": 0. * MeV, - "pi_ipchi2_min": 9., - "K_p_min": 1_000. * MeV, - "K_pt_min": 0. * MeV, - "K_ipchi2_min": 9., - "vchi2pdof_max": 9., - "adocachi2_max": 36., - "am_min": 0. * MeV, - "am_max": 4200. * MeV, - "K_1_min_DIRA": None, - "K_1_min_bpvfdchi2": 36., - "bpvipchi2_min": 9., - }, + } } @@ -1288,7 +1200,7 @@ def BuToKpPipPimEE_line(name="Hlt2RD_BuToKpPipPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiPiee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPiee["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1320,7 +1232,7 @@ def BuToKpPipPimEE_SameSign_line(name="Hlt2RD_BuToKpPipPimEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiPiee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPiee["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1351,7 +1263,7 @@ def BuToKpPipPimMuMu_line(name="Hlt2RD_BuToKpPipPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPiPimumu["dimuons"], same_sign=False) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPimumu["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1383,7 +1295,7 @@ def BuToKpPipPimMuMu_SameSign_line(name="Hlt2RD_BuToKpPipPimMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPiPimumu["dimuons"], same_sign=True) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPimumu["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1433,20 +1345,7 @@ Bto3Kee = { "am_min": 0. * MeV, "am_max": 5_500. * MeV, "bpvvdchi2_min": 36., - }, - "K2s": { - "adocachi2_max": 36., - "am_min": 0. * MeV, - "am_max": 4_200. * MeV, - "K_PIDK": (F.PID_K > -2.), - "K_p_min": 0. * MeV, - "K_pt_min": 0. * MeV, - "K_ipchi2_min": 9., - "K_2_pt_min": 0. * MeV, - "vchi2pdof_max": 12., - "K_2_min_bpvfdchi2": 81., - "bpvipchi2_min": 16., - }, + } } Bto3Kmumu = { @@ -1470,20 +1369,7 @@ Bto3Kmumu = { "bpvvdchi2_min": 16., "am_min": 0. * MeV, "am_max": 5_500. * MeV, - }, - "K2s": { - "adocachi2_max": 36., - "am_min": 0. * MeV, - "am_max": 4_200. * MeV, - "K_PIDK": (F.PID_K > -2.), - "K_p_min": 0. * MeV, - "K_pt_min": 0. * MeV, - "K_ipchi2_min": 9., - "K_2_pt_min": 0. * MeV, - "vchi2pdof_max": 12., - "K_2_min_bpvfdchi2": 0., - "bpvipchi2_min": 9., - }, + } } @@ -1493,7 +1379,7 @@ def BuToKpKpKmEE_line(name="Hlt2RD_BuToKpKpKmEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Bto3Kee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kee["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1524,7 +1410,7 @@ def BuToKpKpKmEE_SameSign_line(name="Hlt2RD_BuToKpKpKmEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Bto3Kee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kee["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1554,7 +1440,7 @@ def BuToKpKpKmMuMu_line(name="Hlt2RD_BuToKpKpKmMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3Kmumu["dimuons"], same_sign=False) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kmumu["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1585,7 +1471,7 @@ def BuToKpKpKmMuMu_SameSign_line(name="Hlt2RD_BuToKpKpKmMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3Kmumu["dimuons"], same_sign=True) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kmumu["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1635,30 +1521,22 @@ Bto3hmumu = { "bpvvdchi2_min": 16., "am_min": 0. * MeV, "am_max": 7_100. * MeV, - }, - "K2s": { - "adocachi2_max": 16., - "am_min": 0. * MeV, - "am_max": 7_100. * MeV, - "K_PIDK": None, - "K_p_min": 0. * MeV, - "K_pt_min": 250. * MeV, - "K_ipchi2_min": 9., - "K_2_pt_min": 0. * MeV, - "vchi2pdof_max": 9., - "K_2_min_bpvfdchi2": 0., - "bpvipchi2_min": 4., - }, + } } +def make_rd_detached_K2_for_Bc(): + return rdbuilder_thor.make_rd_detached_K2( + name="make_rd_K_2_for_Bc_{hash}", am_max=7100 * MeV) + + @register_line_builder(all_lines) def BcToHpHpHmMuMu_line(name="Hlt2RD_BcToHpHpHmMuMu_Inclusive", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3hmumu["dimuons"], same_sign=False) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3hmumu["K2s"]) + K2s = make_rd_detached_K2_for_Bc() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1689,7 +1567,7 @@ def BcToHpHpHmMuMu_SameSign_line( pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3hmumu["dimuons"], same_sign=True) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3hmumu["K2s"]) + K2s = make_rd_detached_K2_for_Bc() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -2135,21 +2013,7 @@ def B0ToKstJpsiMuMu_looseB0forK1_line( am_max=4430. * MeV, ) - hadron = rdbuilder_thor.make_rd_detached_kstar0s( - am_min=800. * MeV, - am_max=1000. * MeV, - pi_p_min=2000. * MeV, - pi_pt_min=100. * MeV, - pi_ipchi2_min=10, - pi_pid=(F.PID_K < 0), - k_p_min=2000. * MeV, - k_pt_min=250. * MeV, - k_ipchi2_min=10., - k_pid=(F.PID_K > 0), - kstar0_pt_min=500. * MeV, - adocachi2cut=9., - vchi2pdof_max=9., - ) + hadron = rdbuilder_thor.make_rd_detached_kstar0s() B0 = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -2202,21 +2066,7 @@ def B0ToKstJpsiMuMu_looseB0forK1_SameSign_line( same_sign=True, ) - hadron = rdbuilder_thor.make_rd_detached_kstar0s( - am_min=800. * MeV, - am_max=1000. * MeV, - pi_p_min=2000. * MeV, - pi_pt_min=100. * MeV, - pi_ipchi2_min=10, - pi_pid=(F.PID_K < 0), - k_p_min=2000. * MeV, - k_pt_min=250. * MeV, - k_ipchi2_min=10., - k_pid=(F.PID_K > 0), - kstar0_pt_min=500. * MeV, - adocachi2cut=9., - vchi2pdof_max=9., - ) + hadron = rdbuilder_thor.make_rd_detached_kstar0s() B0 = b_to_xll_builders.make_rd_BToXll( dimuons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2_mva.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2_mva.py index 76cb893b43b221a5c414fe9489edf7868ea11d76..dac79b7ad73e3aee573a0b63f853c7d6453e2f20 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2_mva.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_hlt2_mva.py @@ -142,13 +142,13 @@ class llx_mva_options: d_opt['am_min'] = 592. * MeV d_opt['am_max'] = 1192. * MeV d_opt['pi_p_min'] = 2. * GeV - d_opt['pi_pt_min'] = 100. * MeV + d_opt['pi_pt_min'] = 250. * MeV d_opt['pi_ipchi2_min'] = 4. - d_opt['pi_pid'] = (F.PID_K < 8.) + d_opt['pi_pid'] = (F.PID_K < 1e-5) d_opt['k_p_min'] = 2. * GeV - d_opt['k_pt_min'] = 100. * MeV + d_opt['k_pt_min'] = 250. * MeV d_opt['k_ipchi2_min'] = 4. - d_opt['k_pid'] = (F.PID_K > -2.) + d_opt['k_pid'] = (F.PID_K > 0.) d_opt['kstar0_pt_min'] = 0. * MeV d_opt['adocachi2cut'] = 30. d_opt['vchi2pdof_max'] = 16. diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce.py index 4dd409efda31e9b34d97a0b441db85b308427b26..18cc6941b42ec28b454822e75e3b278bc4c0db2a 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce.py @@ -610,7 +610,7 @@ def Spruce_B0ToPipPimEE_line(name="SpruceRD_B0ToPipPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Btopipiee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipiee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -650,7 +650,7 @@ def Spruce_B0ToPipPimEE_SameSign_line(name="SpruceRD_B0ToPipPimEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Btopipiee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipiee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -689,7 +689,7 @@ def Spruce_B0ToPipPimMuMu_line(name="SpruceRD_B0ToPipPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Btopipimumu["dimuons"], same_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipimumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -729,7 +729,7 @@ def Spruce_B0ToPipPimMuMu_SameSign_line( pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Btopipimumu["dimuons"], same_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**Btopipimumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -940,7 +940,7 @@ def Spruce_B0ToKpPimEE_line(name="SpruceRD_B0ToKpPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPiee["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -980,7 +980,7 @@ def Spruce_B0ToKpPimEE_SameSign_line(name="SpruceRD_B0ToKpPimEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPiee["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1019,7 +1019,7 @@ def Spruce_B0ToKpPimMuMu_line(name="SpruceRD_B0ToKpPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPimumu["dimuons"], same_sign=False) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPimumu["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1059,7 +1059,7 @@ def B0ToKpPimMuMu_SameSign_line(name="SpruceRD_B0ToKpPimMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPimumu["dimuons"], same_sign=True) - Kst0s = rdbuilder_thor.make_rd_detached_kstar0s(**BtoKPimumu["Kst0s"]) + Kst0s = rdbuilder_thor.make_rd_detached_kstar0s() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1105,7 +1105,7 @@ def Spruce_BuToKpPipPimEE_line(name="SpruceRD_BuToKpPipPimEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiPiee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPiee["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1130,7 +1130,7 @@ def Spruce_BuToKpPipPimEE_SameSign_line( pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoKPiPiee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPiee["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1154,7 +1154,7 @@ def Spruce_BuToKpPipPimMuMu_line(name="SpruceRD_BuToKpPipPimMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPiPimumu["dimuons"], same_sign=False) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPimumu["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1179,7 +1179,7 @@ def Spruce_BuToKpPipPimMuMu_SameSign_line( pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoKPiPimumu["dimuons"], same_sign=True) - K1s = rdbuilder_thor.make_rd_detached_K1(**BtoKPiPimumu["K1s"]) + K1s = rdbuilder_thor.make_rd_detached_K1() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1210,7 +1210,7 @@ def Spruce_BuToKpKpKmEE_line(name="SpruceRD_BuToKpKpKmEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Bto3Kee["dielectrons"], pid_e_min=1.0, opposite_sign=True) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kee["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1234,7 +1234,7 @@ def Spruce_BuToKpKpKmEE_SameSign_line(name="SpruceRD_BuToKpKpKmEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **Bto3Kee["dielectrons"], pid_e_min=1.0, opposite_sign=False) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kee["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -1257,7 +1257,7 @@ def Spruce_BuToKpKpKmMuMu_line(name="SpruceRD_BuToKpKpKmMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3Kmumu["dimuons"], same_sign=False) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kmumu["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -1281,7 +1281,7 @@ def Spruce_BuToKpKpKmMuMu_SameSign_line( pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **Bto3Kmumu["dimuons"], same_sign=True) - K2s = rdbuilder_thor.make_rd_detached_K2(**Bto3Kmumu["K2s"]) + K2s = rdbuilder_thor.make_rd_detached_K2() B = b_to_xll_builders.make_rd_BToXll( dimuons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce_hhll.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce_hhll.py index 59956733eb0edce64e42e5eeed9f68aebe1fe17e..61086c9a645a7872762e0753d5656e0667d1f6cd 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce_hhll.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xll_spruce_hhll.py @@ -285,18 +285,6 @@ BtoHHee = { "am_min": 0. * MeV, #iddlM "am_max": 6_500. * MeV, #5_500. * MeV,#iddlM "bpvvdchi2_min": 0., ##iddlM3Body - }, - "rhos": { - "pi_pid": None, #remove PID - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pt_min": 100. * MeV, #350. * MeV,#iddlM - "pi_p_min": - 2_000. * MeV, #TODO this cut is here for B0 -> K+ K- ll#iddlM - "pt_min": 250. * MeV, #not in iddl - "pi_ipchi2_min": 6., #9.,#iddlM - "adocachi2cut": 36., #not in iddl - "vchi2pdof_max": 25., #not in iddl } } @@ -322,18 +310,6 @@ BtoHHmumu = { "am_min": 0. * MeV, #iddlM "am_max": 6_500 * MeV, #5_500. * MeV,#iddlM #IsMuon #iddlM - }, - "rhos": { - "pi_pid": None, #remove PID - "am_min": 0. * MeV, - "am_max": 2_600. * MeV, - "pi_pt_min": 100. * MeV, #350. * MeV, - "pt_min": 250. * MeV, - "pi_p_min": - 2_000. * MeV, #TODO this cut is here for B0 -> K+ K- ll#iddlM - "pi_ipchi2_min": 6., #4., #iddlM - "adocachi2cut": 36., #not in iddl - "vchi2pdof_max": 25., #not in iddl } } @@ -344,7 +320,7 @@ def Spruce_B0ToHpHmEE_line(name="SpruceRD_B0ToHpHmEE", prescale=1): pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoHHee["dielectrons"], opposite_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**BtoHHee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -388,7 +364,7 @@ def Spruce_B0ToHpHmEE_SameSign_line(name="SpruceRD_B0ToHpHmEE_SameSign", pvs = make_pvs() dielectrons = rdbuilder_thor.make_rd_detached_dielectron( **BtoHHee["dielectrons"], opposite_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**BtoHHee["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dielectrons, @@ -431,7 +407,7 @@ def Spruce_B0ToHpHmMuMu_line(name="SpruceRD_B0ToHpHmMuMu", prescale=1): pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoHHmumu["dimuons"], same_sign=False) - rhos = rdbuilder_thor.make_rd_detached_rho0(**BtoHHmumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, @@ -475,7 +451,7 @@ def Spruce_B0ToHpHmMuMu_SameSign_line(name="SpruceRD_B0ToHpHmMuMu_SameSign", pvs = make_pvs() dimuons = rdbuilder_thor.make_rd_detached_dimuon( **BtoHHmumu["dimuons"], same_sign=True) - rhos = rdbuilder_thor.make_rd_detached_rho0(**BtoHHmumu["rhos"]) + rhos = rdbuilder_thor.make_rd_detached_rho0() B = b_to_xll_builders.make_rd_BToXll( dimuons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xtaul_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xtaul_hlt2.py index a3131c40e987871f411df48095ababf0bae4d85d..e6a7b2b2d9cc8068ed429843de4a24446427e97d 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xtaul_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/b_to_xtaul_hlt2.py @@ -51,7 +51,8 @@ Date: 07/12/2021 from Moore.config import register_line_builder from Moore.lines import Hlt2Line from PyConf import configurable -from GaudiKernel.SystemOfUnits import MeV, GeV +from GaudiKernel.SystemOfUnits import GeV, MeV +from Hlt2Conf.algorithms_thor import ParticleFilter from Hlt2Conf.lines.rd.builders import rd_isolation from Hlt2Conf.lines.rd.builders import b_to_xtaul_rd_builder as builder from Hlt2Conf.lines.rd.builders import rdbuilder_thor as common_builder @@ -62,6 +63,20 @@ from Functors.math import in_range all_lines = {} +def make_kstar0s_with_tighter_mass(): + return ParticleFilter( + common_builder.make_rd_detached_kstar0s(), + F.FILTER(F.require_all(F.MASS > 700. * MeV, F.MASS < 1100. * MeV)), + name="rd_detached_kstar0s_mass_btoxtaul_{hash}") + + +def make_rho0s_with_tighter_mass(): + return ParticleFilter( + common_builder.make_rd_detached_rho0(), + F.FILTER(F.require_all(F.MASS > 500. * MeV, F.MASS < 1100 * MeV)), + name="rd_detached_rho0s_mass_btoxtaul_{hash}") + + ## B0 -> K* tau l @register_line_builder(all_lines) @configurable @@ -72,20 +87,7 @@ def Hlt2_Bd2KstTauTau_OS_ExclusiveLine( """ HLT2 line for Bd -> (K*->K+ pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="tau+") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -133,20 +135,7 @@ def Hlt2_Bd2KstTauTau_SS_ExclusiveLine( and for Bd -> (K*->K+ pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="tau-") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -193,20 +182,7 @@ def Hlt2_Bd2KstTauMu_OS_ExclusiveLine( and for Bd -> (K*->K+ pi-) (tau-->pi-pi-pi+) mu+ + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="mu+") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -260,20 +236,7 @@ def Hlt2_Bd2KstTauMu_SS_ExclusiveLine( and for Bd -> (K*->K+ pi-) (tau-->pi-pi-pi+) mu- + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="mu-") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -327,20 +290,7 @@ def Hlt2_Bd2KstTauE_OS_ExclusiveLine( and for Bd -> (K*->K+ pi-) (tau-->pi-pi-pi+) e+ + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="e+") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -394,20 +344,7 @@ def Hlt2_Bd2KstTauE_SS_ExclusiveLine( and for Bd -> (K*->K+ pi-) (tau-->pi-pi-pi+) e- + CC """ - kst = common_builder.make_rd_detached_kstar0s( - pi_p_min=2 * GeV, - pi_pt_min=250 * MeV, - k_p_min=2 * GeV, - k_pt_min=250 * MeV, - pi_ipchi2_min=9., - k_ipchi2_min=9., - pi_pid=(F.PID_K < 2), - k_pid=(F.PID_K > 8), - am_min=700 * MeV, - am_max=1100 * MeV, - kstar0_pt_min=1 * GeV, - adocachi2cut=20., - vchi2pdof_max=6.) + kst = make_kstar0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="e-") decay_descriptor = "[B0 -> J/psi(1S) K*(892)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -698,7 +635,7 @@ def Hlt2_Bd2RhoTauTau_OS_ExclusiveLine( """ HLT2 line for Bd -> (rho->pi+ pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="tau+") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -733,7 +670,7 @@ def Hlt2_Bd2RhoTauTau_SS_ExclusiveLine( and for Bd -> (rho->pi+ pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="tau-") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -768,7 +705,7 @@ def Hlt2_Bd2RhoTauMu_OS_ExclusiveLine( and for Bd -> (rho->pi+ pi-) (tau-->pi-pi-pi+) mu+ + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="mu+") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -810,7 +747,7 @@ def Hlt2_Bd2RhoTauMu_SS_ExclusiveLine( and for Bd -> (rho->pi+ pi-) (tau-->pi-pi-pi+) mu- + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="mu-") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -852,7 +789,7 @@ def Hlt2_Bd2RhoTauE_OS_ExclusiveLine( and for Bd -> (rho->pi+ pi-) (tau-->pi-pi-pi+) e+ + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="e+") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -894,7 +831,7 @@ def Hlt2_Bd2RhoTauE_SS_ExclusiveLine( and for Bd -> (rho->pi+ pi-) (tau-->pi-pi-pi+) e- + CC """ - rho = builder.filter_rd_detached_rho0() + rho = make_rho0s_with_tighter_mass() dilepton = builder.make_dilepton_from_tauls(child_id="e-") decay_descriptor = "[B0 -> J/psi(1S) rho(770)0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1162,7 +1099,7 @@ def Hlt2_Bd2EtapTauE_SS_ExclusiveLine( monitoring_variables=_RD_MONITORING_VARIABLES) -## B0 -> Ks0 tau l +## B0 -> Ks0 (LL) tau l @register_line_builder(all_lines) @configurable def Hlt2_Bd2KsTauTau_LL_OS_ExclusiveLine( @@ -1172,7 +1109,7 @@ def Hlt2_Bd2KsTauTau_LL_OS_ExclusiveLine( """ HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() dilepton = builder.make_dilepton_from_tauls(child_id="tau+") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1207,7 +1144,7 @@ def Hlt2_Bd2KsTauTau_LL_SS_ExclusiveLine( and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() dilepton = builder.make_dilepton_from_tauls(child_id="tau-") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1242,7 +1179,7 @@ def Hlt2_Bd2KsTauMu_LL_OS_ExclusiveLine( and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) mu+ + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() dilepton = builder.make_dilepton_from_tauls(child_id="mu+") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1284,7 +1221,7 @@ def Hlt2_Bd2KsTauMu_LL_SS_ExclusiveLine( and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) mu- + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() dilepton = builder.make_dilepton_from_tauls(child_id="mu-") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1326,7 +1263,7 @@ def Hlt2_Bd2KsTauE_LL_OS_ExclusiveLine( and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) e+ + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() dilepton = builder.make_dilepton_from_tauls(child_id="e+") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -1368,7 +1305,244 @@ def Hlt2_Bd2KsTauE_LL_SS_ExclusiveLine( and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) e- + CC """ - ks = common_builder.make_rd_ks0_lls(adocachi2cut=25., vchi2pdof_max=20.) + ks = builder.filter_rd_ks0s() + dilepton = builder.make_dilepton_from_tauls(child_id="e-") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + e_child = rd_isolation.find_in_decay(input=b2xtaul, id="e-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["e"], + candidates=[e_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +## B0 -> Ks0 (DD) tau l +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauTau_DD_OS_ExclusiveLine( + name='Hlt2RD_BdToKsTauTau_KsDDToPiPi_TauTo3Pi_OS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) + dilepton = builder.make_dilepton_from_tauls(child_id="tau+") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauTau_DD_SS_ExclusiveLine( + name='Hlt2RD_BdToKsTauTau_KsDDToPiPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) (tau+->pi+pi+pi-) + CC + + and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) + dilepton = builder.make_dilepton_from_tauls(child_id="tau-") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauMu_DD_OS_ExclusiveLine( + name='Hlt2RD_BdToKsTauMu_KsDDToPiPi_TauTo3Pi_OS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) mu- + CC + + and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) mu+ + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) + dilepton = builder.make_dilepton_from_tauls(child_id="mu+") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + mu_child = rd_isolation.find_in_decay(input=b2xtaul, id="mu-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["mu"], + candidates=[mu_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauMu_DD_SS_ExclusiveLine( + name='Hlt2RD_BdToKsTauMu_KsDDToPiPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) mu+ + CC + + and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) mu- + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) + dilepton = builder.make_dilepton_from_tauls(child_id="mu-") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + mu_child = rd_isolation.find_in_decay(input=b2xtaul, id="mu-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["mu"], + candidates=[mu_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauE_DD_OS_ExclusiveLine( + name='Hlt2RD_BdToKsTauE_KsDDToPiPi_TauTo3Pi_OS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) e- + CC + + and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) e+ + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) + dilepton = builder.make_dilepton_from_tauls(child_id="e+") + decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" + b2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, ks], descriptors=decay_descriptor) + + ks_child = rd_isolation.find_in_decay(input=b2xtaul, id="KS0") + + tau_child = rd_isolation.find_in_decay(input=b2xtaul, id="tau+") + + e_child = rd_isolation.find_in_decay(input=b2xtaul, id="e-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["B", "Kshort", "tau"], + candidates=[b2xtaul, ks_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["e"], + candidates=[e_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, ks, b2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Bd2KsTauE_DD_SS_ExclusiveLine( + name='Hlt2RD_BdToKsTauE_KsDDToPiPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Bd -> (KS0->pi+ pi-) (tau+->pi+pi+pi-) e+ + CC + + and for Bd -> (KS0->pi+ pi-) (tau-->pi-pi-pi+) e- + CC + """ + ks = builder.filter_rd_ks0s(use_down_track=True) dilepton = builder.make_dilepton_from_tauls(child_id="e-") decay_descriptor = "[B0 -> J/psi(1S) KS0]cc" b2xtaul = builder.make_beauty2xtaul( @@ -2104,8 +2278,7 @@ def Hlt2_Lambdab2LambdaTauTau_LL_OS_ExclusiveLine( """ HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() dilepton = builder.make_dilepton_from_tauls(child_id="tau+") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( @@ -2140,8 +2313,7 @@ def Hlt2_Lambdab2LambdaTauTau_LL_SS_ExclusiveLine( and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() dilepton = builder.make_dilepton_from_tauls(child_id="tau-") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( @@ -2176,8 +2348,7 @@ def Hlt2_Lambdab2LambdaTauMu_LL_OS_ExclusiveLine( and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) mu+ + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() dilepton = builder.make_dilepton_from_tauls(child_id="mu+") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( @@ -2219,8 +2390,7 @@ def Hlt2_Lambdab2LambdaTauMu_LL_SS_ExclusiveLine( and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) mu- + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() dilepton = builder.make_dilepton_from_tauls(child_id="mu-") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( @@ -2262,8 +2432,7 @@ def Hlt2_Lambdab2LambdaTauE_LL_OS_ExclusiveLine( and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) e+ + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() dilepton = builder.make_dilepton_from_tauls(child_id="e+") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( @@ -2305,8 +2474,244 @@ def Hlt2_Lambdab2LambdaTauE_LL_SS_ExclusiveLine( and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) e- + CC """ - lambda0 = common_builder.make_rd_lambda_lls( - pi_ipchi2_min=9., adocachi2cut=25., vchi2pdof_max=20.) + lambda0 = builder.filter_rd_lambdas() + dilepton = builder.make_dilepton_from_tauls(child_id="e-") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + e_child = rd_isolation.find_in_decay(input=lb2xtaul, id="e-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["e"], + candidates=[e_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +## Lambda_b -> Lambda (DD) tau l +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauTau_DD_OS_ExclusiveLine( + name="Hlt2RD_LbToLambdaTauTau_LambdaDDToPPi_TauTo3Pi_OS", + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) (tau-->pi-pi-pi+) + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) + dilepton = builder.make_dilepton_from_tauls(child_id="tau+") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauTau_DD_SS_ExclusiveLine( + name='Hlt2RD_LbToLambdaTauTau_LambdaDDToPPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) (tau+->pi+pi+pi-) + CC + + and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) (tau-->pi-pi-pi+) + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) + dilepton = builder.make_dilepton_from_tauls(child_id="tau-") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauMu_DD_OS_ExclusiveLine( + name='Hlt2RD_LbToLambdaTauMu_LambdaDDToPPi_TauTo3Pi_OS', + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) mu- + CC + + and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) mu+ + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) + dilepton = builder.make_dilepton_from_tauls(child_id="mu+") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + mu_child = rd_isolation.find_in_decay(input=lb2xtaul, id="mu-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["mu"], + candidates=[mu_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauMu_DD_SS_ExclusiveLine( + name='Hlt2RD_LbToLambdaTauMu_LambdaDDToPPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) mu+ + CC + + and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) mu- + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) + dilepton = builder.make_dilepton_from_tauls(child_id="mu-") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + mu_child = rd_isolation.find_in_decay(input=lb2xtaul, id="mu-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["mu"], + candidates=[mu_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauE_DD_OS_ExclusiveLine( + name='Hlt2RD_LbToLambdaTauE_LambdaDDToPPi_TauTo3Pi_OS', + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) e- + CC + + and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) e+ + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) + dilepton = builder.make_dilepton_from_tauls(child_id="e+") + decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" + lb2xtaul = builder.make_beauty2xtaul( + particles=[dilepton, lambda0], descriptors=decay_descriptor) + + lambda0_child = rd_isolation.find_in_decay(input=lb2xtaul, id="Lambda0") + + tau_child = rd_isolation.find_in_decay(input=lb2xtaul, id="tau+") + + e_child = rd_isolation.find_in_decay(input=lb2xtaul, id="e-") + + iso_parts = rd_isolation.select_parts_for_isolation( + names=["Lb", "L0", "tau"], + candidates=[lb2xtaul, lambda0_child, tau_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.FIND_IN_TREE())) + + iso_parts += rd_isolation.select_parts_for_isolation( + names=["e"], + candidates=[e_child], + cut=F.require_all(in_range(0., F.DR2, 0.25), ~F.SHARE_TRACKS())) + + return Hlt2Line( + name=name, + prescale=prescale, + persistreco=persistreco, + algs=rd_prefilter() + [dilepton, lambda0, lb2xtaul], + extra_outputs=iso_parts, + monitoring_variables=_RD_MONITORING_VARIABLES) + + +@register_line_builder(all_lines) +@configurable +def Hlt2_Lambdab2LambdaTauE_DD_SS_ExclusiveLine( + name='Hlt2RD_LbToLambdaTauE_LambdaDDToPPi_TauTo3Pi_SS', + prescale=1, + persistreco=False): + """ + HLT2 line for Lb -> (L0->p pi-) (tau+->pi+pi+pi-) e+ + CC + + and for Lb -> (L0->p pi-) (tau-->pi-pi-pi+) e- + CC + """ + lambda0 = builder.filter_rd_lambdas(use_down_tracks=True) dilepton = builder.make_dilepton_from_tauls(child_id="e-") decay_descriptor = "[Lambda_b0 -> J/psi(1S) Lambda0]cc" lb2xtaul = builder.make_beauty2xtaul( diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic.py index 8a41e6276132801fe0bf6f3f650ddf082a189025..46c8efb9a13f25e9fe447b8ad7c4b3fe1aba019b 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic.py @@ -111,7 +111,6 @@ def Hlt2RD_LbToL0PipPimMuMu_LL(name="Hlt2RD_LbToL0PipPimMuMu_LL", prescale=1): dipion = make_dipion_for_lb(am_max=5770. * MeV) lb0 = make_bhadron_3body( - name="lb0_to_l0pipimumu_ll", pvs=pvs, dilepton=make_dimuon, hadron1=lambdas, @@ -141,7 +140,6 @@ def Hlt2RD_LbToPpKS0PimMuMu_LL(name="Hlt2RD_LbToPpKS0PimMuMu_LL", prescale=1): ks0 = make_rd_ks0_lls() lb0 = make_bhadron_4body( - name="lb0_to_pkspimumu_ll", pvs=pvs, dilepton=make_dimuon, hadron1=protons, @@ -166,7 +164,6 @@ def Hlt2RD_XibmToXimMuMu_LLL(name="Hlt2RD_XibmToXimMuMu_LLL", prescale=1): am_min=200. * MeV, am_max=5800. * MeV, **dimuon_cuts) xis = make_xim_to_lambda_pi_lll(name="xim_lll", pvs=pvs) xib = make_bhadron( - name="xib_to_ximumu_lll", pvs=pvs, dilepton=make_dimuon, hadron=xis, @@ -190,7 +187,6 @@ def Hlt2RD_OmegabmToOmegamMuMu_LLL(name="Hlt2RD_OmegabmToOmegamMuMu_LLL", am_min=200. * MeV, am_max=6000. * MeV, **dimuon_cuts) omegas = make_omegam_to_lambda_k_lll(name="omegam_lll", pvs=pvs) omegab = make_bhadron( - name="omegab_to_omegamumu_lll", pvs=pvs, dilepton=make_dimuon, hadron=omegas, @@ -214,7 +210,6 @@ def Hlt2RD_OmegabmToXimMuMu_LLL(name="Hlt2RD_OmegabmToXimMuMu_LLL", am_min=200. * MeV, am_max=6300. * MeV, **dimuon_cuts) xim = make_xim_to_lambda_pi_lll(name="xim_lll", pvs=pvs) omegab = make_bhadron( - name="omegab_to_ximmumu_lll", pvs=pvs, dilepton=make_dimuon, hadron=xim, @@ -245,7 +240,6 @@ def Hlt2RD_LbToL0PipPimEE_LL(name="Hlt2RD_LbToL0PipPimEE_LL", prescale=1): dipion = make_dipion_for_lb() lb0 = make_bhadron_3body( - name="lb0_to_l0pipiee_ll", pvs=pvs, dilepton=make_dielectron, hadron1=lambdas, @@ -275,7 +269,6 @@ def Hlt2RD_LbToPpKS0PimEE_LL(name="Hlt2RD_LbToPpKS0PimEE_LL", prescale=1): ks0 = make_rd_ks0_lls() lb0 = make_bhadron_4body( - name="lb0_to_pkspiee_ll", pvs=pvs, dilepton=make_dielectron, hadron1=protons, @@ -300,7 +293,6 @@ def Hlt2RD_XibmToXimEE_LLL(name="Hlt2RD_XibmToXimEE_LLL", prescale=1): xis = make_xim_to_lambda_pi_lll(name="xim_lll", pvs=pvs) xib = make_bhadron( - name="xib_to_xiee_lll", pvs=pvs, dilepton=make_dielectron, hadron=xis, @@ -324,7 +316,6 @@ def Hlt2RD_OmegabmToOmegamEE_LLL(name="Hlt2RD_OmegabmToOmegamEE_LLL", make_dielectron = make_rd_detached_dielectron( am_min=0 * MeV, am_max=5500 * MeV, **dielectron_cuts) omegab = make_bhadron( - name="omegab_to_omegaee_lll", pvs=pvs, dilepton=make_dielectron, hadron=omegas, @@ -350,7 +341,6 @@ def Hlt2RD_XibmToXimMuMu_DDL(name="Hlt2RD_XibmToXimMuMu_DDL", prescale=1): am_min=200. * MeV, am_max=5700. * MeV, **dimuon_cuts) xis = make_xim_to_lambda_pi_ddl(name="xim_ddl", pvs=pvs) xib = make_bhadron( - name="xib_to_ximumu_ddl", pvs=pvs, dilepton=make_dimuon, hadron=xis, @@ -374,7 +364,6 @@ def Hlt2RD_OmegabmToOmegamMuMu_DDL(name="Hlt2RD_OmegabmToOmegamMuMu_DDL", am_min=200. * MeV, am_max=5300. * MeV, **dimuon_cuts) omegas = make_omegam_to_lambda_k_ddl(name="omegam_ddl", pvs=pvs) omegab = make_bhadron( - name="omegab_to_omegamumu_ddl", pvs=pvs, dilepton=make_dimuon, hadron=omegas, @@ -398,7 +387,6 @@ def Hlt2RD_OmegabmToXimMuMu_DDL(name="Hlt2RD_OmegabmToXimMuMu_DDL", am_min=200. * MeV, am_max=6300. * MeV, **dimuon_cuts) xim = make_xim_to_lambda_pi_ddl(name="xim_ddl", pvs=pvs) omegab = make_bhadron( - name="omegab_to_ximmumu_ddl", pvs=pvs, dilepton=make_dimuon, hadron=xim, @@ -422,7 +410,6 @@ def Hlt2RD_XibmToXimEE_DDL(name="Hlt2RD_XibmToXimEE_DDL", prescale=1): xis = make_xim_to_lambda_pi_ddl(name="xim_ddl", pvs=pvs) xib = make_bhadron( - name="xib_to_xiee_ddl", pvs=pvs, dilepton=make_dielectron, hadron=xis, @@ -446,7 +433,6 @@ def Hlt2RD_OmegabmToOmegamEE_DDL(name="Hlt2RD_OmegabmToOmegamEE_DDL", am_min=0 * MeV, am_max=5500 * MeV, **dielectron_cuts) omegas = make_omegam_to_lambda_k_ddl(name="omegam_ddl", pvs=pvs) omegab = make_bhadron( - name="omegab_to_omegaee_ddl", pvs=pvs, dilepton=make_dielectron, hadron=omegas, @@ -476,7 +462,6 @@ def Hlt2RD_LbToL0PipPimMuMu_DD(name="Hlt2RD_LbToL0PipPimMuMu_DD", dipion = make_dipion_for_lb(am_max=5770. * MeV) lb0 = make_bhadron_3body( - name="lb0_to_l0pipimumu_dd", pvs=pvs, dilepton=make_dimuon, hadron1=lambdas, @@ -506,7 +491,6 @@ def Hlt2RD_LbToPpKS0PimMuMu_DD(name="Hlt2RD_LbToPpKS0PimMuMu_DD", prescale=1): ks0 = make_rd_ks0_dds() lb0 = make_bhadron_4body( - name="lb0_to_pkspimumu_ll", pvs=pvs, dilepton=make_dimuon, hadron1=protons, @@ -531,7 +515,6 @@ def Hlt2RD_XibmToXimMuMu_DDD(name="Hlt2RD_XibmToXimMuMu_DDD", prescale=1): am_min=200. * MeV, am_max=5600. * MeV, **dimuon_cuts) xis = make_xim_to_lambda_pi_ddd(name="xim_ddd", pvs=pvs) xib = make_bhadron( - name="xib_to_ximumu_ddd", pvs=pvs, dilepton=make_dimuon, hadron=xis, @@ -555,7 +538,6 @@ def Hlt2RD_OmegabmToOmegamMuMu_DDD(name="Hlt2RD_OmegabmToOmegamMuMu_DDD", am_min=200. * MeV, am_max=5700. * MeV, **dimuon_cuts) omegas = make_omegam_to_lambda_k_ddd(name="omegam_ddd", pvs=pvs) omegab = make_bhadron( - name="omegab_to_omegamumu_ddd", pvs=pvs, dilepton=make_dimuon, hadron=omegas, @@ -579,7 +561,6 @@ def Hlt2RD_OmegabmToXimMuMu_DDD(name="Hlt2RD_OmegabmToXimMuMu_DDD", am_min=200. * MeV, am_max=6300. * MeV, **dimuon_cuts) xim = make_xim_to_lambda_pi_ddd(name="xim_ddd", pvs=pvs) omegab = make_bhadron( - name="omegab_to_ximmumu_ddd", pvs=pvs, dilepton=make_dimuon, hadron=xim, @@ -605,7 +586,6 @@ def Hlt2RD_LbToL0PipPimEE_DD(name="Hlt2RD_LbToL0PipPimEE_DD", prescale=1): dipion = make_dipion_for_lb() lb0 = make_bhadron_3body( - name="lb0_to_l0pipiee_dd", pvs=pvs, dilepton=make_dielectron, hadron1=lambdas, @@ -635,7 +615,6 @@ def Hlt2RD_LbToPpKS0PimEE_DD(name="Hlt2RD_LbToPpKS0PimEE_DD", prescale=1): ks0 = make_rd_ks0_dds() lb0 = make_bhadron_4body( - name="lb0_to_pkpipiee_dd", pvs=pvs, dilepton=make_dielectron, hadron1=protons, @@ -660,7 +639,6 @@ def Hlt2RD_XibmToXimEE_DDD(name="Hlt2RD_XibmToXimEE_DDD", prescale=1): make_dielectron = make_rd_detached_dielectron( am_min=0 * MeV, am_max=5500 * MeV, **dielectron_cuts) xib = make_bhadron( - name="xib_to_xiee_ddd", pvs=pvs, dilepton=make_dielectron, hadron=xis, @@ -686,7 +664,6 @@ def Hlt2RD_OmegabmToOmegamEE_DDD(name="Hlt2RD_OmegabmToOmegamEE_DDD", omegas = make_omegam_to_lambda_k_ddd(name="omegam_ddd", pvs=pvs) omegab = make_bhadron( - name="omegab_to_omegaee_ddd", pvs=pvs, dilepton=make_dielectron, hadron=omegas, @@ -709,7 +686,6 @@ def Hlt2RD_OmegabmToXimEE_DDD(name="Hlt2RD_OmegabmToXimEE_DDD", prescale=1): am_min=0 * MeV, am_max=5500 * MeV, **dielectron_cuts) xim = make_xim_to_lambda_pi_ddd(name="xim_ddd", pvs=pvs) omegab = make_bhadron( - name="omegab_to_ximee_ddd", pvs=pvs, dilepton=make_dielectron, hadron=xim, @@ -741,7 +717,6 @@ def Hlt2RD_LbToPpPimMuMu(name="Hlt2RD_LbToPpPimMuMu", prescale=1): pions = make_rd_has_rich_detached_pions(**detached_pions_cuts) lb0 = make_bhadron_3body( - name="lb0_to_l0pipimumu_ll", pvs=pvs, dilepton=make_dimuon, hadron1=protons, @@ -786,7 +761,6 @@ def Hlt2RD_LbToPpKmPipPimMuMu(name="Hlt2RD_LbToPpKmPipPimMuMu", prescale=1): mipchi2dvprimary_min=9, pt_min=500 * MeV) lb0 = make_bhadron_4body( - name="lb0_to_pkpipimumu_ll", pvs=pvs, dilepton=make_dimuon, hadron1=protons, @@ -814,7 +788,6 @@ def Hlt2RD_LbToPpKmPipPimEE(name="Hlt2RD_LbToPpKmPipPimEE", prescale=1): kaons = make_rd_has_rich_detached_kaons(**detached_protons_cuts) lb0 = make_bhadron_4body( - name="lb0_to_pkpipiee_ll", pvs=pvs, dilepton=make_dielectron, hadron1=protons, @@ -841,7 +814,6 @@ def Hlt2RD_LbToPpPimEE(name="Hlt2RD_LbToPpPimEE", prescale=1): pions = make_rd_has_rich_detached_pions(**detached_pions_cuts) lb0 = make_bhadron_3body( - name="lb0_to_l0pipimumu_ll", pvs=pvs, dilepton=make_dielectron, hadron1=protons, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic_radiative.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic_radiative.py index 54b4f4c5a7c240874c5e3c0c26ed109a1ed28281..5e0afc07c7172ad5de556ae41776364de91066a7 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic_radiative.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/baryonic_radiative.py @@ -31,7 +31,8 @@ from Hlt2Conf.lines.rd.builders.baryonic_builders import ( from Hlt2Conf.lines.rd.builders.baryonic_radiative_builders import ( make_rd_xibm, make_rd_obm, make_rd_lb_to_lgamma_LL, - filter_lambdasLL_for_lb_to_lg, LB_TMVA_BDT) + make_rd_lb_to_lgamma_DD, filter_lambdasLL_for_lb_to_lg, + filter_lambdasDD_for_lb_to_lg, LB_TMVA_BDT) from Hlt2Conf.lines.rd.builders.rdbuilder_thor import make_rd_photons @@ -79,6 +80,39 @@ def lb_to_lgamma_ll_line(name='Hlt2RD_LbToLambdaGamma_LL', ) +@configurable +@register_line_builder(all_lines) +def lb_to_lgamma_dd_line(name='Hlt2RD_LbToLambdaGamma_DD', + prescale=0.8, + prefilter=rd_prefilter): + """Lambda_b0 -> Lambda gamma line""" + + pvs = make_pvs() + + lambda_dd = filter_lambdasDD_for_lb_to_lg(pvs=pvs) + photons = make_rd_photons( + et_min=2. * GeV, + e_min=5. * GeV, + IsPhoton_min=0.4, + IsNotH_min=0.3, + E19_min=0.2) + + lb_dd = make_rd_lb_to_lgamma_DD(Lambda=lambda_dd, gamma=photons, pvs=pvs) + + lb_dd_mva = ParticleFilter( + lb_dd, Cut=F.FILTER(LB_TMVA_BDT( + pvs=pvs, + topo="DD", + ) > 0.6)) + + return Hlt2Line( + name=name, + algs=prefilter() + [lb_dd_mva], + monitoring_variables=_RD_MONITORING_VARIABLES, + prescale=prescale, + ) + + @register_line_builder(all_lines) def xibtoxigamma_xitolpi_lll_line(name='Hlt2RD_XibmToXimGamma_XimToL0Pim_LLL', prescale=0.1): diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_exclusive_hlt2.py index 93334b3860af6f2307164721ebd15e33eee3d621..c6db274067e74f984346ee50fcc0cccae90673af 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_exclusive_hlt2.py @@ -203,7 +203,7 @@ def bstophietau_tautomu_line(name='Hlt2RD_BsToKKTauE_TauToMu', prescale=1): @register_line_builder(all_lines) def bstophietau_tautomu_same_sign_kaons_sskmu_line( - name='Hlt2RD_BsToKKTauE_TauToMu_SSK_SSKmu', prescale=0.7): + name='Hlt2RD_BsToKKTauE_TauToMu_SSK_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -240,7 +240,7 @@ def bstophietau_tautomu_same_sign_kaons_sskmu_line( @register_line_builder(all_lines) def bstophietau_tautomu_same_sign_kaons_oskmu_line( - name='Hlt2RD_BsToKKTauE_TauToMu_SSK_OSKmu', prescale=0.7): + name='Hlt2RD_BsToKKTauE_TauToMu_SSK_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -277,7 +277,7 @@ def bstophietau_tautomu_same_sign_kaons_oskmu_line( @register_line_builder(all_lines) def bstophimutau_tautomu_same_sign_muons_line( - name='Hlt2RD_BsToKKTauE_TauToMu_SSl', prescale=0.7): + name='Hlt2RD_BsToKKTauE_TauToMu_SSl', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -310,7 +310,7 @@ def bstophimutau_tautomu_same_sign_muons_line( @register_line_builder(all_lines) def bstophietau_tautomu_fakemuon_from_tau_line( - name='Hlt2RD_BsToKKTauE_TauToMu_FakeMuonFromTau', prescale=0.03): + name='Hlt2RD_BsToKKTauE_TauToMu_FakeMuonFromTau', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -341,7 +341,7 @@ def bstophietau_tautomu_fakemuon_from_tau_line( @register_line_builder(all_lines) def bstophietau_tautomu_fakemuon_from_b_line( - name='Hlt2RD_BsToKKTauE_TauToMu_FakeMuonFromB', prescale=0.003): + name='Hlt2RD_BsToKKTauE_TauToMu_FakeMuonFromB', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -378,7 +378,7 @@ def bstophietau_tautomu_fakemuon_from_b_line( @register_line_builder(all_lines) def bstophietau_tautomu_fakekaon_line( - name='Hlt2RD_BsToKKTauE_TauToMu_FakeKaon', prescale=0.1): + name='Hlt2RD_BsToKKTauE_TauToMu_FakeKaon', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -476,7 +476,7 @@ def lbtopketau_tautomu_ospmu_line(name='Hlt2RD_LbToPKTauE_TauToMu_OSpmu', @register_line_builder(all_lines) def lbtopketau_tautomu_same_sign_pk_sspmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_SSpK_SSpmu', prescale=0.7): + name='Hlt2RD_LbToPKTauE_TauToMu_SSpK_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -515,7 +515,7 @@ def lbtopketau_tautomu_same_sign_pk_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_same_sign_pk_ospmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_SSpK_OSpmu', prescale=0.7): + name='Hlt2RD_LbToPKTauE_TauToMu_SSpK_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -554,7 +554,7 @@ def lbtopketau_tautomu_same_sign_pk_ospmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_same_sign_muons_sspmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_SSl_SSpmu', prescale=0.5): + name='Hlt2RD_LbToPKTauE_TauToMu_SSl_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -588,7 +588,7 @@ def lbtopketau_tautomu_same_sign_muons_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_same_sign_muons_ospmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_SSl_OSpmu', prescale=0.75): + name='Hlt2RD_LbToPKTauE_TauToMu_SSl_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -623,7 +623,7 @@ def lbtopketau_tautomu_same_sign_muons_ospmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakemuon_from_tau_sspmu_line( name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromTau_SSpmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -658,7 +658,7 @@ def lbtopketau_tautomu_fakemuon_from_tau_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakemuon_from_tau_ospmu_line( name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromTau_OSpmu', - prescale=0.005): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -692,7 +692,7 @@ def lbtopketau_tautomu_fakemuon_from_tau_ospmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakemuon_from_b_sspmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromB_SSpmu', prescale=0.015): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromB_SSpmu', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -732,7 +732,7 @@ def lbtopketau_tautomu_fakemuon_from_b_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakemuon_from_b_ospmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromB_OSpmu', prescale=0.015): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeMuonFromB_OSpmu', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -772,7 +772,7 @@ def lbtopketau_tautomu_fakemuon_from_b_ospmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakeproton_sspmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeProton_SSpmu', prescale=0.1): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeProton_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -812,7 +812,7 @@ def lbtopketau_tautomu_fakeproton_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakeproton_ospmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeProton_OSpmu', prescale=0.15): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeProton_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -852,7 +852,7 @@ def lbtopketau_tautomu_fakeproton_ospmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakekaon_sspmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeKaon_SSpmu', prescale=0.3): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeKaon_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -891,7 +891,7 @@ def lbtopketau_tautomu_fakekaon_sspmu_line( @register_line_builder(all_lines) def lbtopketau_tautomu_fakekaon_ospmu_line( - name='Hlt2RD_LbToPKTauE_TauToMu_FakeKaon_OSpmu', prescale=0.3): + name='Hlt2RD_LbToPKTauE_TauToMu_FakeKaon_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -990,7 +990,7 @@ def bdtokstetau_tautomu_oskmu_line(name='Hlt2RD_BdToKPiTauE_TauToMu_OSKmu', @register_line_builder(all_lines) def bdtokstetau_tautomu_same_sign_kpi_sskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_SSKpi_SSKmu', prescale=0.5): + name='Hlt2RD_BdToKPiTauE_TauToMu_SSKpi_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1029,7 +1029,7 @@ def bdtokstetau_tautomu_same_sign_kpi_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_same_sign_kpi_oskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_SSKpi_OSKmu', prescale=0.1): + name='Hlt2RD_BdToKPiTauE_TauToMu_SSKpi_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1068,7 +1068,7 @@ def bdtokstetau_tautomu_same_sign_kpi_oskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_same_sign_muons_sskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_SSl_SSKmu', prescale=0.5): + name='Hlt2RD_BdToKPiTauE_TauToMu_SSl_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1102,7 +1102,7 @@ def bdtokstetau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_same_sign_muons_oskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_SSl_OSKmu', prescale=0.7): + name='Hlt2RD_BdToKPiTauE_TauToMu_SSl_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1110,7 +1110,7 @@ def bdtokstetau_tautomu_same_sign_muons_oskmu_line( **kwargs_muons_from_tau) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) kstes = btosetau_exclusive.make_kste( - kaons, pions, electrons, pvs, decay_descriptor="[B0 -> K+ pi- mu-]cc") + kaons, pions, electrons, pvs, decay_descriptor="[B0 -> K+ pi- e-]cc") bd = btosmutau_exclusive.make_bd( kstes, muons_from_tau, @@ -1137,7 +1137,7 @@ def bdtokstetau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakemuon_from_tau_sskmu_line( name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromTau_SSKmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1172,7 +1172,7 @@ def bdtokstetau_tautomu_fakemuon_from_tau_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakemuon_from_tau_oskmu_line( name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromTau_OSKmu', - prescale=0.005): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1206,7 +1206,8 @@ def bdtokstetau_tautomu_fakemuon_from_tau_oskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakemuon_from_b_sskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromB_SSKmu', prescale=0.015): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromB_SSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1246,7 +1247,8 @@ def bdtokstetau_tautomu_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakemuon_from_b_oskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromB_OSKmu', prescale=0.003): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakeMuonFromB_OSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1286,7 +1288,7 @@ def bdtokstetau_tautomu_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakekaon_sskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakeKaon_SSKmu', prescale=0.15): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakeKaon_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1326,7 +1328,7 @@ def bdtokstetau_tautomu_fakekaon_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakekaon_oskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakeKaon_OSKmu', prescale=0.15): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakeKaon_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1366,7 +1368,7 @@ def bdtokstetau_tautomu_fakekaon_oskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakepion_sskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakePion_SSKmu', prescale=0.3): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakePion_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1405,7 +1407,7 @@ def bdtokstetau_tautomu_fakepion_sskmu_line( @register_line_builder(all_lines) def bdtokstetau_tautomu_fakepion_oskmu_line( - name='Hlt2RD_BdToKPiTauE_TauToMu_FakePion_OSKmu', prescale=0.3): + name='Hlt2RD_BdToKPiTauE_TauToMu_FakePion_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1502,7 +1504,7 @@ def butoketau_tautomu_sskmu_line(name='Hlt2RD_BuToKTauE_TauToMu_SSKmu', @register_line_builder(all_lines) def butoketau_tautomu_same_sign_muons_oskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_SSl_OSKmu', prescale=0.3): + name='Hlt2RD_BuToKTauE_TauToMu_SSl_OSKmu', prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -1535,7 +1537,7 @@ def butoketau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_same_sign_muons_sskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_SSl_SSKmu', prescale=0.75): + name='Hlt2RD_BuToKTauE_TauToMu_SSl_SSKmu', prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -1568,7 +1570,8 @@ def butoketau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakemuon_from_tau_oskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromTau_OSKmu', prescale=0.002): + name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromTau_OSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1602,7 +1605,8 @@ def butoketau_tautomu_fakemuon_from_tau_oskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakemuon_from_tau_sskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromTau_SSKmu', prescale=0.005): + name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromTau_SSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1636,7 +1640,7 @@ def butoketau_tautomu_fakemuon_from_tau_sskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakemuon_from_b_oskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromB_OSKmu', prescale=0.015): + name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromB_OSKmu', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -1674,7 +1678,7 @@ def butoketau_tautomu_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakemuon_from_b_sskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromB_SSKmu', prescale=0.015): + name='Hlt2RD_BuToKTauE_TauToMu_FakeMuonFromB_SSKmu', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons_from_tau = rdbuilder_thor.make_rd_detached_muons( @@ -1712,7 +1716,7 @@ def butoketau_tautomu_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakekaon_oskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeKaon_OSKmu', prescale=0.05): + name='Hlt2RD_BuToKTauE_TauToMu_FakeKaon_OSKmu', prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) @@ -1750,7 +1754,7 @@ def butoketau_tautomu_fakekaon_oskmu_line( @register_line_builder(all_lines) def butoketau_tautomu_fakekaon_sskmu_line( - name='Hlt2RD_BuToKTauE_TauToMu_FakeKaon_SSKmu', prescale=0.15): + name='Hlt2RD_BuToKTauE_TauToMu_FakeKaon_SSKmu', prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_tau_to_e_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_tau_to_e_exclusive_hlt2.py index 5369b172b16d8bab5100c616216baf1d4385a3ba..1e1a12425c4baf73aa2b2959692feb1bfb86c825 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_tau_to_e_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosetau_tau_to_e_exclusive_hlt2.py @@ -201,7 +201,7 @@ def bstophietau_tautoe_line(name='Hlt2RD_BsToKKTauE_TauToE', prescale=1): @register_line_builder(all_lines) def bstophietau_tautoe_same_sign_kaons_sske_line( - name='Hlt2RD_BsToKKTauE_TauToE_SSK_SSKe', prescale=0.1): + name='Hlt2RD_BsToKKTauE_TauToE_SSK_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -238,7 +238,7 @@ def bstophietau_tautoe_same_sign_kaons_sske_line( @register_line_builder(all_lines) def bstophietau_tautoe_same_sign_kaons_oske_line( - name='Hlt2RD_BsToKKTauE_TauToE_SSK_OSKe', prescale=0.1): + name='Hlt2RD_BsToKKTauE_TauToE_SSK_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -275,7 +275,7 @@ def bstophietau_tautoe_same_sign_kaons_oske_line( @register_line_builder(all_lines) def bstophietau_tautoe_same_sign_electrons_line( - name='Hlt2RD_BsToKKTauE_TauToE_SSe', prescale=0.2): + name='Hlt2RD_BsToKKTauE_TauToE_SSe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -308,7 +308,7 @@ def bstophietau_tautoe_same_sign_electrons_line( @register_line_builder(all_lines) def bstophietau_tautoe_fakeelectron_from_tau_line( - name='Hlt2RD_BsToKKTauE_TauToE_FakeelectronFromTau', prescale=0.015): + name='Hlt2RD_BsToKKTauE_TauToE_FakeelectronFromTau', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -339,7 +339,7 @@ def bstophietau_tautoe_fakeelectron_from_tau_line( @register_line_builder(all_lines) def bstophietau_tautoe_fakeelectron_from_b_line( - name='Hlt2RD_BsToKKTauE_TauToE_FakeelectronFromB', prescale=0.015): + name='Hlt2RD_BsToKKTauE_TauToE_FakeelectronFromB', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -376,7 +376,7 @@ def bstophietau_tautoe_fakeelectron_from_b_line( @register_line_builder(all_lines) def bstophietau_tautoe_fakekaon_line(name='Hlt2RD_BsToKKTauE_TauToE_FakeKaon', - prescale=0.03): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -480,7 +480,7 @@ def lbtopketau_tautoe_ospe_line(name='Hlt2RD_LbToPKTauE_TauToE_OSpe', @register_line_builder(all_lines) def lbtopketau_tautoe_same_sign_pk_sspe_line( - name='Hlt2RD_LbToPKTauE_TauToE_SSpK_SSpe', prescale=0.1): + name='Hlt2RD_LbToPKTauE_TauToE_SSpK_SSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -519,7 +519,7 @@ def lbtopketau_tautoe_same_sign_pk_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_same_sign_pk_ospe_line( - name='Hlt2RD_LbToPKTauE_TauToE_SSpK_OSpe', prescale=0.2): + name='Hlt2RD_LbToPKTauE_TauToE_SSpK_OSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -558,7 +558,7 @@ def lbtopketau_tautoe_same_sign_pk_ospe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_same_sign_electrons_sspe_line( - name='Hlt2RD_LbToPKTauE_TauToE_SSe_SSpe', prescale=0.3): + name='Hlt2RD_LbToPKTauE_TauToE_SSe_SSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -592,7 +592,7 @@ def lbtopketau_tautoe_same_sign_electrons_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_same_sign_electrons_ospe_line( - name='Hlt2RD_LbToPKTauE_TauToE_SSe_OSpe', prescale=0.5): + name='Hlt2RD_LbToPKTauE_TauToE_SSe_OSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -627,7 +627,7 @@ def lbtopketau_tautoe_same_sign_electrons_ospe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeelectron_from_tau_sspe_line( name='Hlt2RD_LbToPKTauE_TauToE_FakeelectronFromTau_SSpe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -662,7 +662,7 @@ def lbtopketau_tautoe_fakeelectron_from_tau_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeelectron_from_tau_ospe_line( name='Hlt2RD_LbToPKTauE_TauToE_FakeelectronFromTau_OSpe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -697,7 +697,7 @@ def lbtopketau_tautoe_fakeelectron_from_tau_ospe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeelectron_from_b_sspe_line( name='Hlt2RD_LbToPKTauE_TauToE_FakeelectronFromB_SSpe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -738,7 +738,7 @@ def lbtopketau_tautoe_fakeelectron_from_b_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeelectron_from_b_ospe_line( name='Hlt2RD_LbToPKTauE_TauToE_FakeelectronFromB_OSpe', - prescale=0.005): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -778,7 +778,7 @@ def lbtopketau_tautoe_fakeelectron_from_b_ospe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeproton_sspe_line( - name='Hlt2RD_LbToPKTauE_TauToE_FakeProton_SSpe', prescale=0.05): + name='Hlt2RD_LbToPKTauE_TauToE_FakeProton_SSpe', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -818,7 +818,7 @@ def lbtopketau_tautoe_fakeproton_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakeproton_ospe_line( - name='Hlt2RD_LbToPKTauE_TauToE_FakeProton_OSpe', prescale=0.05): + name='Hlt2RD_LbToPKTauE_TauToE_FakeProton_OSpe', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -858,7 +858,7 @@ def lbtopketau_tautoe_fakeproton_ospe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakekaon_sspe_line( - name='Hlt2RD_LbToPKTauE_TauToE_FakeKaon_SSpe', prescale=0.15): + name='Hlt2RD_LbToPKTauE_TauToE_FakeKaon_SSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -897,7 +897,7 @@ def lbtopketau_tautoe_fakekaon_sspe_line( @register_line_builder(all_lines) def lbtopketau_tautoe_fakekaon_ospe_line( - name='Hlt2RD_LbToPKTauE_TauToE_FakeKaon_OSpe', prescale=0.2): + name='Hlt2RD_LbToPKTauE_TauToE_FakeKaon_OSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -996,7 +996,7 @@ def bdtokstetau_tautoe_oske_line(name='Hlt2RD_BdToKPiTauE_TauToE_OSKe', @register_line_builder(all_lines) def bdtokstetau_tautoe_same_sign_kpi_sske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_SSKpi_SSKe', prescale=0.3): + name='Hlt2RD_BdToKPiTauE_TauToE_SSKpi_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1035,7 +1035,7 @@ def bdtokstetau_tautoe_same_sign_kpi_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_same_sign_kpi_oske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_SSKpi_OSKe', prescale=0.1): + name='Hlt2RD_BdToKPiTauE_TauToE_SSKpi_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1074,7 +1074,7 @@ def bdtokstetau_tautoe_same_sign_kpi_oske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_same_sign_electrons_sske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_SSe_SSKe', prescale=0.5): + name='Hlt2RD_BdToKPiTauE_TauToE_SSe_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1108,7 +1108,7 @@ def bdtokstetau_tautoe_same_sign_electrons_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_same_sign_electrons_oske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_SSe_OSKe', prescale=0.2): + name='Hlt2RD_BdToKPiTauE_TauToE_SSe_OSKe', prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1143,7 +1143,7 @@ def bdtokstetau_tautoe_same_sign_electrons_oske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakeelectron_from_tau_sske_line( name='Hlt2RD_BdToKPiTauE_TauToE_FakeelectronFromTau_SSKe', - prescale=0.01): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1178,7 +1178,7 @@ def bdtokstetau_tautoe_fakeelectron_from_tau_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakeelectron_from_tau_oske_line( name='Hlt2RD_BdToKPiTauE_TauToE_FakeelectronFromTau_OSKe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1213,7 +1213,7 @@ def bdtokstetau_tautoe_fakeelectron_from_tau_oske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakeelectron_from_b_sske_line( name='Hlt2RD_BdToKPiTauE_TauToE_FakeelectronFromB_SSKe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1254,7 +1254,7 @@ def bdtokstetau_tautoe_fakeelectron_from_b_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakeelectron_from_b_oske_line( name='Hlt2RD_BdToKPiTauE_TauToE_FakeelectronFromB_OSKe', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1294,7 +1294,7 @@ def bdtokstetau_tautoe_fakeelectron_from_b_oske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakekaon_sske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_FakeKaon_SSKe', prescale=0.05): + name='Hlt2RD_BdToKPiTauE_TauToE_FakeKaon_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1334,7 +1334,7 @@ def bdtokstetau_tautoe_fakekaon_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakekaon_oske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_FakeKaon_OSKe', prescale=0.1): + name='Hlt2RD_BdToKPiTauE_TauToE_FakeKaon_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1374,7 +1374,7 @@ def bdtokstetau_tautoe_fakekaon_oske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakepion_sske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_FakePion_SSKe', prescale=0.1): + name='Hlt2RD_BdToKPiTauE_TauToE_FakePion_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1413,7 +1413,7 @@ def bdtokstetau_tautoe_fakepion_sske_line( @register_line_builder(all_lines) def bdtokstetau_tautoe_fakepion_oske_line( - name='Hlt2RD_BdToKPiTauE_TauToE_FakePion_OSKe', prescale=0.1): + name='Hlt2RD_BdToKPiTauE_TauToE_FakePion_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1510,7 +1510,7 @@ def butoketau_tautoe_sske_line(name='Hlt2RD_BuToKTauE_TauToE_SSKe', @register_line_builder(all_lines) def butoketau_tautoe_same_sign_electrons_oske_line( - name='Hlt2RD_BuToKTauE_TauToE_SSe_OSKe', prescale=0.2): + name='Hlt2RD_BuToKTauE_TauToE_SSe_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1543,7 +1543,7 @@ def butoketau_tautoe_same_sign_electrons_oske_line( @register_line_builder(all_lines) def butoketau_tautoe_same_sign_electrons_sske_line( - name='Hlt2RD_BuToKTauE_TauToE_SSe_SSKe', prescale=0.1): + name='Hlt2RD_BuToKTauE_TauToE_SSe_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1577,7 +1577,7 @@ def butoketau_tautoe_same_sign_electrons_sske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakeelectron_from_tau_oske_line( name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromTau_OSKe', - prescale=0.01): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1612,7 +1612,7 @@ def butoketau_tautoe_fakeelectron_from_tau_oske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakeelectron_from_tau_sske_line( name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromTau_SSKe', - prescale=0.003): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1646,7 +1646,8 @@ def butoketau_tautoe_fakeelectron_from_tau_sske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakeelectron_from_b_oske_line( - name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromB_OSKe', prescale=0.005): + name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromB_OSKe', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1684,7 +1685,8 @@ def butoketau_tautoe_fakeelectron_from_b_oske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakeelectron_from_b_sske_line( - name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromB_SSKe', prescale=0.01): + name='Hlt2RD_BuToKTauE_TauToE_FakeelectronFromB_SSKe', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1722,7 +1724,7 @@ def butoketau_tautoe_fakeelectron_from_b_sske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakekaon_oske_line( - name='Hlt2RD_BuToKTauE_TauToE_FakeKaon_OSKe', prescale=0.01): + name='Hlt2RD_BuToKTauE_TauToE_FakeKaon_OSKe', prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) @@ -1760,7 +1762,7 @@ def butoketau_tautoe_fakekaon_oske_line( @register_line_builder(all_lines) def butoketau_tautoe_fakekaon_sske_line( - name='Hlt2RD_BuToKTauE_TauToE_FakeKaon_SSKe', prescale=0.05): + name='Hlt2RD_BuToKTauE_TauToE_FakeKaon_SSKe', prescale=0.0001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_exclusive_hlt2.py index 18cca6f8a2288abfd2b1eaf7f18595ebd78bbd92..bc5f0f3bf2822d05484ee1a26e592bbdc09c2675 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_exclusive_hlt2.py @@ -217,7 +217,7 @@ def bstophimutau_tautomu_line(name='Hlt2RD_BsToKKTauMu_TauToMu', @register_line_builder(all_lines) def bstophimutau_tautomu_same_sign_kaons_sskmu_line( name='Hlt2RD_BsToKKTauMu_TauToMu_SSK_SSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -257,7 +257,7 @@ def bstophimutau_tautomu_same_sign_kaons_sskmu_line( @register_line_builder(all_lines) def bstophimutau_tautomu_same_sign_kaons_oskmu_line( name='Hlt2RD_BsToKKTauMu_TauToMu_SSK_OSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -296,7 +296,7 @@ def bstophimutau_tautomu_same_sign_kaons_oskmu_line( @register_line_builder(all_lines) def bstophimutau_tautomu_same_sign_muons_line( - name='Hlt2RD_BsToKKTauMu_TauToMu_SSMu', prescale=0.75, + name='Hlt2RD_BsToKKTauMu_TauToMu_SSMu', prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -332,7 +332,7 @@ def bstophimutau_tautomu_same_sign_muons_line( @register_line_builder(all_lines) def bstophimutau_tautomu_fakemuon_from_tau_line( name='Hlt2RD_BsToKKTauMu_TauToMu_FakeMuFromTau', - prescale=0.015, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -366,7 +366,7 @@ def bstophimutau_tautomu_fakemuon_from_tau_line( @register_line_builder(all_lines) def bstophimutau_tautomu_fakemuon_from_b_line( name='Hlt2RD_BsToKKTauMu_TauToMu_FakeMuFromB', - prescale=0.008, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -405,7 +405,7 @@ def bstophimutau_tautomu_fakemuon_from_b_line( @register_line_builder(all_lines) def bstophimutau_tautomu_fakekaon_line(name='Hlt2RD_BsToKKTauMu_TauToMu_FakeK', - prescale=0.3, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -510,7 +510,7 @@ def lbtopkmutau_tautomu_ospmu_line(name='Hlt2RD_LbToPKTauMu_TauToMu_OSPMu', @register_line_builder(all_lines) def lbtopkmutau_tautomu_same_sign_pk_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_SSPK_SSPMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -552,7 +552,7 @@ def lbtopkmutau_tautomu_same_sign_pk_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_same_sign_pk_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_SSPK_OSPMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -594,7 +594,7 @@ def lbtopkmutau_tautomu_same_sign_pk_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_same_sign_muons_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_SSMu_SSPMu', - prescale=0.75, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -631,7 +631,7 @@ def lbtopkmutau_tautomu_same_sign_muons_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_same_sign_muons_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_SSMu_OSPMu', - prescale=0.4, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -668,7 +668,7 @@ def lbtopkmutau_tautomu_same_sign_muons_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakemuon_from_tau_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeMuFromTau_SSPMu', - prescale=0.015, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -705,7 +705,7 @@ def lbtopkmutau_tautomu_fakemuon_from_tau_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakemuon_from_tau_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeMuFromTau_OSPMu', - prescale=0.015, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -742,7 +742,7 @@ def lbtopkmutau_tautomu_fakemuon_from_tau_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakemuon_from_b_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeMuFromB_SSPMu', - prescale=0.015, + prescale=0.00001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -785,7 +785,7 @@ def lbtopkmutau_tautomu_fakemuon_from_b_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakemuon_from_b_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeMuFromB_OSPMu', - prescale=0.005, + prescale=0.00001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -828,7 +828,7 @@ def lbtopkmutau_tautomu_fakemuon_from_b_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakeproton_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeP_SSPMu', - prescale=0.3, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( @@ -871,7 +871,7 @@ def lbtopkmutau_tautomu_fakeproton_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakeproton_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeP_OSPMu', - prescale=0.3, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( @@ -914,7 +914,7 @@ def lbtopkmutau_tautomu_fakeproton_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakekaon_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeK_SSPMu', - prescale=0.15, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -956,7 +956,7 @@ def lbtopkmutau_tautomu_fakekaon_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautomu_fakekaon_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToMu_FakeK_OSPMu', - prescale=0.3, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -1062,7 +1062,7 @@ def bdtokstmutau_tautomu_oskmu_line(name='Hlt2RD_BdToKPiTauMu_TauToMu_OSKMu', @register_line_builder(all_lines) def bdtokstmutau_tautomu_same_sign_kpi_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_SSKPi_SSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1104,7 +1104,7 @@ def bdtokstmutau_tautomu_same_sign_kpi_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_same_sign_kpi_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_SSKPi_OSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1146,7 +1146,7 @@ def bdtokstmutau_tautomu_same_sign_kpi_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_same_sign_muons_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_SSMu_SSKMu', - prescale=0.5, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1183,7 +1183,7 @@ def bdtokstmutau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_same_sign_muons_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_SSMu_OSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1220,7 +1220,7 @@ def bdtokstmutau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakemuon_from_tau_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeMuFromTau_SSKMu', - prescale=0.005, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1257,7 +1257,7 @@ def bdtokstmutau_tautomu_fakemuon_from_tau_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakemuon_from_tau_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeMuFromTau_OSKMu', - prescale=0.008, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1294,7 +1294,7 @@ def bdtokstmutau_tautomu_fakemuon_from_tau_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakemuon_from_b_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeMuFromB_SSKMu', - prescale=0.008, + prescale=0.00001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1337,7 +1337,7 @@ def bdtokstmutau_tautomu_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakemuon_from_b_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeMuFromB_OSKMu', - prescale=0.01, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1380,7 +1380,7 @@ def bdtokstmutau_tautomu_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakekaon_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeK_SSKMu', - prescale=0.05, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -1423,7 +1423,7 @@ def bdtokstmutau_tautomu_fakekaon_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakekaon_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakeK_OSKMu', - prescale=0.15, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -1466,7 +1466,7 @@ def bdtokstmutau_tautomu_fakekaon_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakepion_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakePi_SSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1508,7 +1508,7 @@ def bdtokstmutau_tautomu_fakepion_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautomu_fakepion_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToMu_FakePi_OSKMu', - prescale=0.75, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -1610,7 +1610,7 @@ def butokmutau_tautomu_sskmu_line(name='Hlt2RD_BuToKTauMu_TauToMu_SSKMu', @register_line_builder(all_lines) def butokmutau_tautomu_same_sign_muons_oskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_SSMu_OSKMu', - prescale=0.2, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1645,7 +1645,7 @@ def butokmutau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_same_sign_muons_sskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_SSMu_SSKMu', - prescale=0.2, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1680,7 +1680,7 @@ def butokmutau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakemuon_from_tau_oskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeMuFromTau_OSKMu', - prescale=0.005, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1716,7 +1716,7 @@ def butokmutau_tautomu_fakemuon_from_tau_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakemuon_from_tau_sskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeMuFromTau_SSKMu', - prescale=0.005, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1752,7 +1752,7 @@ def butokmutau_tautomu_fakemuon_from_tau_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakemuon_from_b_oskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeMuFromB_OSKMu', - prescale=0.003, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1793,7 +1793,7 @@ def butokmutau_tautomu_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakemuon_from_b_sskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeMuFromB_SSKMu', - prescale=0.003, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1834,7 +1834,7 @@ def butokmutau_tautomu_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakekaon_oskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeK_OSKMu', - prescale=0.05, + prescale=0.001, persistreco=False): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -1874,7 +1874,7 @@ def butokmutau_tautomu_fakekaon_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautomu_fakekaon_sskmu_line( name='Hlt2RD_BuToKTauMu_TauToMu_FakeK_SSKMu', - prescale=0.1, + prescale=0.001, persistreco=False): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_tau_to_e_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_tau_to_e_exclusive_hlt2.py index 00a6046a80c0fbeb3c4b949bb35bf17a354bddba..7b581761f9b58e7931c0083c7feed7c09d8dbf71 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_tau_to_e_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btosmutau_tau_to_e_exclusive_hlt2.py @@ -205,7 +205,7 @@ def bstophimutau_tautoe_line(name='Hlt2RD_BsToKKTauMu_TauToE', prescale=1): @register_line_builder(all_lines) def bstophimutau_tautoe_same_sign_kaons_sskmu_line( - name='Hlt2RD_BsToKKTauMu_TauToE_SSK_SSKmu', prescale=0.8): + name='Hlt2RD_BsToKKTauMu_TauToE_SSK_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -242,7 +242,7 @@ def bstophimutau_tautoe_same_sign_kaons_sskmu_line( @register_line_builder(all_lines) def bstophimutau_tautoe_same_sign_kaons_oskmu_line( - name='Hlt2RD_BsToKKTauMu_TauToE_SSK_OSKmu', prescale=0.4): + name='Hlt2RD_BsToKKTauMu_TauToE_SSK_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -279,7 +279,7 @@ def bstophimutau_tautoe_same_sign_kaons_oskmu_line( @register_line_builder(all_lines) def bstophimutau_tautoe_same_sign_leptons_line( - name='Hlt2RD_BsToKKTauMu_TauToE_SSl', prescale=0.75): + name='Hlt2RD_BsToKKTauMu_TauToE_SSl', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -312,7 +312,7 @@ def bstophimutau_tautoe_same_sign_leptons_line( @register_line_builder(all_lines) def bstophimutau_tautoe_fakeelectron_from_tau_line( - name='Hlt2RD_BsToKKTauMu_TauToE_FakeMuonFromTau', prescale=0.03): + name='Hlt2RD_BsToKKTauMu_TauToE_FakeMuonFromTau', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -343,7 +343,7 @@ def bstophimutau_tautoe_fakeelectron_from_tau_line( @register_line_builder(all_lines) def bstophimutau_tautoe_fakemuon_from_b_line( - name='Hlt2RD_BsToKKTauMu_TauToE_FakeMuonFromB', prescale=0.02): + name='Hlt2RD_BsToKKTauMu_TauToE_FakeMuonFromB', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -380,7 +380,7 @@ def bstophimutau_tautoe_fakemuon_from_b_line( @register_line_builder(all_lines) def bstophimutau_tautoe_fakekaon_line( - name='Hlt2RD_BsToKKTauMu_TauToE_FakeKaon', prescale=0.05): + name='Hlt2RD_BsToKKTauMu_TauToE_FakeKaon', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -484,7 +484,7 @@ def lbtopkmutau_tautoe_ospmu_line(name='Hlt2RD_LbToPKTauMu_TauToE_OSpmu', @register_line_builder(all_lines) def lbtopkmutau_tautoe_same_sign_pk_sspmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_SSpK_SSpmu', prescale=0.2): + name='Hlt2RD_LbToPKTauMu_TauToE_SSpK_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -523,7 +523,7 @@ def lbtopkmutau_tautoe_same_sign_pk_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_same_sign_pk_ospmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_SSpK_OSpmu', prescale=0.1): + name='Hlt2RD_LbToPKTauMu_TauToE_SSpK_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -562,7 +562,7 @@ def lbtopkmutau_tautoe_same_sign_pk_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_same_sign_leptons_sspmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_SSl_SSpmu', prescale=0.2): + name='Hlt2RD_LbToPKTauMu_TauToE_SSl_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -596,7 +596,7 @@ def lbtopkmutau_tautoe_same_sign_leptons_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_same_sign_leptons_ospmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_SSl_OSpmu', prescale=0.2): + name='Hlt2RD_LbToPKTauMu_TauToE_SSl_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -631,7 +631,7 @@ def lbtopkmutau_tautoe_same_sign_leptons_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakeelectron_from_tau_sspmu_line( name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromTau_SSpmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -666,7 +666,7 @@ def lbtopkmutau_tautoe_fakeelectron_from_tau_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakeelectron_from_tau_ospmu_line( name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromTau_OSpmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -700,7 +700,7 @@ def lbtopkmutau_tautoe_fakeelectron_from_tau_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakemuon_from_b_sspmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromB_SSpmu', prescale=0.015): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromB_SSpmu', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -740,7 +740,7 @@ def lbtopkmutau_tautoe_fakemuon_from_b_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakemuon_from_b_ospmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromB_OSpmu', prescale=0.015): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeMuonFromB_OSpmu', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -780,7 +780,7 @@ def lbtopkmutau_tautoe_fakemuon_from_b_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakeproton_sspmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeProton_SSpmu', prescale=0.08): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeProton_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -820,7 +820,7 @@ def lbtopkmutau_tautoe_fakeproton_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakeproton_ospmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeProton_OSpmu', prescale=0.05): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeProton_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -860,7 +860,7 @@ def lbtopkmutau_tautoe_fakeproton_ospmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakekaon_sspmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeKaon_SSpmu', prescale=0.15): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeKaon_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -899,7 +899,7 @@ def lbtopkmutau_tautoe_fakekaon_sspmu_line( @register_line_builder(all_lines) def lbtopkmutau_tautoe_fakekaon_ospmu_line( - name='Hlt2RD_LbToPKTauMu_TauToE_FakeKaon_OSpmu', prescale=0.01): + name='Hlt2RD_LbToPKTauMu_TauToE_FakeKaon_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -1006,7 +1006,7 @@ def bdtokstmutau_tautoe_oskmu_line(name='Hlt2RD_BdToKPiTauMu_TauToE_OSKmu', @register_line_builder(all_lines) def bdtokstmutau_tautoe_same_sign_kpi_sskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_SSKpi_SSKmu', prescale=0.5): + name='Hlt2RD_BdToKPiTauMu_TauToE_SSKpi_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1046,7 +1046,7 @@ def bdtokstmutau_tautoe_same_sign_kpi_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_same_sign_kpi_oskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_SSKpi_OSKmu', prescale=0.5): + name='Hlt2RD_BdToKPiTauMu_TauToE_SSKpi_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1086,7 +1086,7 @@ def bdtokstmutau_tautoe_same_sign_kpi_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_same_sign_leptons_sskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_SSl_SSKmu', prescale=0.1): + name='Hlt2RD_BdToKPiTauMu_TauToE_SSl_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1121,7 +1121,7 @@ def bdtokstmutau_tautoe_same_sign_leptons_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_same_sign_leptons_oskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_SSl_OSKmu', prescale=0.3): + name='Hlt2RD_BdToKPiTauMu_TauToE_SSl_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1157,7 +1157,7 @@ def bdtokstmutau_tautoe_same_sign_leptons_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakeelectron_from_tau_sskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromTau_SSKmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1193,7 +1193,7 @@ def bdtokstmutau_tautoe_fakeelectron_from_tau_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakeelectron_from_tau_oskmu_line( name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromTau_OSKmu', - prescale=0.015): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1228,7 +1228,8 @@ def bdtokstmutau_tautoe_fakeelectron_from_tau_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakemuon_from_b_sskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromB_SSKmu', prescale=0.01): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromB_SSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1269,7 +1270,8 @@ def bdtokstmutau_tautoe_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakemuon_from_b_oskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromB_OSKmu', prescale=0.008): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakeMuonFromB_OSKmu', + prescale=0.00001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1310,7 +1312,7 @@ def bdtokstmutau_tautoe_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakekaon_sskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakeKaon_SSKmu', prescale=0.1): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakeKaon_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1351,7 +1353,7 @@ def bdtokstmutau_tautoe_fakekaon_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakekaon_oskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakeKaon_OSKmu', prescale=0.1): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakeKaon_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1392,7 +1394,7 @@ def bdtokstmutau_tautoe_fakekaon_oskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakepion_sskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakePion_SSKmu', prescale=0.1): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakePion_SSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1432,7 +1434,7 @@ def bdtokstmutau_tautoe_fakepion_sskmu_line( @register_line_builder(all_lines) def bdtokstmutau_tautoe_fakepion_oskmu_line( - name='Hlt2RD_BdToKPiTauMu_TauToE_FakePion_OSKmu', prescale=0.15): + name='Hlt2RD_BdToKPiTauMu_TauToE_FakePion_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1500,7 +1502,7 @@ def butokmutau_tautoe_oskmu_line(name='Hlt2RD_BuToKTauMu_TauToE_OSKmu', @register_line_builder(all_lines) def butokmutau_tautoe_sskmu_line(name='Hlt2RD_BuToKTauMu_TauToE_SSKmu', - prescale=0.3): + prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1528,7 +1530,7 @@ def butokmutau_tautoe_sskmu_line(name='Hlt2RD_BuToKTauMu_TauToE_SSKmu', @register_line_builder(all_lines) def butokmutau_tautoe_same_sign_leptons_oskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_SSl_OSKmu', prescale=0.05): + name='Hlt2RD_BuToKTauMu_TauToE_SSl_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1560,7 +1562,7 @@ def butokmutau_tautoe_same_sign_leptons_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_same_sign_leptons_sskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_SSl_SSKmu', prescale=0.1): + name='Hlt2RD_BuToKTauMu_TauToE_SSl_SSKmu', prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1592,7 +1594,7 @@ def butokmutau_tautoe_same_sign_leptons_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakeelectron_from_tau_oskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromTau_OSKmu', prescale=0.005): + name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromTau_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons_for_bu) @@ -1625,7 +1627,8 @@ def butokmutau_tautoe_fakeelectron_from_tau_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakeelectron_from_tau_sskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromTau_SSKmu', prescale=0.005): + name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromTau_SSKmu', + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons_for_bu) @@ -1658,7 +1661,7 @@ def butokmutau_tautoe_fakeelectron_from_tau_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakemuon_from_b_oskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromB_OSKmu', prescale=0.005): + name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromB_OSKmu', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1696,7 +1699,7 @@ def butokmutau_tautoe_fakemuon_from_b_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakemuon_from_b_sskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromB_SSKmu', prescale=0.005): + name='Hlt2RD_BuToKTauMu_TauToE_FakeMuonFromB_SSKmu', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons_from_tau = rdbuilder_thor.make_rd_detached_electrons( @@ -1734,7 +1737,7 @@ def butokmutau_tautoe_fakemuon_from_b_sskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakekaon_oskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeKaon_OSKmu', prescale=0.02): + name='Hlt2RD_BuToKTauMu_TauToE_FakeKaon_OSKmu', prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) @@ -1771,7 +1774,7 @@ def butokmutau_tautoe_fakekaon_oskmu_line( @register_line_builder(all_lines) def butokmutau_tautoe_fakekaon_sskmu_line( - name='Hlt2RD_BuToKTauMu_TauToE_FakeKaon_SSKmu', prescale=0.03): + name='Hlt2RD_BuToKTauMu_TauToE_FakeKaon_SSKmu', prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_ee_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_ee_exclusive_hlt2.py index 6e683c7f9b9d71738221c5642d4ca1e2e25e20d2..63e21e0074ce6d2952696e16c042f65e17034231 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_ee_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_ee_exclusive_hlt2.py @@ -186,7 +186,7 @@ def bstophitautau_tautoe_line(name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE', @register_line_builder(all_lines) def bstophitautau_tautoe_same_sign_kaons_line( - name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_SSK', prescale=0.75): + name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_SSK', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -223,7 +223,7 @@ def bstophitautau_tautoe_same_sign_kaons_line( @register_line_builder(all_lines) def bstophitautau_tautoe_same_sign_electrons_line( - name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_SSe', prescale=0.5): + name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_SSe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -259,7 +259,7 @@ def bstophitautau_tautoe_same_sign_electrons_line( @register_line_builder(all_lines) def bstophitautau_tautoe_fakeelectron_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_FakeElectron', - prescale=0.04): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -295,7 +295,7 @@ def bstophitautau_tautoe_fakeelectron_line( @register_line_builder(all_lines) def bstophitautau_tautoe_fakekaon_line( - name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_FakeKaon', prescale=0.15): + name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToE_FakeKaon', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -359,7 +359,7 @@ def lbtopktautau_tautoe_line(name='Hlt2RD_LbToPKTauTau_TauToE', prescale=1): @register_line_builder(all_lines) def lbtopktautau_tautoe_same_sign_pK_line( - name='Hlt2RD_LbToPKTauTau_TauToE_SSpK', prescale=0.2): + name='Hlt2RD_LbToPKTauTau_TauToE_SSpK', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -396,7 +396,7 @@ def lbtopktautau_tautoe_same_sign_pK_line( @register_line_builder(all_lines) def lbtopktautau_tautoe_same_sign_electrons_sspe_line( - name='Hlt2RD_LbToPKTauTau_TauToE_SSe_SSpe', prescale=1): + name='Hlt2RD_LbToPKTauTau_TauToE_SSe_SSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -431,7 +431,7 @@ def lbtopktautau_tautoe_same_sign_electrons_sspe_line( @register_line_builder(all_lines) def lbtopktautau_tautoe_same_sign_electrons_ospe_line( - name='Hlt2RD_LbToPKTauTau_TauToE_SSe_OSpe', prescale=1): + name='Hlt2RD_LbToPKTauTau_TauToE_SSe_OSpe', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -466,7 +466,7 @@ def lbtopktautau_tautoe_same_sign_electrons_ospe_line( @register_line_builder(all_lines) def lbtopktautau_tautoe_fakeelectron_line( - name='Hlt2RD_LbToPKTauTau_TauToE_FakeElectron', prescale=0.05): + name='Hlt2RD_LbToPKTauTau_TauToE_FakeElectron', prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -502,7 +502,7 @@ def lbtopktautau_tautoe_fakeelectron_line( @register_line_builder(all_lines) def lbtopktautau_tautoe_fakeproton_line( - name='Hlt2RD_LbToPKTauTau_TauToE_FakeProton', prescale=0.1): + name='Hlt2RD_LbToPKTauTau_TauToE_FakeProton', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -539,7 +539,7 @@ def lbtopktautau_tautoe_fakeproton_line( @register_line_builder(all_lines) def lbtopktautau_tautoe_fakekaon_line( - name='Hlt2RD_LbToPKTauTau_TauToE_FakeKaon', prescale=0.1): + name='Hlt2RD_LbToPKTauTau_TauToE_FakeKaon', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -638,7 +638,7 @@ def bdtoksttautau_tautoe_same_sign_Kpi_line( @register_line_builder(all_lines) def bdtoksttautau_tautoe_same_sign_electrons_sske_line( - name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_SSe_SSKe', prescale=1): + name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_SSe_SSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -674,7 +674,7 @@ def bdtoksttautau_tautoe_same_sign_electrons_sske_line( @register_line_builder(all_lines) def bdtoksttautau_tautoe_same_sign_electrons_oske_line( - name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_SSe_OSKe', prescale=0.1): + name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_SSe_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -711,7 +711,7 @@ def bdtoksttautau_tautoe_same_sign_electrons_oske_line( @register_line_builder(all_lines) def bdtoksttautau_tautoe_fakeelectron_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_FakeElectron', - prescale=0.01): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -748,7 +748,7 @@ def bdtoksttautau_tautoe_fakeelectron_line( @register_line_builder(all_lines) def bdtoksttautau_tautoe_fakekaon_line( - name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_FakeKaon', prescale=0.2): + name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_FakeKaon', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -786,7 +786,7 @@ def bdtoksttautau_tautoe_fakekaon_line( @register_line_builder(all_lines) def bdtoksttautau_tautoe_fakepion_line( - name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_FakePion', prescale=0.5): + name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToE_FakePion', prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -937,7 +937,7 @@ def bstokstksttautau_tautoe_same_sign_electrons_line( @register_line_builder(all_lines) def bstokstksttautau_tautoe_fakeelectron_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToE_FakeElectron', - prescale=0.5): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1000,7 +1000,7 @@ def butoktautau_tautoe_line(name='Hlt2RD_BuToKTauTau_TauToE', prescale=0.15): @register_line_builder(all_lines) def butoktautau_tautoe_same_sign_electrons_oske_line( - name='Hlt2RD_BuToKTauTau_TauToE_SSe_OSKe', prescale=0.05): + name='Hlt2RD_BuToKTauTau_TauToE_SSe_OSKe', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -1031,7 +1031,7 @@ def butoktautau_tautoe_same_sign_electrons_oske_line( @register_line_builder(all_lines) def butoktautau_tautoe_same_sign_electrons_sske_line( - name='Hlt2RD_BuToKTauTau_TauToE_SSe_SSKe', prescale=0.1): + name='Hlt2RD_BuToKTauTau_TauToE_SSe_SSKe', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -1062,7 +1062,7 @@ def butoktautau_tautoe_same_sign_electrons_sske_line( @register_line_builder(all_lines) def butoktautau_tautoe_fakeelectron_line( - name='Hlt2RD_BuToKTauTau_TauToE_FakeElectron', prescale=0.01): + name='Hlt2RD_BuToKTauTau_TauToE_FakeElectron', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -1094,7 +1094,7 @@ def butoktautau_tautoe_fakeelectron_line( @register_line_builder(all_lines) def butoktautau_tautoe_fakekaon_line(name='Hlt2RD_BuToKTauTau_TauToE_FakeKaon', - prescale=0.03): + prescale=0.0001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_exclusive_hlt2.py index 2460c3bcc3fff250d0ffb58d9445a791f1a58a37..5b2194191f6154a3bee3aa1886ea3640bc54a0bd 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_exclusive_hlt2.py @@ -179,7 +179,7 @@ def bstophitautau_tautomu_line(name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu', @register_line_builder(all_lines) def bstophitautau_tautomu_same_sign_kaons_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_SSK', - prescale=1, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -216,7 +216,7 @@ def bstophitautau_tautomu_same_sign_kaons_line( @register_line_builder(all_lines) def bstophitautau_tautomu_same_sign_muons_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_SSMu', - prescale=0.1, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -253,7 +253,7 @@ def bstophitautau_tautomu_same_sign_muons_line( @register_line_builder(all_lines) def bstophitautau_tautomu_fakemuon_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_FakeMu', - prescale=0.02, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -285,7 +285,7 @@ def bstophitautau_tautomu_fakemuon_line( @register_line_builder(all_lines) def bstophitautau_tautomu_fakekaon_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_FakeK', - prescale=0.2, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -379,7 +379,7 @@ def lbtopktautau_tautomu_same_sign_pK_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_same_sign_muons_sspmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_SSMu_SSPMu', - prescale=0.1, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -417,7 +417,7 @@ def lbtopktautau_tautomu_same_sign_muons_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_same_sign_muons_ospmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_SSMu_OSPMu', - prescale=0.1, + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -455,7 +455,7 @@ def lbtopktautau_tautomu_same_sign_muons_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_fakemuon_line( name='Hlt2RD_LbToPKTauTau_TauToMu_FakeMu', - prescale=0.02, + prescale=0.0001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -487,7 +487,8 @@ def lbtopktautau_tautomu_fakemuon_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_fakeproton_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_FakeP', prescale=0.1, + name='Hlt2RD_LbToPKTauTau_TauToMu_FakeP', + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( @@ -518,7 +519,8 @@ def lbtopktautau_tautomu_fakeproton_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_fakekaon_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_FakeK', prescale=0.2, + name='Hlt2RD_LbToPKTauTau_TauToMu_FakeK', + prescale=0.001, persistreco=False): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) @@ -615,7 +617,7 @@ def bdtoksttautau_tautomu_same_sign_Kpi_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_same_sign_muons_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_SSMu_SSKMu', - prescale=0.5, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -653,7 +655,7 @@ def bdtoksttautau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_same_sign_muons_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_SSMu_OSKMu', - prescale=0.5, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -691,7 +693,7 @@ def bdtoksttautau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_fakemuon_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_FakeMu', - prescale=0.008, + prescale=0.00001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -724,7 +726,7 @@ def bdtoksttautau_tautomu_fakemuon_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_fakekaon_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_FakeK', - prescale=0.1, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -756,7 +758,7 @@ def bdtoksttautau_tautomu_fakekaon_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_fakepion_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_FakePi', - prescale=1, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) @@ -821,7 +823,7 @@ def bstokstksttautau_tautomu_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_same_sign_kstar_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_SSKst', - prescale=1, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -860,7 +862,7 @@ def bstokstksttautau_tautomu_same_sign_kstar_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_same_sign_muons_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_SSMu', - prescale=1, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -904,7 +906,7 @@ def bstokstksttautau_tautomu_same_sign_muons_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_fakemuon_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_FakeMu', - prescale=0.1, + prescale=0.01, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -968,7 +970,7 @@ def butoktautau_tautomu_line(name='Hlt2RD_BuToKTauTau_TauToMu', @register_line_builder(all_lines) def butoktautau_tautomu_same_sign_muons_oskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_SSMu_OSKMu', - prescale=0.3, + prescale=0.001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1001,7 +1003,7 @@ def butoktautau_tautomu_same_sign_muons_oskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_same_sign_muons_sskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_SSMu_SSKMu', - prescale=0.3, + prescale=0.0001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1033,7 +1035,7 @@ def butoktautau_tautomu_same_sign_muons_sskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_fakemuon_line(name='Hlt2RD_BuToKTauTau_TauToMu_FakeMu', - prescale=0.01, + prescale=0.00001, persistreco=False): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) @@ -1060,7 +1062,7 @@ def butoktautau_tautomu_fakemuon_line(name='Hlt2RD_BuToKTauTau_TauToMu_FakeMu', @register_line_builder(all_lines) def butoktautau_tautomu_fakekaon_line(name='Hlt2RD_BuToKTauTau_TauToMu_FakeK', - prescale=0.1, + prescale=0.001, persistreco=False): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_mue_exclusive_hlt2.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_mue_exclusive_hlt2.py index 0359fad30aa287c149aeb2e19a0367328c1380bc..d4fd57c528972a70addfe3119ebb782a4faac8b0 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_mue_exclusive_hlt2.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/btostautau_mue_exclusive_hlt2.py @@ -161,7 +161,7 @@ kwargs_electrons_reverse_pid = { @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_line( - name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE', prescale=0.1): + name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE', prescale=1): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -192,7 +192,7 @@ def bstophitautau_tautomu_tautoe_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_same_sign_kaons_sskmu_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_SSK_SSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -229,7 +229,7 @@ def bstophitautau_tautomu_tautoe_same_sign_kaons_sskmu_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_same_sign_kaons_oskmu_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_SSK_OSKmu', - prescale=0.5): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -267,7 +267,7 @@ def bstophitautau_tautomu_tautoe_same_sign_kaons_oskmu_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_same_sign_mues_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_SSemu', - prescale=0.5): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -304,7 +304,7 @@ def bstophitautau_tautomu_tautoe_same_sign_mues_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_fakemuon_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_FakeMuon', - prescale=0.004): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_muons = rdbuilder_thor.make_rd_detached_muons( @@ -341,7 +341,7 @@ def bstophitautau_tautomu_tautoe_fakemuon_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_fakeelectron_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_FakeElectron', - prescale=0.04): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -378,7 +378,7 @@ def bstophitautau_tautomu_tautoe_fakeelectron_line( @register_line_builder(all_lines) def bstophitautau_tautomu_tautoe_fakekaon_line( name='Hlt2RD_BsToPhiTauTau_PhiToKK_TauToMu_TauToE_FakeKaon', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) fake_kaons = rdbuilder_thor.make_rd_detached_kaons( @@ -412,7 +412,7 @@ def bstophitautau_tautomu_tautoe_fakekaon_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_sspmu_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpmu', prescale=0.1): + name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpmu', prescale=1): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -475,7 +475,7 @@ def lbtopktautau_tautomu_tautoe_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_same_sign_pK_sspmu_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpK_SSpmu', prescale=1): + name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpK_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -512,7 +512,7 @@ def lbtopktautau_tautomu_tautoe_same_sign_pK_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_same_sign_pK_ospmu_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpK_OSpmu', prescale=1): + name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSpK_OSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -550,7 +550,7 @@ def lbtopktautau_tautomu_tautoe_same_sign_pK_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_same_sign_emus_sspmu_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSemu_SSpmu', prescale=1): + name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSemu_SSpmu', prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -587,7 +587,8 @@ def lbtopktautau_tautomu_tautoe_same_sign_emus_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_same_sign_emus_ospmu_line( - name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSemu_OSpmu', prescale=0.1): + name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_SSemu_OSpmu', + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -625,7 +626,7 @@ def lbtopktautau_tautomu_tautoe_same_sign_emus_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakemuon_sspmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeMuon_SSpmu', - prescale=0.01): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -663,7 +664,7 @@ def lbtopktautau_tautomu_tautoe_fakemuon_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakemuon_ospmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeMuon_OSpmu', - prescale=0.04): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -702,7 +703,7 @@ def lbtopktautau_tautomu_tautoe_fakemuon_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakeelectron_sspmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeElectron_SSpmu', - prescale=0.02): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -740,7 +741,7 @@ def lbtopktautau_tautomu_tautoe_fakeelectron_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakeelectron_ospmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeElectron_OSpmu', - prescale=0.02): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) @@ -779,7 +780,7 @@ def lbtopktautau_tautomu_tautoe_fakeelectron_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakeproton_sspmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeProton_SSpmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -813,7 +814,7 @@ def lbtopktautau_tautomu_tautoe_fakeproton_sspmu_line( def lbtopktautau_tautomu_tautoe_fakeproton_ospmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeProton_OSpmu', - prescale=0.05): + prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons( **kwargs_protons_reverse_pid) @@ -849,7 +850,7 @@ def lbtopktautau_tautomu_tautoe_fakeproton_ospmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakekaon_sspmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeKaon_SSpmu', - prescale=0.1): + prescale=0.0001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -883,7 +884,7 @@ def lbtopktautau_tautomu_tautoe_fakekaon_sspmu_line( @register_line_builder(all_lines) def lbtopktautau_tautomu_tautoe_fakekaon_ospmu_line( name='Hlt2RD_LbToPKTauTau_TauToMu_TauToE_FakeKaon_OSpmu', - prescale=0.4): + prescale=0.001): pvs = make_pvs() protons = rdbuilder_thor.make_rd_detached_protons(**kwargs_protons) kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_reverse_pid) @@ -918,7 +919,7 @@ def lbtopktautau_tautomu_tautoe_fakekaon_ospmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_SSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -950,7 +951,7 @@ def bdtoksttautau_tautomu_tautoe_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_OSKmu', - prescale=0.2): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -983,7 +984,7 @@ def bdtoksttautau_tautomu_tautoe_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_same_sign_Kpi_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_SSKpi_SSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1021,7 +1022,7 @@ def bdtoksttautau_tautomu_tautoe_same_sign_Kpi_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_same_sign_Kpi_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_SSKpi_OSKmu', - prescale=0.5): + prescale=0.00001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1060,7 +1061,7 @@ def bdtoksttautau_tautomu_tautoe_same_sign_Kpi_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_same_sign_mues_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_SSmue_SSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1098,7 +1099,7 @@ def bdtoksttautau_tautomu_tautoe_same_sign_mues_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_same_sign_mues_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_SSmue_OSKmu', - prescale=0.2): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1136,7 +1137,7 @@ def bdtoksttautau_tautomu_tautoe_same_sign_mues_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakemuon_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeMuon_SSKmu', - prescale=0.02): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1174,7 +1175,7 @@ def bdtoksttautau_tautomu_tautoe_fakemuon_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakemuon_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeMuon_OSKmu', - prescale=0.02): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1213,7 +1214,7 @@ def bdtoksttautau_tautomu_tautoe_fakemuon_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakeelectron_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeElectron_SSKmu', - prescale=0.02): + prescale=0.01): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1251,7 +1252,7 @@ def bdtoksttautau_tautomu_tautoe_fakeelectron_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakeelectron_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeElectron_OSKmu', - prescale=0.02): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1290,7 +1291,7 @@ def bdtoksttautau_tautomu_tautoe_fakeelectron_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakekaon_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeKaon_SSKmu', - prescale=0.4): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1325,7 +1326,7 @@ def bdtoksttautau_tautomu_tautoe_fakekaon_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakekaon_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakeKaon_OSKmu', - prescale=0.05): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_kstar_reverse_pid) @@ -1361,7 +1362,7 @@ def bdtoksttautau_tautomu_tautoe_fakekaon_oskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakepion_sskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakePion_SSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1395,7 +1396,7 @@ def bdtoksttautau_tautomu_tautoe_fakepion_sskmu_line( @register_line_builder(all_lines) def bdtoksttautau_tautomu_tautoe_fakepion_oskmu_line( name='Hlt2RD_BdToKstTauTau_KstToKPi_TauToMu_TauToE_FakePion_OSKmu', - prescale=0.1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_kstar) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions_reverse_pid) @@ -1466,7 +1467,7 @@ def bstokstksttautau_tautomu_tautoe_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_tautoe_same_sign_kstar_sskstmu_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_TauToE_SSKst_SSKstmu', - prescale=1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1508,7 +1509,7 @@ def bstokstksttautau_tautomu_tautoe_same_sign_kstar_sskstmu_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_tautoe_same_sign_kstar_oskstmu_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_TauToE_SSKst_OSKstmu', - prescale=1): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1598,7 +1599,7 @@ def bstokstksttautau_tautomu_tautoe_same_sign_mues_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_tautoe_fakemuon_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_TauToE_FakeMuon', - prescale=0.01): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1641,7 +1642,7 @@ def bstokstksttautau_tautomu_tautoe_fakemuon_line( @register_line_builder(all_lines) def bstokstksttautau_tautomu_tautoe_fakeelectron_line( name='Hlt2RD_BsToKstKstTauTau_KstToKPi_TauToMu_TauToE_FakeElectron', - prescale=0.01): + prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons) pions = rdbuilder_thor.make_rd_detached_pions(**kwargs_pions) @@ -1739,7 +1740,7 @@ def butoktautau_tautomu_tautoe_oskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_same_sign_mues_oskmu_line( - name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_SSmue_OSKmu', prescale=0.05): + name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_SSmue_OSKmu', prescale=0.001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -1771,7 +1772,7 @@ def butoktautau_tautomu_tautoe_same_sign_mues_oskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_same_sign_mues_sskmu_line( - name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_SSmue_SSKmu', prescale=0.5): + name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_SSmue_SSKmu', prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) muons = rdbuilder_thor.make_rd_detached_muons(**kwargs_muons) @@ -1804,7 +1805,7 @@ def butoktautau_tautomu_tautoe_same_sign_mues_sskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakemuon_sskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeMuon_SSKmu', - prescale=0.01): + prescale=0.0001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -1837,7 +1838,7 @@ def butoktautau_tautomu_tautoe_fakemuon_sskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakemuon_oskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeMuon_OSKmu', - prescale=0.01): + prescale=0.00001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) electrons = rdbuilder_thor.make_rd_detached_electrons(**kwargs_electrons) @@ -1871,7 +1872,7 @@ def butoktautau_tautomu_tautoe_fakemuon_oskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakeelectron_sskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeElectron_SSKmu', - prescale=0.005): + prescale=0.00001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) fake_electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1904,7 +1905,7 @@ def butoktautau_tautomu_tautoe_fakeelectron_sskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakeelectron_oskmu_line( name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeElectron_OSKmu', - prescale=0.01): + prescale=0.00001): pvs = make_pvs() kaons = rdbuilder_thor.make_rd_detached_kaons(**kwargs_kaons_for_bu) fake_electrons = rdbuilder_thor.make_rd_detached_electrons( @@ -1937,7 +1938,8 @@ def butoktautau_tautomu_tautoe_fakeelectron_oskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakekaon_sskmu_line( - name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeKaon_SSKmu', prescale=0.1): + name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeKaon_SSKmu', + prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) @@ -1968,7 +1970,8 @@ def butoktautau_tautomu_tautoe_fakekaon_sskmu_line( @register_line_builder(all_lines) def butoktautau_tautomu_tautoe_fakekaon_oskmu_line( - name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeKaon_OSKmu', prescale=0.1): + name='Hlt2RD_BuToKTauTau_TauToMu_TauToE_FakeKaon_OSKmu', + prescale=0.001): pvs = make_pvs() fake_kaons = rdbuilder_thor.make_rd_detached_kaons( **kwargs_kaons_for_bu_reverse_pid) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/RpK_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/RpK_builders.py index ea010930d1be8deb14bce141941a939a8dc3aa66..23927867e7256dbfef152198f684e28d1d9c38b6 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/RpK_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/RpK_builders.py @@ -65,9 +65,11 @@ def make_dihadron_from_pK(name="HLT2RD_DiHadronFromPK_Builder_{hash}", descriptor = "[Lambda(1520)0 -> p+ K-]cc" protons = make_rd_has_rich_detached_protons( - mipchi2dvprimary_min=9, pt_min=300 * MeV) + mipchi2dvprimary_min=16, + pt_min=300 * MeV, + pid=F.require_all(F.PID_P > 4., F.PID_P - F.PID_K > 2.)) kaons = make_rd_has_rich_detached_kaons( - mipchi2dvprimary_min=9, pt_min=300 * MeV) + mipchi2dvprimary_min=16, pt_min=300 * MeV, pid=(F.PID_K > 2.)) combination_code = F.require_all(F.PT > min_pt, F.MASS < max_mass, F.MAXSDOCACHI2CUT(max_docachi2)) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xgamma_exclusive_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xgamma_exclusive_builders.py index bd86d38d82a2daa2f9e526d313f1d0041552c85d..49f0e504b120a254ce27bd3e0e323c5eedbf724d 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xgamma_exclusive_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xgamma_exclusive_builders.py @@ -13,6 +13,12 @@ exclusive B -> hh gamma builder author: Izaac Sanderswood date: 25.05.22 + +### +Exclusive builders for Bc +authors: Debashis Sahoo, Biplab Dey +date: 15.05.2024 + """ from GaudiKernel.SystemOfUnits import MeV import Functors as F @@ -112,3 +118,120 @@ def make_rd_detached_pK( DecayDescriptor=descriptor, CombinationCut=combination_code, CompositeCut=vertex_code) + + +@configurable +def make_PV(hadrons, + kshort, + decay_descriptor, + name="rd_radexcl_PV_{hash}", + vtxchi2dof_max=16.0, + m_min=1000 * MeV, + m_max=2000 * MeV, + min_pt=1000 * MeV, + ipchi2_min=9., + fdchi2_min=0., + dira_min=0.9): + combination_code = F.require_all( + in_range(m_min, F.MASS, m_max), F.PT > min_pt) + pvs = make_pvs() + vertex_code = F.require_all(F.CHI2DOF < vtxchi2dof_max, + F.BPVIPCHI2(pvs) > ipchi2_min, + F.BPVFDCHI2(pvs) > fdchi2_min, + F.BPVDIRA(pvs) > dira_min) + + return ParticleCombiner( + name=name, + Inputs=[hadrons, kshort], + DecayDescriptor=decay_descriptor, + CombinationCut=combination_code, + CompositeCut=vertex_code) + + +def make_dzeros_for_rd_bc(particle1, particle2): + descriptor = "[D0 -> K- pi+]cc" + name = 'rd_D0ToKmPip_{hash}' + return ParticleCombiner( + [particle1, particle2], + DecayDescriptor=descriptor, + name=name, + CombinationCut=F.require_all( + in_range(1700 * MeV, F.MASS, 2000 * MeV), + F.MAX(F.PT) > 1200 * MeV, + F.PT > 1 * GeV, + ), + CompositeCut=F.require_all( + in_range(1764 * MeV, F.MASS, 1964 * MeV), F.CHI2DOF < 16., + F.BPVFDCHI2(make_pvs()) > 25.), + ) + + +def make_ds_for_rd_bc(particle1, particle2, particle3): + descriptor = "[D_s+ -> K+ K- pi+]cc" + name = 'rd_DsToKpKmPip_{hash}' + + pvs = make_pvs() + + return ParticleCombiner( + [particle1, particle2, particle3], + DecayDescriptor=descriptor, + name=name, + CombinationCut=F.require_all( + in_range(1910 * MeV, F.MASS, 2030 * MeV), + F.MAX(F.PT) > 1000 * MeV, + F.PT > 1 * GeV, + ), + CompositeCut=F.require_all( + in_range(1920 * MeV, F.MASS, 2020 * MeV), + F.CHI2DOF < 16., + F.BPVDIRA(pvs) > 0.999, + ), + ) + + +@configurable +def make_dsst( + hadrons, + kshort, + decay_descriptor, + name="rd_radexcl_PV_{hash}", + m_min=1000 * MeV, + m_max=2500 * MeV, + min_pt=1000 * MeV, +): + combination_code = F.require_all( + in_range(m_min, F.MASS, m_max), F.PT > min_pt) + + return ParticleCombiner( + ParticleCombiner="ParticleAdder", + name=name, + Inputs=[hadrons, kshort], + DecayDescriptor=decay_descriptor, + CombinationCut=combination_code, + ) + + +@configurable +def make_b2xgamma_excl_bc( + intermediate, + photons, + descriptor, + name, + comb_m_min=5000 * MeV, + comb_m_max=7400 * MeV, + pt_min=2000 * MeV, + sum_pt_min=0 * MeV, +): + combination_code = F.require_all( + F.PT > pt_min, + F.CHILD(1, F.SUM(F.PT)) + F.CHILD(2, F.PT) > sum_pt_min, + in_range(comb_m_min, F.MASS, comb_m_max), + ) + + return ParticleCombiner( + ParticleCombiner="ParticleAdder", + name=name, + Inputs=[intermediate, photons], + DecayDescriptor=descriptor, + CombinationCut=combination_code, + ) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xtaul_rd_builder.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xtaul_rd_builder.py index a0e43989976c9d184e8c54d55145cde712395718..95018985e2dd93195042b1ad3b7256f358b8c092 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xtaul_rd_builder.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/b_to_xtaul_rd_builder.py @@ -33,7 +33,8 @@ from Hlt2Conf.lines.rd.builders.rdbuilder_thor import ( make_rd_detached_muons, make_rd_detached_electrons, make_rd_detached_phis, make_rd_detached_rho0, make_rd_detached_etaprime, make_rd_detached_k1, make_rd_tauons_hadronic_decay, make_rd_has_rich_detached_kaons, - make_rd_has_rich_detached_protons) + make_rd_has_rich_detached_protons, make_rd_ks0_lls, make_rd_ks0_dds, + make_rd_lambda_lls, make_rd_lambda_dds) @configurable @@ -169,6 +170,48 @@ def filter_rd_detached_k1(name='rd_detached_k1_{hash}', return ParticleFilter(k1, name=name + "_{hash}", Cut=F.FILTER(code)) +@configurable +def filter_rd_ks0s(name='rd_ks0_{hash}', + adocachi2cut=25., + vchi2pdof_max=20., + use_down_track=False): + """ + Filter Ks0 built in rdbuilder_thor + Select ll or dd builder + """ + if use_down_track: + ks0 = make_rd_ks0_dds( + adocachi2cut=adocachi2cut, vchi2pdof_max=vchi2pdof_max) + else: + ks0 = make_rd_ks0_lls( + adocachi2cut=adocachi2cut, vchi2pdof_max=vchi2pdof_max) + + return ks0 + + +@configurable +def filter_rd_lambdas(name='filter_rd_lambda_{hash}', + pi_ipchi2_min=9., + adocachi2cut=25., + vchi2pdof_max=20., + use_down_tracks=False): + """ + Filter the Lambda0 built in rdbuilder_thor + Select ll or dd builder + """ + if use_down_tracks: + lambda0 = make_rd_lambda_dds( + pi_ipchi2_min=pi_ipchi2_min, + adocachi2cut=adocachi2cut, + vchi2pdof_max=vchi2pdof_max) + else: + lambda0 = make_rd_lambda_lls( + pi_ipchi2_min=pi_ipchi2_min, + adocachi2cut=adocachi2cut, + vchi2pdof_max=vchi2pdof_max) + return lambda0 + + def filter_BToTauTau( ditaus, name='filter_RD_B2tautau_{hash}', diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_builders.py index ac986d24dbdaab4a5937a482db86e563f061932e..40806b65ade117447a1c367bb821e7d30266be97 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_builders.py @@ -411,7 +411,6 @@ def make_bhadron(pvs, dilepton, hadron, descriptor, - name, min_mass=4800 * MeV, max_mass=6900 * MeV, pt_min=2500 * MeV, @@ -423,10 +422,10 @@ def make_bhadron(pvs, vtx_sep_min=None, daughter_index=2): '''Builder for b-baryon decaying to light baryon and dilepton.''' - name = "make_bhadron_for_" + name + "_{hash}" + name = "RD_bbaryon_{hash}" combination_cut = F.require_all( - in_range(min_mass * 0.9, F.MASS, max_mass * 1.1), F.PT > 0.9 * pt_min, - F.MAXSDOCACHI2CUT(docachi2_max)) + in_range(min_mass - 100 * MeV, F.MASS, max_mass + 100 * MeV), + F.PT > 0.9 * pt_min, F.MAXSDOCACHI2CUT(docachi2_max)) composite_cut = F.require_all( in_range(min_mass, F.MASS, max_mass), F.PT > pt_min, @@ -453,7 +452,6 @@ def make_bhadron_3body(pvs, hadron1, hadron2, descriptor, - name, min_mass=4800 * MeV, max_mass=6900 * MeV, pt_min=2500 * MeV, @@ -465,11 +463,11 @@ def make_bhadron_3body(pvs, vtx_sep_min=None, daughter_index=2): '''Builder for b-baryon decaying to light baryon, one or two pions (dipion) and dilepton.''' - name = "make_bhadron_for_" + name + "_{hash}" + name = "RD_bbaryon_3body_{hash}" combination_cut = require_all( - in_range(min_mass * 0.9, F.MASS, max_mass * 1.1), F.PT > 0.9 * pt_min, - F.MAXSDOCACHI2CUT(docachi2_max)) + in_range(min_mass - 100 * MeV, F.MASS, max_mass + 100 * MeV), + F.PT > 0.9 * pt_min, F.MAXSDOCACHI2CUT(docachi2_max)) composite_cut = require_all( in_range(min_mass, F.MASS, max_mass), F.PT > pt_min, @@ -497,7 +495,6 @@ def make_bhadron_4body(pvs, hadron2, hadron3, descriptor, - name, min_mass=4800 * MeV, max_mass=6900 * MeV, pt_min=2500 * MeV, @@ -509,11 +506,11 @@ def make_bhadron_4body(pvs, vtx_sep_min=None, daughter_index=2): '''Builder for b-hadron decaying to two hadrons, pion or two pions (dipion) and dilepton.''' - name = "make_bhadron_for_" + name + "_{hash}" + name = "RD_bbaryon_4body_{hash}" combination_cut = require_all( - in_range(min_mass * 0.9, F.MASS, max_mass * 1.1), F.PT > 0.9 * pt_min, - F.MAXSDOCACHI2CUT(docachi2_max)) + in_range(min_mass - 100 * MeV, F.MASS, max_mass + 100 * MeV), + F.PT > 0.9 * pt_min, F.MAXSDOCACHI2CUT(docachi2_max)) composite_cut = require_all( in_range(min_mass, F.MASS, max_mass), F.PT > pt_min, diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_radiative_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_radiative_builders.py index 7ed7217f949de68b694ac2b15fb9bfecd741ab0d..af4ba2156398848ed5b8aa9870fa42253d4efaa4 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_radiative_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/baryonic_radiative_builders.py @@ -22,7 +22,7 @@ import Functors as F from Functors.math import in_range from Hlt2Conf.algorithms_thor import ParticleCombiner, ParticleFilter -from Hlt2Conf.standard_particles import make_LambdaLL +from Hlt2Conf.standard_particles import make_LambdaLL, make_LambdaDD from PyConf import configurable @@ -156,6 +156,36 @@ def filter_lambdasLL_for_lb_to_lg( return ParticleFilter(make_LambdaLL(), F.FILTER(code)) +@configurable +def filter_lambdasDD_for_lb_to_lg( + pvs, + trghostprob_max=0.4, + PIDp_min=0, + p_pt_min=800.0 * MeV, # Can decrease down to 800 MeV + p_ipchi2_min=10, #Can increase up to 8 or 10 + pi_pt_min=150.0 * MeV, + pi_ipchi2_min=10, #Can increase up to 8 or 10 + L0_pt_min=0.75 * GeV, + L0_p_min=7.0 * GeV, + vz_min=300 * mm, + vz_max=2300 * mm, + vchi2=25): + + code = F.require_all( + F.NINTREE( + F.require_all(F.ISBASICPARTICLE, + F.GHOSTPROB < trghostprob_max)) == 2, + F.MINTREE(F.IS_ABS_ID('pi+'), F.PT) > pi_pt_min, + F.MINTREE(F.IS_ABS_ID('p+'), F.PT) > p_pt_min, + F.MINTREE(F.IS_ABS_ID('pi+'), F.MINIPCHI2(pvs)) > pi_ipchi2_min, + F.MINTREE(F.IS_ABS_ID('p+'), F.MINIPCHI2(pvs)) > p_ipchi2_min, + F.MINTREE(F.IS_ABS_ID('p+'), F.PID_P) > PIDp_min, F.CHI2 < vchi2, + in_range(vz_min, F.END_VZ, vz_max), F.PT > L0_pt_min, F.P > L0_p_min, + F.TWOBODY_TILT("Y") > 0) + + return ParticleFilter(make_LambdaDD(), F.FILTER(code)) + + # define Lb->LG builders @configurable def make_rd_lb_to_lgamma_LL(Lambda, @@ -182,3 +212,33 @@ def make_rd_lb_to_lgamma_LL(Lambda, CombinationCut=combination_cut, CompositeCut=vertex_cut, name=name) + + +@configurable +def make_rd_lb_to_lgamma_DD( + Lambda, + gamma, + pvs, + Lb_UM=6119.6 * MeV, + Lb_LM=5119.6 * MeV, + Lb_PT_Min=1500 * MeV, + Lb_Sum_PT_Min=1500.0 * MeV, +): + """Make the Lb --> Lambda Gamma candidate""" + + # mass window around the Lb mass + combination_cut = F.require_all( + in_range(Lb_LM, F.MASS, Lb_UM), + F.SUM(F.PT) > Lb_Sum_PT_Min) + + mother_cut = F.require_all( + in_range(Lb_LM, F.MASS, Lb_UM), + F.PT > Lb_PT_Min, + ) + + return ParticleCombiner( + Inputs=[Lambda, gamma], + DecayDescriptor="[Lambda_b0 -> Lambda0 gamma]cc", + ParticleCombiner="MomentumCombiner", + CombinationCut=combination_cut, + CompositeCut=mother_cut) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/qqbar_to_ll_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/qqbar_to_ll_builders.py index 2e29d4d1919a1cd4b9956d5b98293e08a6bc27a0..df6e088477c716057f128c4ade64c9243b2e6a68 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/qqbar_to_ll_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/qqbar_to_ll_builders.py @@ -18,40 +18,50 @@ make_prompt_tautau : For Upsilon(1S) -> tau+ tau- - Invariant mass : [7500, 13000] MeV - Cos(opening angle) > 0.95 - PT > 1.5 GeV + - Logarithm of vertex separation chi2: ~CHI2>-1.5 - Tau cuts : - - Invariant MAss : [1200, 2000] MeV - - PID_K < -1.0 + - Invariant Mass : [900, 1700] MeV + - PID_K <= 0.0 + - Invariant Mass of neutral two-pion combinations: [200, 1500] MeV + - P > 3 GeV make_prompt_etau : For Upsilon(1S) -> e+ tau- - - Invariant mass : [8000, 12000] MeV + - Invariant mass : [7500, 12000] MeV - Cos(opening angle) > 0.95 - PT > 2.5 GeV - Tau cuts : - - Invariant MAss : [1200, 2000] MeV - - PID_K < -1.0 + - Invariant Mass : [900, 1700] MeV + - Invariant Mass of neutral two-pion combinations: [200, 1500] MeV + - PID_K <= 0.0 + - P > 3 GeV - electron cuts: - - PID_E > 2.5 + - PID_E > 3 - PT > 1.5 GeV + - P > 3 GeV make_prompt_mutau: For Upsilon(1S) -> mu+ tau- - - Invariant mass : [7000, 13000] MeV + - Invariant mass : [7500, 13000] MeV - PT > 1 GeV - Tau cuts : - - Invariant MAss : [1000, 2000] MeV - - PID_K < 0.0 + - Invariant Mass : [900, 1700] MeV + - PID_K <= 0.0 + - Invariant Mass of neutral two-pion combinations: [200, 1500] MeV + - P > 3 GeV - muon cuts: - - PID_MU > 2.0 + - PID_MU > 2.0, ISMUON + - P > 3 GeV make_upsilons_to_upsilons : For Upsilon(2S) -> Upsilon(1S) pi+ pi- - - Invariant mass : [7000, 13000] MeV + - Invariant mass : [8000, 13000] MeV - PT > 1 GeV - Pion cuts : - - PID_K < 0.0 + - PID_K <= 0.0 - PT > 250 MeV """ from __future__ import absolute_import, division, print_function from PyConf import configurable +from PyConf.Tools import ParticleVertexFitter from GaudiKernel.SystemOfUnits import GeV, MeV from RecoConf.reconstruction_objects import make_pvs @@ -63,7 +73,8 @@ from Hlt2Conf.lines.rd.builders.rdbuilder_thor import ( make_rd_tauons_hadronic_decay, make_rd_prompt_electrons, ) -from Hlt2Conf.algorithms_thor import ParticleCombiner +from Hlt2Conf.lines.rd.builders.b_to_xtaul_rd_builder import get_taus_log_vtxsepchi2 +from Hlt2Conf.algorithms_thor import ParticleCombiner, ParticleFilter import Functors as F from Functors.math import in_range @@ -71,33 +82,43 @@ from Functors.math import in_range @configurable def make_prompt_tautau( + *, # we do not allow positional arguments + parent_id: + str, # this is a keyword argument that must always be provided name="prompt_tautau_builder_{hash}", min_dilepton_mass=7500.0 * MeV, max_dilepton_mass=13000.0 * MeV, min_dilepton_pt=1.5 * GeV, - max_ipchi2_tautau=10, - max_adocachi2=30.0, - parent_id="Upsilon(1S)", + max_ipchi2_tautau=9, + max_adocachi2=25.0, min_bpvvdchi2=0.0, # must be 0 for a prompt builder cos_tautauangle=0.95, + taus_log_vtxsepchi2_min=-1., + min_p_tau=6. * GeV, ): pvs = make_pvs() descriptor = "{} -> tau+ tau-".format(parent_id) - taus = make_rd_tauons_hadronic_decay( - pi_pt_min=300 * MeV, - pi_ipchi2_min=3.0, - best_pi_pt_min=800 * MeV, - best_pi_ipchi2_min=5.0, - pi_pid=F.PID_K < -1.0, - am_min=1200 * MeV, - am_max=2000 * MeV, - vchi2pdof_max=12.0, - ) + taus = ParticleFilter( + make_rd_tauons_hadronic_decay( + pi_pt_min=300 * MeV, + pi_p_min=6000 * MeV, + pi_ipchi2_min=3.0, + best_pi_pt_min=800 * MeV, + best_pi_ipchi2_min=5.0, + pi_pid=F.PID_K <= 0.0, + am_min=900 * MeV, + am_max=1700 * MeV, + am_2pi_min=200 * MeV, + am_2pi_max=1500 * MeV, + vchi2pdof_max=6.0, + ), + F.FILTER(F.P > min_p_tau), + name="prompt_tau_builder_{hash}") combination_code = F.require_all( F.MAXSDOCACHI2CUT(max_adocachi2), F.ALV(1, 2) > cos_tautauangle, - ) + get_taus_log_vtxsepchi2() > taus_log_vtxsepchi2_min) vertex_code = F.require_all( F.BPVFDCHI2(pvs) > min_bpvvdchi2, in_range(min_dilepton_mass, F.MASS, max_dilepton_mass), @@ -119,17 +140,21 @@ def make_prompt_tautau( @configurable def make_prompt_etau( + *, # we do not allow positional arguments + parent_id: + str, # this is a keyword argument that must always be provided name="prompt_etau_builder", min_dilepton_mass=8000.0 * MeV, max_dilepton_mass=12000.0 * MeV, min_dilepton_pt=2.5 * GeV, max_ipchi2_etau=9, - parent_id="Upsilon(1S)", - min_pid_e=2.5, + min_pid_e=3., min_pt_e=1.5 * GeV, + min_p_e=6 * GeV, max_adocachi2=20.0, min_bpvvdchi2=0.0, # must be 0 for a prompt builder cos_etauangle=0.95, + min_p_tau=6 * GeV, ): """ Make the detached electron-tau pair, opposite-sign for now. @@ -137,18 +162,24 @@ def make_prompt_etau( pvs = make_pvs() descriptor = "[{} -> tau- e+]cc".format(parent_id) # taus = make_upsilon_taus() - taus = make_rd_tauons_hadronic_decay( - pi_pt_min=350 * MeV, - pi_ipchi2_min=3.0, - best_pi_pt_min=800 * MeV, - best_pi_ipchi2_min=5.0, - pi_pid=F.PID_K < -1.0, - am_min=1200 * MeV, - am_max=2000 * MeV, - vchi2pdof_max=12.0, - ) + taus = ParticleFilter( + make_rd_tauons_hadronic_decay( + pi_pt_min=350 * MeV, + pi_p_min=6000 * MeV, + pi_ipchi2_min=3.0, + best_pi_pt_min=800 * MeV, + best_pi_ipchi2_min=5.0, + pi_pid=F.PID_K <= 0.0, + am_min=900 * MeV, + am_max=1700 * MeV, + am_2pi_min=200 * MeV, + am_2pi_max=1500 * MeV, + vchi2pdof_max=6.0, + ), + F.FILTER(F.P > min_p_tau), + name="prompt_tau_builder_{hash}") electrons = make_rd_prompt_electrons( - pt_min=min_pt_e, pid=(F.PID_E > min_pid_e)) + pt_min=min_pt_e, p_min=min_p_e, pid=(F.PID_E > min_pid_e)) combination_code = F.require_all( F.MAXSDOCACHI2CUT(max_adocachi2), F.ALV(1, 2) > cos_etauangle, @@ -174,41 +205,51 @@ def make_prompt_etau( @configurable def make_prompt_mutau( + *, # we do not allow positional arguments + parent_id: + str, # this is a keyword argument that must always be provided name="prompt_mutau_builder", min_dilepton_mass=7000.0 * MeV, max_dilepton_mass=13000.0 * MeV, min_dilepton_pt=1.0 * GeV, max_ipchi2_mutau=50, - parent_id="Upsilon(1S)", min_PIDmu=2.0, IsMuon=True, min_pt_mu=0.0 * GeV, + min_p_mu=5.0 * GeV, max_adocachi2=30.0, min_bpvvdchi2=0.0, # must be 0 for a prompt builder -): + min_p_tau=5.0 * GeV): """ Make the detached muon-tau pair, opposite-sign for now. """ pvs = make_pvs() descriptor = "[{} -> mu+ tau-]cc".format(parent_id) - taus = make_rd_tauons_hadronic_decay( - pi_pt_min=250 * MeV, - pi_ipchi2_min=6.0, - best_pi_pt_min=800 * MeV, - best_pi_ipchi2_min=9.0, - pi_pid=F.PID_K < 0.0, - am_min=1000 * MeV, - am_max=2000 * MeV, - vchi2pdof_max=16.0, - ) + taus = ParticleFilter( + make_rd_tauons_hadronic_decay( + pi_pt_min=350 * MeV, #possible tighter + pi_p_min=6000 * MeV, + pi_ipchi2_min=6.0, #possible tighter + best_pi_pt_min=800 * MeV, #possible tighter + best_pi_ipchi2_min=9.0, + pi_pid=F.PID_K <= 0.0, + am_min=900 * MeV, #raja suggestion + am_max=1700 * MeV, + am_2pi_min=200 * MeV, + am_2pi_max=1500 * MeV, + vchi2pdof_max=6.0, + ), + F.FILTER(F.P > min_p_tau), + name="prompt_tau_builder_{hash}") if IsMuon: muons = make_rd_prompt_muons( pt_min=min_pt_mu, + p_min=min_p_mu, pid=F.require_all(F.PID_MU > min_PIDmu, F.ISMUON)) else: muons = make_rd_prompt_muons( - pt_min=min_pt_mu, pid=(F.PID_MU > min_PIDmu)) + pt_min=min_pt_mu, p_min=min_p_mu, pid=(F.PID_MU > min_PIDmu)) combination_code = F.MAXSDOCACHI2CUT(max_adocachi2) vertex_code = F.require_all( F.BPVFDCHI2(pvs) > min_bpvvdchi2, @@ -235,13 +276,16 @@ def make_upsilons_to_upsilons( max_dilepton_mass=13000.0 * MeV, min_dilepton_pt=1.0 * GeV, min_bpvvdchi2=0.0, # must be 0 for a prompt builder - max_adocachi2=30.0, + max_adocachi2=25.0, minipchi2=0, # must be 0 for a prompt builder # pion cut - pi_pt_min=250 * MeV, - pi_ipchi2_min=0.0, # check if you want to filter on MINIPCHI2(pvs) < 0. or MINIPCHI2(pvs) < 1. - pi_pid=F.PID_K < 0.0, -): + pi_pt_min=500 * MeV, + pi_ipchi2_min=0.0, # check if you want to filter on MINIPCHI2(pvs) > 0. or MINIPCHI2(pvs) > 1. + pi_pid=F.PID_K <= 0, + max_vchi2ndof=9., + useDTFMassConstraint=False): + # The `make_rd_detached_pions` function is used to create a filter for selecting detached pions + # based on certain criteria. Here is an explanation of the parameters used in this function: pion = make_rd_detached_pions( pt_min=pi_pt_min, mipchi2dvprimary_min=pi_ipchi2_min, pid=pi_pid) @@ -254,14 +298,22 @@ def make_upsilons_to_upsilons( vertex_code = F.require_all( in_range(min_dilepton_mass, F.MASS, max_dilepton_mass), F.PT > min_dilepton_pt, - F.BPVFDCHI2(pvs) > min_bpvvdchi2, - ) - - upsilon2s = ParticleCombiner( - [upsilon1s, pion, pion], - name=name, - DecayDescriptor="[Upsilon(2S) -> Upsilon(1S) pi+ pi-]cc", - CombinationCut=combination_code, - CompositeCut=vertex_code, - ) + F.BPVFDCHI2(pvs) > min_bpvvdchi2, F.CHI2DOF < max_vchi2ndof) + if useDTFMassConstraint: + # Might be useful expecially for rate reductions + upsilon2s = ParticleCombiner( + [upsilon1s, pion, pion], + name=name, + DecayDescriptor="Upsilon(2S) -> Upsilon(1S) pi+ pi-", + CombinationCut=combination_code, + CompositeCut=vertex_code, + ParticleCombiner=ParticleVertexFitter( + MassConstraints=["Upsilon(1S)"])) + else: + upsilon2s = ParticleCombiner( + [upsilon1s, pion, pion], + name=name, + DecayDescriptor="Upsilon(2S) -> Upsilon(1S) pi+ pi-", + CombinationCut=combination_code, + CompositeCut=vertex_code) return upsilon2s diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rare_tau_decay_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rare_tau_decay_builders.py index f9c5337cbafaf49587fabca0bfcf5e57071f81d0..461937e8eaf3ebf98d69c16cbf9e8aaae7b98b3b 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rare_tau_decay_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rare_tau_decay_builders.py @@ -68,7 +68,8 @@ def _make_tau_to_2body(particle1, max_mass=1978 * MeV, max_vtxchi2dof=9, min_flightdist=100 * micrometer, - max_ipchi2=16): + max_ipchi2=16, + min_pt=0. * MeV): """ Builder for tau decaying to two particles. """ @@ -80,7 +81,8 @@ def _make_tau_to_2body(particle1, vertex_code = F.require_all(F.CHI2DOF < max_vtxchi2dof, F.BPVIPCHI2(pvs) < max_ipchi2, - F.BPVLTIME(pvs) * c_light > min_flightdist) + F.BPVLTIME(pvs) * c_light > min_flightdist, + F.PT > min_pt) return ParticleCombiner([particle1, particle2], name=name, @@ -99,47 +101,40 @@ def _make_tau_to_nmu(muons, min_mass=1378 * MeV, max_mass=2178 * MeV, max_vtxchi2dof=25, + max_doca12=500 * micrometer, min_flightdist=100 * micrometer, max_ipchi2=16): """ Builder for tau decaying to five, seven or nine muons with at least three muons fulfilling PID requirements """ - if n_muons not in {5, 7, 9}: - raise ConfigurationError("Parameter n_muons must be 5, 7 or 9") - pvs = make_pvs() - dimuons = ParticleCombiner([muons_loose, muons_loose], - name="HLT2RD_TauToNMu_TwoMuonCombiner", - DecayDescriptor="Xu0 -> mu+ mu-", - CombinationCut=F.MASS < max_mass) - vertex_code = F.require_all(F.CHI2DOF < max_vtxchi2dof, F.BPVIPCHI2(pvs) < max_ipchi2, F.BPVLTIME(pvs) * c_light > min_flightdist) combination_code = in_range(min_mass, F.MASS, max_mass) + combination12_code = F.MAXDOCACUT(max_doca12) - if n_muons > 5: - pentamuons = ParticleCombiner( - [muons, muons, muons, muons_loose, muons_loose], - name="HLT2RD_TauToNMu_FiveMuonCombiner", - DecayDescriptor="[Xu+ -> mu+ mu+ mu+ mu- mu-]cc", - CombinationCut=F.MASS < max_mass) - - return ParticleCombiner( - [pentamuons] + int((n_muons - 5) / 2) * [dimuons], - name=name, - DecayDescriptor=descriptor, - CombinationCut=combination_code, - CompositeCut=vertex_code) - else: + if n_muons == 5: return ParticleCombiner( [muons, muons, muons, muons_loose, muons_loose], name=name, DecayDescriptor=descriptor, + Combination12Cut=combination12_code, CombinationCut=combination_code, CompositeCut=vertex_code) + elif n_muons == 7: + return ParticleCombiner([ + muons, muons, muons, muons, muons_loose, muons_loose, muons_loose + ], + name=name, + DecayDescriptor=descriptor, + Combination12Cut=combination12_code, + CombinationCut=combination_code, + CompositeCut=vertex_code) + else: + raise ConfigurationError("Parameter n_muons must be 5 or 7") @configurable diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rdbuilder_thor.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rdbuilder_thor.py index f512b7de90edfaef5fc9e3556639745c0f0cb207..050e9e8ecf9b42cbc8713d5d83b95e4adc634b40 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rdbuilder_thor.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/rdbuilder_thor.py @@ -48,7 +48,7 @@ make_rd_{prompt,detached}_mue - mue (same- or opposite-sign) combination make_rd_tauons_hadronic_decay - tau->3pi builder make_rd_detached_dihadron - hh builder (same- or opposite-sign) """ -from GaudiKernel.SystemOfUnits import GeV, MeV, ps +from GaudiKernel.SystemOfUnits import GeV, MeV, ps, micrometer from RecoConf.reconstruction_objects import make_pvs import Functors as F @@ -167,7 +167,7 @@ def make_rd_detached_pions( p_min=2. * GeV, pt_min=250. * MeV, mipchi2dvprimary_min=4., #TBC - pid=(F.PID_K <= 2.)): + pid=(F.PID_K <= 1e-5)): """ Return RD detached pions. """ @@ -443,7 +443,8 @@ def make_rd_resolved_pi0s( name="rd_resolved_pi0s_{hash}", make_particles=make_resolved_pi0s, pt_min=250. * MeV, - cl_min=0., + is_photon_max=0.5, + is_not_h_min=0.5, # photon_args={ # 'ConfLevelCut': 0.1, # 'PtCut': 250. * MeV @@ -456,7 +457,8 @@ def make_rd_resolved_pi0s( # # return ParticleFilter( # make_particles(photon_args=photon_args), Code=code, name=name) - code = F.PT > pt_min + code = F.require_all(F.PT > pt_min, F.IS_PHOTON < is_photon_max, + F.IS_NOT_H > is_not_h_min) return ParticleFilter(make_particles(), F.FILTER(code)) @@ -486,7 +488,7 @@ def make_rd_ks0_lls( mass_window=35. * MeV, pi_p_min=2. * GeV, pi_pt_min=0. * GeV, # has to be 0 !!! - pi_ipchi2_min=9., + pi_ipchi2_min=16., pt_min=0 * MeV, adocachi2cut=30., bpvvdchi2_min=4., @@ -573,7 +575,7 @@ def make_rd_lambda_lls( p_pt_min=0., # recommended to be small pi_pt_min=0., # has to be 0 !!! pi_ipchi2_min=6., - p_ipchi2_min=9., + p_ipchi2_min=16., adocachi2cut=30., bpvvdchi2_min=4., bpvltime_min=1. * ps, @@ -623,7 +625,7 @@ def make_rd_lambda_dds( p_pt_min=0., # recommended to be small pi_pt_min=0., # has to be 0 !!! pi_ipchi2_min=6, - p_ipchi2_min=9, + p_ipchi2_min=16, adocachi2cut=30., bpvvdchi2_min=4., bpvltime_min=1. * ps, @@ -671,7 +673,7 @@ def make_Kstps_with_pi0s( min_ipchi2_k=4., Kstp_PT=0., Kstp_max_vtxchi2=36., - PIDK_K_min=-4., + PIDK_K_min=0., pt_K_min=250. * MeV, p_K_min=1_000. * MeV, pt_pi_min=250. * MeV, @@ -722,19 +724,23 @@ def make_rd_detached_kstar0s( make_rd_detached_pions=make_rd_has_rich_detached_pions, make_rd_detached_kaons=make_rd_has_rich_detached_kaons, make_pvs=make_pvs, - am_min=592. * MeV, - am_max=1192. * MeV, + am_min=0 * MeV, + am_max=2600. * MeV, pi_p_min=2. * GeV, - pi_pt_min=100. * MeV, - pi_ipchi2_min=4., - pi_pid=(F.PID_K < 8.), + pi_pt_min=250. * MeV, + pi_ipchi2_min=9., + # if the RICH can not distinguish between kaons and pions then + # the PID will be set to zero, and most often these will correspond + # to real pions + pi_pid=F.PID_K < 1e-5, k_p_min=2. * GeV, - k_pt_min=100. * MeV, - k_ipchi2_min=4., - k_pid=(F.PID_K > -2.), + k_pt_min=250. * MeV, + k_ipchi2_min=9., + k_pid=(F.PID_K > 2.), kstar0_pt_min=400. * MeV, adocachi2cut=30., - vchi2pdof_max=25., + maxdoca=500 * micrometer, + vchi2pdof_max=16., bpvipchi2_min=None, same_sign=False): ''' @@ -755,7 +761,8 @@ def make_rd_detached_kstar0s( descriptor = '[K*(892)0 -> K+ pi-]cc' if same_sign: descriptor = '[K*(892)0 -> K+ pi+]cc' combination_code = F.require_all( - in_range(am_min, F.MASS, am_max), F.MAXSDOCACHI2CUT(adocachi2cut)) + in_range(am_min, F.MASS, am_max), F.MAXSDOCACHI2CUT(adocachi2cut), + F.MAXSDOCACUT(maxdoca)) vertex_code = F.require_all(F.CHI2DOF < vchi2pdof_max, F.PT > kstar0_pt_min) @@ -810,15 +817,19 @@ def make_rd_detached_phis( def make_rd_detached_rho0( name="rd_detached_rho0_{hash}", make_rd_detached_pions=make_rd_has_rich_detached_pions, - pi_pt_min=150. * MeV, + pi_pt_min=250. * MeV, pi_p_min=0. * MeV, - pi_ipchi2_min=4.0, - pi_pid=(F.PID_K < 0.), + pi_ipchi2_min=9.0, + # if the RICH can not distinguish between kaons and pions then + # the PID will be set to zero, and most often these will correspond + # to real pions + pi_pid=F.PID_K < 1e-5, pt_min=600. * MeV, - am_min=500. * MeV, - am_max=1100. * MeV, + am_min=0. * MeV, + am_max=2600. * MeV, adocachi2cut=10., - vchi2pdof_max=9., + maxdocacut=500 * micrometer, + vchi2pdof_max=16., ): ''' Build pi+pi- candidates. Approximately corresponding to the Run2 @@ -833,7 +844,7 @@ def make_rd_detached_rho0( DecayDescriptor = 'rho(770)0 -> pi+ pi-' combination_code = F.require_all( in_range(am_min, F.MASS, am_max), F.PT > pt_min, - F.MAXSDOCACHI2CUT(adocachi2cut)) + F.MAXSDOCACHI2CUT(adocachi2cut), F.MAXSDOCACUT(maxdocacut)) vertex_code = (F.CHI2DOF < vchi2pdof_max) return ParticleCombiner([pions, pions], @@ -850,14 +861,15 @@ def make_rd_detached_etaprime( pi_p_min=1. * GeV, pi_pt_min=150. * MeV, pi_ipchi2_min=4.0, - pi_pid=(F.PID_K < 0.), + pi_pid=(F.PID_K < 2.), pt_min=500. * MeV, am_min=700. * MeV, am_max=1300. * MeV, + am12_min=500 * MeV, + am12_max=1200 * MeV, e_gamma_min=100 * MeV, et_gamma_min=400 * GeV, - adocachi2_cut=10., - vchi2pdof_max=9): + adocachi2_cut=10.): """ Build pi+pi-gamma candidates. """ @@ -869,8 +881,8 @@ def make_rd_detached_etaprime( photons = make_rd_photons(et_min=et_gamma_min, e_min=e_gamma_min) descriptor = '[eta_prime -> pi+ pi- gamma]cc' combination_code = in_range(am_min, F.MASS, am_max) - combination12_code = F.MAXSDOCACHI2CUT(adocachi2_cut) - vertex_code = F.require_all(F.PT > pt_min, F.CHI2DOF < vchi2pdof_max) + combination12_code = in_range(am12_min, F.MASS, am12_max) + vertex_code = F.require_all(F.PT > pt_min) return ParticleCombiner( Inputs=[pions, pions, photons], @@ -888,19 +900,19 @@ def make_rd_detached_k1(name='rd_detached_k1_{hash}', make_rd_detached_kaons=make_rd_has_rich_detached_kaons, pi_p_min=1. * GeV, pi_pt_min=150. * MeV, - pi_ipchi2_min=4.0, + pi_ipchi2_min=9.0, pi_pid=(F.PID_K < 0.), k_p_min=1. * GeV, k_pt_min=150. * MeV, - k_ipchi2_min=4.0, + k_ipchi2_min=9.0, k_pid=(F.PID_K > -2.), pt_min=500. * MeV, am_kpi_max=1450 * MeV, am_2pi_max=1450 * MeV, - am_min=1000. * MeV, - am_max=1600. * MeV, + am_min=0. * MeV, + am_max=4200. * MeV, adocachi2_cut=10., - vchi2pdof_max=9): + vchi2pdof_max=16): """ Build K1(1270)->Kpipi candidates """ @@ -1346,13 +1358,13 @@ def make_rd_detached_K1( low_factor=0.5, high_factor=1.5, pi_p_min=1_000. * MeV, - pi_pt_min=0. * MeV, - pi_ipchi2_min=9., + pi_pt_min=400. * MeV, + pi_ipchi2_min=25., pi_PIDK_max=-2., K_p_min=1_000. * MeV, - K_pt_min=0. * MeV, - K_ipchi2_min=9., - K_PIDK_min=-2., + K_pt_min=400. * MeV, + K_ipchi2_min=25., + K_PIDK_min=2., K_1_min_bpvfdchi2=0., K_1_pt_min=0. * MeV, vchi2pdof_max=25., @@ -1411,18 +1423,19 @@ def make_rd_detached_K1( def make_rd_detached_K2( name="make_rd_detached_K_2_{hash}", Descriptor="[K_2(1770)+ -> K+ K+ K-]cc", - adocachi2_max=25., - am_min=500. * MeV, + adocachi2_max=16., + maxdoca=300 * micrometer, + am_min=0. * MeV, am_max=4200. * MeV, - low_factor=0.5, - high_factor=1.5, - K_p_min=1_000. * MeV, - K_pt_min=0. * MeV, + low_factor=0.8, + high_factor=1.2, + K_p_min=2_000. * MeV, + K_pt_min=400. * MeV, K_ipchi2_min=9., - K_PIDK=(F.PID_K > -2.), + K_PIDK=(F.PID_K > 5.), K_2_min_bpvfdchi2=0., K_2_pt_min=0. * MeV, - vchi2pdof_max=25., + vchi2pdof_max=12., K_2_min_DIRA=None, bpvipchi2_min=9., ): @@ -1439,8 +1452,7 @@ def make_rd_detached_K2( two_body_combination_code = F.require_all( in_range(low_factor * am_min, F.MASS, high_factor * am_max), - F.MAXSDOCACHI2CUT(adocachi2_max), - ) + F.MAXSDOCACHI2CUT(adocachi2_max), F.MAXSDOCACUT(maxdoca)) combination_code = F.require_all( in_range(low_factor * am_min, F.MASS, high_factor * am_max), diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/strange_builders.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/strange_builders.py index 8421023120e6b11c88636a0dfe981ac44fd71b40..8ce92ec7396f6c1ffdb681856dee5e9368ddd044 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/strange_builders.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/builders/strange_builders.py @@ -351,6 +351,50 @@ def tight_requirements_for_decay_products(): ) +@requirements_builder +def loose_requirements_for_protons_from_sigma(): + return dict( + p_min=3 * GeV, + pt_min=80 * MeV, + track_chi2dof_max=9., + ip_min=0.1 * mm, + ipchi2_min=9., + ) + + +@requirements_builder +def requirements_for_protons_from_sigma(): + return loose_requirements_for_protons_from_sigma( + p_min=3 * GeV, + pt_min=1000 * MeV, + track_chi2dof_max=9., + ip_min=0.1 * mm, + ipchi2_min=9., + ) + + +@requirements_builder +def tight_requirements_for_protons_from_sigma(): + return requirements_for_protons_from_sigma( + p_min=3 * GeV, + pt_min=1000 * MeV, + track_chi2dof_max=9., + ip_min=2. * mm, + ipchi2_min=25., + ) + + +@requirements_builder +def requirements_for_muons_from_sigma(): + return dict( + p_min=3 * GeV, + pt_min=80 * MeV, + track_chi2dof_max=9., + ip_min=0.5 * mm, + ipchi2_min=9., + ) + + # # Requirements on the vertex for any combination involving a neutral particle. These # selections can not contain vertexing requirements unless the combination involves @@ -371,6 +415,11 @@ def tight_requirements_for_neutral_combination_no_vertex(): return requirements_for_neutral_combination_no_vertex() +@requirements_builder +def requirements_for_sigma_decay_neutral_combination_no_vertex(): + return dict(pt_min=1000 * MeV, ) + + # # Requirements on the vertex for any loose combination # @@ -394,6 +443,18 @@ def requirements_for_combination(): ) +@requirements_builder +def requirements_for_sigma_combination(): + return loose_requirements_for_combination( + docachi2_max=100., + doca_max=1. * mm, + vchi2pdof_max=25., + dira_min=0.99, + lifetime_min=0.006 * ns, + pt_min=500 * MeV, + ) + + @requirements_builder def tight_requirements_for_combination(): return requirements_for_combination( @@ -412,6 +473,9 @@ def tight_requirements_for_combination(): default_additional_requirements_for_prompt_combination = dict( ip_max=0.4 * mm, bpvvdrho_min=3. * mm, dira_min=0.999, ipchi2_max=25.) +default_additional_requirements_for_prompt_sigma_combination = dict( + ip_max=0.4 * mm, bpvvdrho_min=3. * mm, ipchi2_max=25.) + @requirements_builder def loose_requirements_for_prompt_combination(): @@ -425,6 +489,12 @@ def requirements_for_prompt_combination(): **default_additional_requirements_for_prompt_combination) +@requirements_builder +def requirements_for_prompt_sigma_combination(): + return requirements_for_sigma_combination( + **default_additional_requirements_for_prompt_sigma_combination) + + @requirements_builder def tight_requirements_for_prompt_combination(): return tight_requirements_for_combination( @@ -570,6 +640,16 @@ def make_tight_muons(pid_mu_min=5., **kwargs): **tight_requirements_for_decay_products(**kwargs)) +@configurable +def make_muons_for_sigma(*, pid_mu_min=-3, **kwargs): + return filter_decay_products( + make_loose_muons(), + pid_mu_min=pid_mu_min, + name='MuonsForSigmaDecays_{hash}', + is_muon=True, + **requirements_for_muons_from_sigma(**kwargs)) + + @configurable def make_loose_pions(**kwargs): return filter_decay_products( @@ -681,8 +761,8 @@ def make_merged_neutral_pions( *, mass_window=60 * MeV, pt_min=2 * GeV, - is_not_h_min=0.2, - is_photon_max=0.8, + is_not_h_min=0.5, + is_photon_max=0.5, ): return filter_decay_products( standard_particles.make_merged_pi0s( @@ -708,14 +788,48 @@ def make_protons(*, pid_p_min=0, pid_p_over_k_min=0, **kwargs): @configurable -def make_tight_protons(*, pid_p_min=+10, pid_p_over_k_min=+10, **kwargs): +def make_tight_protons(*, + pt_min=500 * MeV, + pid_p_min=+10, + pid_p_over_k_min=+10, + **kwargs): return filter_decay_products( make_protons(), pid_p_min=pid_p_min, pid_p_over_k_min=pid_p_over_k_min, name='TightProtonsForStrangeDecays_{hash}', - **kwargs, - **tight_requirements_for_decay_products(**kwargs)) + **tight_requirements_for_decay_products(pt_min=pt_min, **kwargs)) + + +@configurable +def make_loose_protons_for_sigma(*, pid_p_min=0, pid_p_over_k_min=0, **kwargs): + return filter_decay_products( + standard_particles.make_long_protons(), + pid_p_min=pid_p_min, + pid_p_over_k_min=pid_p_over_k_min, + name='LooseProtonsForSigmaDecays_{hash}', + **loose_requirements_for_protons_from_sigma(**kwargs)) + + +@configurable +def make_protons_for_sigma(*, pid_p_min=5, pid_p_over_k_min=0, **kwargs): + return filter_decay_products( + make_loose_protons_for_sigma(), + pid_p_min=pid_p_min, + pid_p_over_k_min=pid_p_over_k_min, + name='ProtonsForSigmaDecays_{hash}', + **requirements_for_protons_from_sigma(**kwargs)) + + +@configurable +def make_tight_protons_for_sigma(*, pid_p_min=10, pid_p_over_k_min=0, + **kwargs): + return filter_decay_products( + make_protons_for_sigma(), + pid_p_min=pid_p_min, + pid_p_over_k_min=pid_p_over_k_min, + name='TightProtonsForSigmaDecays_{hash}', + **tight_requirements_for_protons_from_sigma(**kwargs)) # @@ -782,6 +896,15 @@ def kplus_mass_bounds(mass_min=460 * MeV, mass_max=660 * MeV): return mass_min, mass_max +@configurable +def kplus_semileptonic_mass_bounds(mass_min=0. * MeV, mass_max=660 * MeV): + """ + Allow to define the same mass bounds for lines that select semileptonic + K+ decays + """ + return mass_min, mass_max + + @configurable def lambda0_mass_bounds(mass_min=1000 * MeV, mass_max=1200 * MeV): """ Allow to define the same mass bounds for many lines that select Lambda0 decays """ diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/qqbar_to_ll.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/qqbar_to_ll.py index 4ebd9e0d65f598ebeda4663b3bc64206ef6c4eb8..7d349bbb66552edce0a94e8e9f23aa8942644d4e 100755 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/qqbar_to_ll.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/qqbar_to_ll.py @@ -41,11 +41,8 @@ from PyConf import configurable from Moore.config import register_line_builder from Moore.lines import Hlt2Line from Hlt2Conf.lines.rd.builders.rdbuilder_thor import ( - make_rd_detached_mue, - make_rd_prompt_mue, - make_rd_prompt_dielectrons, - make_rd_prompt_dimuons, -) + make_rd_detached_mue, make_rd_prompt_mue, make_rd_prompt_dielectrons, + make_rd_prompt_dimuons) from Hlt2Conf.lines.rd.builders.qqbar_to_ll_builders import ( make_prompt_tautau, make_prompt_etau, @@ -56,6 +53,7 @@ from Hlt2Conf.lines.rd.builders.rd_prefilters import ( rd_prefilter, _VRD_MONITORING_VARIABLES, ) + import Functors as F from Hlt2Conf.lines.rd.builders.rd_isolation import parent_isolation_output @@ -211,10 +209,11 @@ def upsilon_to_mue_ss_line(name="Hlt2RD_UpsilonToMuE_SS", @register_line_builder(all_lines) @configurable def upsilonToTauTau_Line(name="Hlt2RD_UpsilonToTauTau", - prescale=0.1, + prescale=1, persistreco=False): """ - Definiton of [Upsilon(1S) -> tau- tau+]CC + Definiton of Upsilon(1S) -> tau- tau+ + As both taus are done with make_rd_tauons_hadronic_decay , there is no need of []]cc anywhere """ tautau = make_prompt_tautau( @@ -237,7 +236,7 @@ def upsilonToTauTau_Line(name="Hlt2RD_UpsilonToTauTau", @register_line_builder(all_lines) @configurable def upsilonToeTau_Line(name="Hlt2RD_UpsilonToTauE", - prescale=0.1, + prescale=1, persistreco=False): etau = make_prompt_etau( # name="Hlt2RD_UpsilonToTauE_Builder", @@ -258,7 +257,7 @@ def upsilonToeTau_Line(name="Hlt2RD_UpsilonToTauE", @register_line_builder(all_lines) @configurable def upsilonTomuTau_Line(name="Hlt2RD_UpsilonToTauMu", - prescale=0.1, + prescale=1, persistreco=False): mutau = make_prompt_mutau( # name="Hlt2RD_UpsilonToTauMu_Builder", @@ -268,8 +267,7 @@ def upsilonTomuTau_Line(name="Hlt2RD_UpsilonToTauMu", min_dilepton_pt=1.0 * GeV, min_pt_mu=1000 * MeV, # pi_pt_min=150 * MeV, - IsMuon=True, - ) + IsMuon=True) return Hlt2Line( name=name, @@ -456,10 +454,11 @@ def jpsi_to_ee_line(name="Hlt2RD_JpsiToEE", prescale=0.001, persistreco=False): def upsilon_to_ee_line(name="Hlt2RD_UpsilonToEE", prescale=0.1, persistreco=False): + #TODO : tightened it ? Maybe a cut on momentum ? ee = make_rd_prompt_dielectrons( parent_id="Upsilon(1S)", same_sign=False, - PIDe_min=2.0, + PIDe_min=3.0, pt_e_min=1.0 * GeV, min_dilepton_pt=1.0 * GeV, min_dilepton_mass=8000 * MeV, @@ -484,7 +483,6 @@ def upsilon_to_mumu_line(name="Hlt2RD_UpsilonToMuMu", # make_rd_detached_dimuons instead of make_rd_prompt_dimuons # in the line just below mumu = make_rd_prompt_dimuons( - name="Hlt2RD_UpsilonToMuMu_Builder", parent_id="Upsilon(1S)", same_sign=False, pid=F.require_all(F.PID_MU > 3.0, F.ISMUON), @@ -513,10 +511,19 @@ def upsilon_to_mumu_line(name="Hlt2RD_UpsilonToMuMu", @configurable def upsilon2_to_upsilon1pipi_tautau_line( name="Hlt2RD_Upsilon2ToUpsilon1PiPi_Upsilon1ToTauTau", - prescale=0.1, + prescale=1, persistreco=False): - upsilons1s = make_prompt_tautau() - upsilons2s = make_upsilons_to_upsilons(upsilons1s) + + upsilons1s = make_prompt_tautau( + parent_id="Upsilon(1S)", + min_dilepton_mass=8000.0 * MeV, + max_dilepton_mass=12000.0 * MeV, + min_dilepton_pt=1.0 * GeV, + # pi_pt_min=150 * MeV, + ) + + upsilons2s = make_upsilons_to_upsilons( + upsilons1s, useDTFMassConstraint=False) return Hlt2Line( name=name, algs=rd_prefilter() + [upsilons1s, upsilons2s @@ -532,8 +539,21 @@ def upsilon2_to_upsilon1pipi_mumu_line( name="Hlt2RD_Upsilon2ToUpsilon1PiPi_Upsilon1ToMuMu", prescale=1, persistreco=False): - upsilons1s = make_rd_prompt_dimuons() - upsilons2s = make_upsilons_to_upsilons(upsilons1s) + ## TODO : is it fine? should it be softened ? just copied from ->mumu + upsilons1s = make_rd_prompt_dimuons( + parent_id="Upsilon(1S)", + same_sign=False, + pid=F.require_all(F.PID_MU > 3.0, F.ISMUON), + pt_dimuon_min=1000.0 * MeV, + pt_muon_min=1000.0 * MeV, + p_muon_min=1000.0 * MeV, + adocachi2cut_max=30.0, + vchi2pdof_max=16.0, + am_min=7000.0 * MeV, + am_max=12000.0 * MeV, + ) + upsilons2s = make_upsilons_to_upsilons( + upsilons1s, useDTFMassConstraint=False) return Hlt2Line( name=name, algs=rd_prefilter() + [upsilons1s, upsilons2s @@ -550,8 +570,18 @@ def upsilon2_to_upsilon1pipi_ee_line( name="Hlt2RD_Upsilon2ToUpsilon1PiPi_Upsilon1ToEE", prescale=1, persistreco=False): - upsilons1s = make_rd_prompt_dielectrons() - upsilons2s = make_upsilons_to_upsilons(upsilons1s) + #TODO : tightened it ? Maybe a cut on momentum ? + upsilons1s = make_rd_prompt_dielectrons( + parent_id="Upsilon(1S)", + same_sign=False, + PIDe_min=3.0, + pt_e_min=1.0 * GeV, + min_dilepton_pt=1.0 * GeV, + min_dilepton_mass=8000 * MeV, + max_dilepton_mass=12000 * MeV, + ) + upsilons2s = make_upsilons_to_upsilons( + upsilons1s, useDTFMassConstraint=False) return Hlt2Line( name=name, algs=rd_prefilter() + [upsilons1s, upsilons2s diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/rare_tau_decay_lines.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/rare_tau_decay_lines.py index 66690db78776c446262eb2b1880cb6cb456b1a88..4fce3491466c9ba38d8b11d7557a51c484ecaf4c 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/rare_tau_decay_lines.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/rare_tau_decay_lines.py @@ -56,10 +56,16 @@ def tau_to_mumumu_line(name="Hlt2RD_TauToMuMuMu", prescale=1, persistreco=False): descriptor = "[tau+ -> mu+ mu+ mu-]cc" - muons = make_rd_detached_muons( - **track_cuts, pid=F.require_all(F.ISMUON, (F.PID_MU > 2))) + muons = make_rd_detached_muons(**track_cuts, pid=(F.PID_MU > 2)) tau = _make_tau_to_3body( - muons, muons, muons, descriptor, name="Hlt2RD_TauToMuMuMu_Builder") + muons, + muons, + muons, + descriptor, + pid_cut=F.ISMUON, + min_particle_with_pid=2, + name="Hlt2RD_TauToMuMuMu_Builder_{hash}", + max_ipchi2=225) return Hlt2Line( name=name, algs=rd_prefilter() + [tau], @@ -256,30 +262,31 @@ def tau_to_pmumu_line(name="Hlt2RD_TauToPMuMu", @register_line_builder(all_lines) @configurable -def tau_to_phimu_line(name="Hlt2RD_TauToPhiMu", - prescale=0.1, - persistreco=False): +def tau_to_phimu_line(name="Hlt2RD_TauToPhiMu", prescale=1, persistreco=False): """ Modified by Domenico Riccardi Contact: domenico.riccardi@cern.ch """ descriptor = "[tau+ -> phi(1020) mu+]cc" - muons = make_rd_detached_muons(**track_cuts, pid=F.ISMUON) + muons = make_rd_detached_muons( + **track_cuts, pid=F.require_all(F.ISMUON, (F.PID_MU > -5))) phis = make_rd_detached_phis( - am_min=990 * MeV, - am_max=1050 * MeV, + am_min=1000 * MeV, + am_max=1040 * MeV, k_pt_min=300 * MeV, k_ipchi2_min=4, k_pid=(F.PID_K > 4), - vchi2pdof_max=12) + vchi2pdof_max=4) tau = _make_tau_to_2body( phis, muons, descriptor, name="Hlt2RD_TauToPhiMu_Builder", - min_mass=1627 * MeV, + min_mass=1670 * MeV, max_mass=2040 * MeV, - max_ipchi2=30, + max_ipchi2=25, + max_vtxchi2dof=4, + min_pt=3000. * MeV, ) return Hlt2Line( @@ -316,7 +323,7 @@ def tau_to_5mu_line(name="Hlt2RD_TauTo5Mu", prescale=1, persistreco=False): @register_line_builder(all_lines) @configurable def tau_to_7mu_line(name="Hlt2RD_TauTo7Mu", prescale=1, persistreco=False): - descriptor = "[tau+ -> Xu+ Xu0]cc" + descriptor = "[tau+ -> mu+ mu+ mu+ mu+ mu- mu- mu-]cc" muons = make_rd_detached_muons( **track_cuts, pid=F.require_all(F.ISMUON, (F.PID_MU > 2))) muons_loose = make_rd_detached_muons(**track_cuts, pid=F.ISMUON) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/strange.py b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/strange.py index 3e560eeebb543917464a47ba4161bb8b8308b8d3..05e77427cc48fc4278118b9352eee8827a3b5291 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/strange.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/lines/rd/strange.py @@ -16,22 +16,33 @@ Lines to study strange decays: * KS0 -> l+(pi+) l-(pi-) l'+ l'- * [KS0 -> pi+ l- nu_l~]cc * [K+ -> pi+ l+ l-]cc +* [K+ -> pi- l+ l+]cc +* [K+ -> pi+ mu± e±]cc +* [K+ -> pi+ [mu+ e-]cc]cc * [Lambda0 -> p l- nu_l~]cc -* [Sigma+ -> p l(')+ l-]cc +* [Lambda0 -> p pi e e]cc +* [Lambda0 -> p pi]cc +* [Lambda0 -> p pi gamma]cc +* [Sigma+ -> p l+ l-]cc , [Sigma+ -> p~- mu+ mu+]cc +* [Sigma+ -> p+ pi0]cc , [Sigma+ -> p gamma]cc +* [Sigma+ -> p+ [mu+ e-]cc]cc +* Sigma+ -> p+ e+ e- e+ e- , Sigma+ -> p+ mu+ mu- e+ e- * [Xi0 -> p pi-]cc * [Xi- -> p pi- pi-]cc -* [Xi- -> Lambda0 l- \nu_l~]cc +* [Xi- -> Lambda0 l- nu_l~]cc * [Omega- -> Lambda0 pi-]cc -* [Omega- -> Xi- l+ l-]cc -* [Omega- -> Xi- pi+ pi-]cc -* [Omega- -> Xi- gamma]cc Contacts: - Miguel Ramos Pernas (miguel.ramos.pernas@cern.ch) - Sergio Arguedas Cuendis (sergio.arguedas.cuendis@cern.ch) - Frank Xiangyu Liu (frank.liu@monash.edu) +- Francesca Dordei (francesca.dordei@cern.ch) +- Francesco Dettori (francesco.dettori@cern.ch) +- Daniele Provenzano (daniele.provenzano@cern.ch) + """ + from Hlt2Conf.lines.rd.builders.rd_prefilters import rd_prefilter from Hlt2Conf.lines.rd.builders import strange_builders from Moore.config import register_line_builder @@ -248,7 +259,7 @@ def ks02emu_ss_line(name="Hlt2RD_KS0ToEMu_SS", prescale=1): { 'KS0': ks0 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -285,7 +296,7 @@ def ks02ee_ss_line(name="Hlt2RD_KS0ToEE_SS", prescale=1): @register_line_builder(control_lines) @configurable -def ks02pimu_line(name="Hlt2RD_KS0ToPiMu", prescale=1e-1): +def ks02pimu_line(name="Hlt2RD_KS0ToPiMu", prescale=1e-2): """ Select [KS0 -> pi+ mu- (nu_mu~)]cc candidates """ @@ -488,7 +499,7 @@ def ks02pipiee_line(name="Hlt2RD_KS0ToPiPiEE_Loose", prescale=1): @register_line_builder(control_lines) @configurable -def lambda02ppi_line(name="Hlt2RD_Lambda0ToPPi", prescale=1e-5): +def lambda02ppi_line(name="Hlt2RD_Lambda0ToPPi", prescale=1e-3): """ Control mode for analyses using Lambda0 decays """ l0 = strange_builders.build_lambda0() return Hlt2Line( @@ -507,7 +518,7 @@ def lambda02ppi_line(name="Hlt2RD_Lambda0ToPPi", prescale=1e-5): @register_line_builder(control_lines) @configurable -def lambda02ppi_DS_line(name="Hlt2RD_Lambda0ToPPi_Downstream", prescale=1): +def lambda02ppi_DS_line(name="Hlt2RD_Lambda0ToPPi_Downstream", prescale=1e-3): """ Control mode for analyses using downstream Lambda0 decays """ l0 = strange_builders.build_downstream_lambda0() return Hlt2Line( @@ -525,7 +536,7 @@ def lambda02ppi_DS_line(name="Hlt2RD_Lambda0ToPPi_Downstream", prescale=1): @register_line_builder(control_lines) @configurable -def lambda02ppi_tight_line(name="Hlt2RD_Lambda0ToPPi_Tight", prescale=1e-3): +def lambda02ppi_tight_line(name="Hlt2RD_Lambda0ToPPi_Tight", prescale=1e-1): """ Control mode for analyses using Lambda0 decays """ l0 = strange_builders.build_tight_lambda0() return Hlt2Line( @@ -545,7 +556,7 @@ def lambda02ppi_tight_line(name="Hlt2RD_Lambda0ToPPi_Tight", prescale=1e-3): @register_line_builder(control_lines) @configurable def lambda02ppi_tight_DS_line(name="Hlt2RD_Lambda0ToPPi_Tight_Downstream", - prescale=1): + prescale=1e-2): """ Control mode for analyses using downstream Lambda0 decays """ l0 = strange_builders.build_tight_downstream_lambda0() return Hlt2Line( @@ -561,54 +572,6 @@ def lambda02ppi_tight_DS_line(name="Hlt2RD_Lambda0ToPPi_Tight_Downstream", ) -@register_line_builder(control_lines) -@configurable -def sigmaplus2ppi0_resolved_line(name="Hlt2RD_SigmaPlusToPPi0Resolved", - prescale=1e-3): - """ Normalization mode for Sigma+ decays """ - protons = strange_builders.make_protons() - pi0 = strange_builders.make_resolved_neutral_pions() - sigma = strange_builders.make_combination( - '[Sigma+ -> p+ pi0]cc', [protons, pi0], - mass_range=strange_builders.sigma_mass_bounds(), - build_requirements=strange_builders. - requirements_for_neutral_combination_no_vertex, - can_reco_vertex=False, - name=f'{name}_Combiner') - return Hlt2Line( - name=name, - algs=rd_prefilter() + [sigma], - prescale=prescale, - monitoring_variables=strange_builders. - MONITORING_VARIABLES_CONTROL_NO_VERTEX, - raw_banks=['VP', 'Calo'], - ) - - -@register_line_builder(control_lines) -@configurable -def sigmaplus2ppi0_merged_line(name="Hlt2RD_SigmaPlusToPPi0Merged", - prescale=1): - """ Normalization mode for Sigma+ decays """ - protons = strange_builders.make_protons() - pi0 = strange_builders.make_merged_neutral_pions() - sigma = strange_builders.make_combination( - '[Sigma+ -> p+ pi0]cc', [protons, pi0], - mass_range=strange_builders.sigma_mass_bounds(), - build_requirements=strange_builders. - requirements_for_neutral_combination_no_vertex, - can_reco_vertex=False, - name=f'{name}_Combiner') - return Hlt2Line( - name=name, - algs=rd_prefilter() + [sigma], - prescale=prescale, - monitoring_variables=strange_builders. - MONITORING_VARIABLES_CONTROL_NO_VERTEX, - raw_banks=['VP', 'Calo'], - ) - - @register_line_builder(control_lines) @configurable def xi02l0pi0_resolved_line(name="Hlt2RD_Xi0ToLambdaPi0Resolved_Tight", @@ -934,7 +897,7 @@ def ks02emu_line(name="Hlt2RD_KS0ToEMu"): { 'KS0': ks0 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -970,6 +933,7 @@ def ks02ee_line(name="Hlt2RD_KS0ToEE"): { 'KS0': ks0 }, tracks_with_velo_segment=True), + raw_banks=['Calo'], ) @@ -1171,7 +1135,7 @@ def ks02mumuee_line(name="Hlt2RD_KS0ToMuMuEE_Loose"): { 'KS0': ks0 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -1208,6 +1172,7 @@ def ks02eeee_line(name="Hlt2RD_KS0ToEEEE_Loose"): { 'KS0': ks0 }, tracks_with_velo_segment=True), + raw_banks=['Muon', 'Calo'], ) @@ -1240,7 +1205,7 @@ def ks02mumuemu_line(name="Hlt2RD_KS0ToMuMuEMu_Loose"): { 'KS0': ks0 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -1324,7 +1289,7 @@ def ks02mumuee_intermediate_neutral_line( 'X02': x02 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -1368,6 +1333,7 @@ def ks02eeee_intermediate_neutral_line( 'KS0': ks0, 'X0': x0 }, tracks_with_velo_segment=True), + raw_banks=['Calo'], ) @@ -1420,7 +1386,7 @@ def ks02mumuemu_intermediate_neutral_line( 'X02': x02 }, tracks_with_velo_segment=True), - raw_banks=['Muon'], + raw_banks=['Muon', 'Calo'], ) @@ -1460,6 +1426,34 @@ def kplus2pimumu_line(name="Hlt2RD_KpToPiMuMu"): ) +@register_line_builder(signal_lines) +@configurable +def kplus2piminusmumu_line(name="Hlt2RD_KpToPiMinusMuMu"): + """ + Select [K+ -> pi- mu+ mu+]cc candidates + + """ + pions = strange_builders.make_pions() + muons = strange_builders.make_muons() + kplus = strange_builders.make_combination( + '[K+ -> mu+ mu+ pi-]cc', [muons, muons, pions], + build_requirements=strange_builders. + requirements_for_prompt_combination, + mass_range=strange_builders.kplus_mass_bounds(), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kplus], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Kplus': kplus + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Muon'], + ) + + @register_line_builder(signal_lines) @configurable def kplus2piee_line(name="Hlt2RD_KpToPiEE"): @@ -1492,7 +1486,131 @@ def kplus2piee_line(name="Hlt2RD_KpToPiEE"): { 'Kplus': kplus }, tracks_with_velo_segment=True), - raw_banks=['VP'], + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def kplus2piminusee_line(name="Hlt2RD_KpToPiMinusEE"): + """ + Select [K+ -> pi- e+ e+]cc candidates + """ + pions = strange_builders.make_pions() + mass_min, mass_max = strange_builders.kplus_mass_bounds() + dielectron = strange_builders.make_dielectron( + SHORT_LIVED, + mass_range=(strange_builders.dielectron_min_mass(), mass_max), + opposite_sign=False, + electron_builder=strange_builders.make_electrons) + kplus = strange_builders.make_combination( + f'[K+ -> {SHORT_LIVED} pi-]cc', [dielectron, pions], + build_requirements=strange_builders. + loose_requirements_for_prompt_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kplus], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Kplus': kplus + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def Kplus2piemu_line(name="Hlt2RD_KpToPiEMu"): + """ + Select [K+ -> pi+ [mu+ e-]cc]cc candidates + + """ + pions = strange_builders.make_pions() + muons = strange_builders.make_muons() + electrons = strange_builders.make_electrons(add_brem=True) + mass_min, mass_max = strange_builders.kplus_mass_bounds() + x0 = strange_builders.make_combination( + f'[{SHORT_LIVED} -> mu+ e-]cc', [muons, electrons], + build_requirements=strange_builders.NO_REQUIREMENTS, + mass_range=(0., mass_max), + name=f'{name}_IntermediateNeutral_Combiner') + kplus = strange_builders.make_combination( + f'[K+ -> pi+ {SHORT_LIVED}]cc', [pions, x0], + build_requirements=strange_builders. + requirements_for_prompt_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kplus], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Kplus': kplus + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Muon', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def kplus2pipimunu_line(name="Hlt2RD_KpToPiPiMuNu"): + """ + Select [K+ -> pi+ pi- mu+ nu_mu]cc candidates + + """ + pions = strange_builders.make_pions() + muons = strange_builders.make_muons(pid_mu_min=10.) + kplus = strange_builders.make_combination( + '[K+ -> mu+ pi+ pi-]cc', [muons, pions, pions], + build_requirements=strange_builders. + requirements_for_detached_combination, + mass_range=strange_builders.kplus_semileptonic_mass_bounds(), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kplus], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Kplus': kplus + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Muon'], + ) + + +@register_line_builder(signal_lines) +@configurable +def kplus2pipienu_line(name="Hlt2RD_KpToPiPiENu", prescale=1e-1): + """ + Select [K+ -> pi+ pi- e+ nu_e]cc candidates + + """ + pions = strange_builders.make_pions() + electrons = strange_builders.make_electrons(pid_e_min=10.) + kplus = strange_builders.make_combination( + '[K+ -> e+ pi+ pi-]cc', [electrons, pions, pions], + build_requirements=strange_builders. + requirements_for_detached_combination, + mass_range=strange_builders.kplus_semileptonic_mass_bounds(), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [kplus], + prescale=prescale, + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Kplus': kplus + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Calo'], ) @@ -1579,7 +1697,8 @@ def lambda02ppiee_line(name="Hlt2RD_Lambda0ToPPiEE_Tight"): dielectron = strange_builders.make_dielectron( SHORT_LIVED, - mass_range=(strange_builders.dielectron_min_mass(), mass_max), + # the small phase-space available forces us to start at zero + mass_range=(0., mass_max), electron_builder=strange_builders.make_tight_electrons) l0 = strange_builders.make_combination( @@ -1598,6 +1717,39 @@ def lambda02ppiee_line(name="Hlt2RD_Lambda0ToPPiEE_Tight"): { 'Lambda0': l0 }, tracks_with_velo_segment=True), + raw_banks=['Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def lambda02ppigamma_line(name="Hlt2RD_Lambda0ToPPiGamma", prescale=1e-1): + """ + Select [Lambda0 -> p+ pi- gamma]cc candidates + + """ + protons = strange_builders.make_protons() + pions = strange_builders.make_pions() + mass_min, mass_max = strange_builders.lambda0_mass_bounds() + photons = strange_builders.make_tight_photons() + l0 = strange_builders.make_combination( + '[Lambda0 -> p+ pi- gamma]cc', [protons, pions, photons], + build_requirements=strange_builders. + requirements_for_detached_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [l0], + prescale=prescale, + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Lambda0': l0 + }, tracks_with_velo_segment=True), + raw_banks=['Calo'], ) @@ -1618,12 +1770,40 @@ def sigmaplus2pmumu_line(name="Hlt2RD_SigmaPlusToPMuMu"): - Hlt2RD_SigmaPlusToPPi0Merged_Tight => normalization - Hlt2RD_KpToPiPiPi => control """ - protons = strange_builders.make_protons() - muons = strange_builders.make_muons() + protons = strange_builders.make_loose_protons_for_sigma() + muons = strange_builders.make_muons_for_sigma() sigma = strange_builders.make_combination( '[Sigma+ -> p+ mu+ mu-]cc', [protons, muons, muons], build_requirements=strange_builders. - requirements_for_prompt_combination, + requirements_for_prompt_sigma_combination, + mass_range=strange_builders.sigma_mass_bounds(), + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Sigmaplus': sigma + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Muon'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2antipmumu_line(name="Hlt2RD_SigmaPlusToAntiPMuMu"): + """ + Select [Sigma+ -> p~- mu+ mu+]cc candidates + + """ + protons = strange_builders.make_loose_protons_for_sigma() + muons = strange_builders.make_muons_for_sigma() + sigma = strange_builders.make_combination( + '[Sigma+ -> p~- mu+ mu+]cc', [protons, muons, muons], + build_requirements=strange_builders. + requirements_for_prompt_sigma_combination, mass_range=strange_builders.sigma_mass_bounds(), name=f'{name}_Combiner') return Hlt2Line( @@ -1651,10 +1831,8 @@ def sigmaplus2pee_line(name="Hlt2RD_SigmaPlusToPEE"): - Hlt2RD_SigmaPlusToPPi0Merged_Tight => normalization - Hlt2RD_KpToPiPiPi => control """ - protons = strange_builders.make_protons() - + protons = strange_builders.make_loose_protons_for_sigma() mass_min, mass_max = strange_builders.sigma_mass_bounds() - dielectron = strange_builders.make_dielectron( SHORT_LIVED, mass_range=(strange_builders.dielectron_min_mass(), mass_max), @@ -1663,7 +1841,7 @@ def sigmaplus2pee_line(name="Hlt2RD_SigmaPlusToPEE"): sigma = strange_builders.make_combination( f'[Sigma+ -> p+ {SHORT_LIVED}]cc', [protons, dielectron], build_requirements=strange_builders. - requirements_for_prompt_combination, + requirements_for_prompt_sigma_combination, mass_range=(mass_min, mass_max), name=f'{name}_Combiner') @@ -1676,7 +1854,67 @@ def sigmaplus2pee_line(name="Hlt2RD_SigmaPlusToPEE"): { 'Sigmaplus': sigma }, tracks_with_velo_segment=True), - raw_banks=['VP'], + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2pee_detached_line(name="Hlt2RD_SigmaPlusToPEE_Detached"): + """ + Select [Sigma+ -> p+ (gamma -> e+ e-)]cc candidates + + """ + protons = strange_builders.make_protons_for_sigma() + mass_min, mass_max = strange_builders.sigma_mass_bounds() + gamma = strange_builders.build_loose_dielectron_intermediate_neutral( + LONG_LIVED_ALT, mass_max=mass_max) + + sigma = strange_builders.make_combination( + f'[Sigma+ -> p+ {LONG_LIVED_ALT}]cc', [protons, gamma], + build_requirements=strange_builders. + requirements_for_prompt_sigma_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Sigmaplus': sigma, + 'Gamma': gamma + }, + tracks_with_velo_segment=True), + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2pgamma_line(name="Hlt2RD_SigmaPlusToPGamma", prescale=1e-3): + """ + Select [Sigma+ -> p+ gamma]cc candidates + Normalization mode for Sigma+ decays + """ + protons = strange_builders.make_tight_protons_for_sigma() + photons = strange_builders.make_tight_photons() + sigma = strange_builders.make_combination( + '[Sigma+ -> p+ gamma]cc', [protons, photons], + mass_range=strange_builders.sigma_mass_bounds(), + build_requirements=strange_builders. + requirements_for_sigma_decay_neutral_combination_no_vertex, + can_reco_vertex=False, + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + prescale=prescale, + monitoring_variables=strange_builders. + MONITORING_VARIABLES_SEARCH_NO_VERTEX, + raw_banks=['VP', 'Calo'], ) @@ -1692,8 +1930,8 @@ def sigmaplus2pemu_line(name="Hlt2RD_SigmaPlusToPEMu"): - Hlt2RD_SigmaPlusToPPi0Merged_Tight => normalization - Hlt2RD_KpToPiPiPi => control """ - protons = strange_builders.make_protons() - muons = strange_builders.make_muons() + protons = strange_builders.make_loose_protons_for_sigma() + muons = strange_builders.make_muons_for_sigma() electrons = strange_builders.make_electrons(add_brem=True) mass_min, mass_max = strange_builders.sigma_mass_bounds() x0 = strange_builders.make_combination( @@ -1704,7 +1942,7 @@ def sigmaplus2pemu_line(name="Hlt2RD_SigmaPlusToPEMu"): sigma = strange_builders.make_combination( f'[Sigma+ -> p+ {SHORT_LIVED}]cc', [protons, x0], build_requirements=strange_builders. - requirements_for_prompt_combination, + requirements_for_prompt_sigma_combination, mass_range=(mass_min, mass_max), name=f'{name}_Combiner') return Hlt2Line( @@ -1716,7 +1954,114 @@ def sigmaplus2pemu_line(name="Hlt2RD_SigmaPlusToPEMu"): { 'Sigmaplus': sigma }, tracks_with_velo_segment=True), - raw_banks=['VP', 'Muon'], + raw_banks=['VP', 'Muon', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2peeee_line(name="Hlt2RD_SigmaPlusToPEEEE"): + """ + Select Sigma+ -> p+ e+ e- e+ e- candidates + """ + protons = strange_builders.make_loose_protons_for_sigma() + mass_min, mass_max = strange_builders.sigma_mass_bounds() + electrons = strange_builders.make_electrons() + sigma = strange_builders.make_combination( + 'Sigma+ -> p+ e+ e+ e- e-', + [protons, electrons, electrons, electrons, electrons], + build_requirements=strange_builders. + requirements_for_prompt_sigma_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Sigmaplus': sigma + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2pmumuee_line(name="Hlt2RD_SigmaPlusToPMuMuEE"): + """ + Select Sigma+ -> p+ mu+ mu- e+ e- candidates + """ + protons = strange_builders.make_loose_protons_for_sigma() + mass_min, mass_max = strange_builders.sigma_mass_bounds() + muons = strange_builders.make_muons_for_sigma() + electrons = strange_builders.make_electrons() + sigma = strange_builders.make_combination( + 'Sigma+ -> p+ mu+ mu- e+ e-', + [protons, muons, muons, electrons, electrons], + build_requirements=strange_builders. + requirements_for_prompt_sigma_combination, + mass_range=(mass_min, mass_max), + name=f'{name}_Combiner') + + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, + extra_outputs=strange_builders. + define_impact_parameter_chi2_based_isolation( + { + 'Sigmaplus': sigma + }, tracks_with_velo_segment=True), + raw_banks=['VP', 'Muon', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2ppi0_resolved_line(name="Hlt2RD_SigmaPlusToPPi0Resolved", + prescale=1e-3): + """ Normalization mode for Sigma+ decays """ + protons = strange_builders.make_tight_protons_for_sigma() + pi0 = strange_builders.make_resolved_neutral_pions() + sigma = strange_builders.make_combination( + '[Sigma+ -> p+ pi0]cc', [protons, pi0], + mass_range=strange_builders.sigma_mass_bounds(), + build_requirements=strange_builders. + requirements_for_sigma_decay_neutral_combination_no_vertex, + can_reco_vertex=False, + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + prescale=prescale, + monitoring_variables=strange_builders. + MONITORING_VARIABLES_SEARCH_NO_VERTEX, + raw_banks=['VP', 'Calo'], + ) + + +@register_line_builder(signal_lines) +@configurable +def sigmaplus2ppi0_merged_line(name="Hlt2RD_SigmaPlusToPPi0Merged"): + """ Normalization mode for Sigma+ decays """ + protons = strange_builders.make_loose_protons_for_sigma() + pi0 = strange_builders.make_merged_neutral_pions() + sigma = strange_builders.make_combination( + '[Sigma+ -> p+ pi0]cc', [protons, pi0], + mass_range=strange_builders.sigma_mass_bounds(), + build_requirements=strange_builders. + requirements_for_sigma_decay_neutral_combination_no_vertex, + can_reco_vertex=False, + name=f'{name}_Combiner') + return Hlt2Line( + name=name, + algs=rd_prefilter() + [sigma], + monitoring_variables=strange_builders. + MONITORING_VARIABLES_SEARCH_NO_VERTEX, + raw_banks=['VP', 'Calo'], ) @@ -1759,7 +2104,7 @@ def xi02ppi_line(name="Hlt2RD_Xi0ToPPi_Tight"): @register_line_builder(signal_lines) @configurable -def xi02ppi_DS_line(name="Hlt2RD_Xi0ToPPi_Tight_Downstream"): +def xi02ppi_DS_line(name="Hlt2RD_Xi0ToPPi_Tight_Downstream", prescale=1e-1): """ Select [Xi0 -> p+ pi-]cc downstream candidates @@ -1780,6 +2125,7 @@ def xi02ppi_DS_line(name="Hlt2RD_Xi0ToPPi_Tight_Downstream"): return Hlt2Line( name=name, algs=rd_prefilter() + [xi], + prescale=prescale, monitoring_variables=strange_builders.MONITORING_VARIABLES_SEARCH, extra_outputs=strange_builders. define_impact_parameter_chi2_based_isolation({ @@ -1917,7 +2263,7 @@ def ximinus2l0e_line(name="Hlt2RD_XiMinusToLambdaE_Tight"): { 'Ximinus': xi }, tracks_with_velo_segment=True), - raw_banks=['VP'], + raw_banks=['VP', 'Calo'], ) @@ -2099,7 +2445,7 @@ def omegaminus2xiee_line(name="Hlt2RD_OmegaMinusToXiMinusEE"): 'Lambda0': l0, }, tracks_with_velo_segment=True), - raw_banks=['VP'], + raw_banks=['VP', 'Calo'], ) diff --git a/Hlt/Hlt2Conf/python/Hlt2Conf/standard_particles.py b/Hlt/Hlt2Conf/python/Hlt2Conf/standard_particles.py index 8837358e7d6da6c8ee739c4384fc5bc3e543fbd1..18f5848b73742cd823455cc20cf9e3db59c324c8 100644 --- a/Hlt/Hlt2Conf/python/Hlt2Conf/standard_particles.py +++ b/Hlt/Hlt2Conf/python/Hlt2Conf/standard_particles.py @@ -938,7 +938,7 @@ def make_detached_mue_with_brem(name='std_make_detached_mue_with_brem_{hash}', pvs = pv_maker() electrons = filter_leptons_loose( - particles=make_long_electrons_no_brem(), + particles=make_long_electrons_with_brem(), lepton='electron', fake=bool(fake_electrons), pt_min=min_pt_e,