6.1.1. Standard Particles¶
Warning
Construction site!
At the moment, we are in a strange situation where some of the standard particle lists are actually not recommended for use with recent data processings.
However, some of these lists have been tested and can be used.
Tip
The following pi0
and V0
standard lists are good (i.e. recommended for use):
However, please check this Neutrals Performance confluence page for the latest updates.
Tip
The following standard lepton lists are good (i.e. recommended for use):
for a choice of the input listtype
parameter among:
‘UniformEff60’
‘UniformEff70’
‘UniformEff80’
‘UniformEff90’
‘UniformEff95’
However, please check the Lepton ID Performance confluence page for the latest updates.
The ultimate goal is that these standard particle lists will provide recommended selection criteria for final-state particles, and in some cases, for composite particles. The recommended selections will be provided by the performance group(s). Furthermore the intention is that systematics will be provided centrally for these recommended lists. For information about their status, please see BII-4105.
There are also some skimming, development and legacy lists available. These are specifically for use in skims, for study, or for comparison with Belle and old simulations. If you don’t know that you specifically need these legacy/skim lists, then avoid them.
Default final-state particle list builder functions¶
- stdPi0s.stdPi0s(listtype='eff60_May2020', path=None, loadPhotonBeamBackgroundMVA=False)[source]¶
Function to prepare one of several standardized types of pi0 lists:
‘all’ using gamma:all
‘eff10_May2020’ gamma:pi0eff10_May2020, mass range selection, 10% pi0 efficiency list, optimized in May 2020
‘eff20_May2020’ gamma:pi0eff20_May2020, mass range selection, 20% pi0 efficiency list, optimized in May 2020
‘eff30_May2020’ gamma:pi0eff30_May2020, mass range selection, 30% pi0 efficiency list, optimized in May 2020
‘eff40_May2020’ gamma:pi0eff40_May2020, mass range selection, 40% pi0 efficiency list, optimized in May 2020
‘eff50_May2020’ gamma:pi0eff50_May2020, mass range selection, 50% pi0 efficiency list, optimized in May 2020
‘eff60_May2020’ gamma:pi0eff60_May2020, mass range selection, 60% pi0 efficiency list, optimized in May 2020
You can also append “Fit” to the listtype which will run a mass fit and require that the fit did not fail. For example: “pi0:eff50_May2020Fit” is the 50% efficiency list plus a not-failing mass fit.
- Parameters
listtype (str) – name of standard list
path (basf2.Path) – modules are added to this path
loadPhotonBeamBackgroundMVA (bool) – If true, photon candidates will be assigned a beam background probability.
- stdV0s.stdKshorts(prioritiseV0=True, fitter='TreeFit', path=None)[source]¶
Load a combined list of the Kshorts list from V0 objects merged with a list of particles combined using the analysis ParticleCombiner module.
The ParticleList is named
K_S0:merged
. A vertex fit is performed and only candidates with an invariant mass in the range \(0.450 < M < 0.550~GeV\), and for which the vertex fit did not fail, are kept.The vertex fitter can be selected among
TreeFit
,KFit
, andRave
.- Parameters
prioritiseV0 (bool) – should the V0 mdst objects be prioritised when merging?
fitter (str) – vertex fitter name, valid options are
TreeFit
,KFit
, andRave
.path (basf2.Path) – the path to load the modules
- stdV0s.stdLambdas(prioritiseV0=True, fitter='TreeFit', path=None)[source]¶
Load a combined list of the Lambda list from V0 objects merged with a list of particles combined using the analysis ParticleCombiner module.
The ParticleList is named
Lambda0:merged
. A vertex fit is performed and only candidates with an invariant mass in the range \(1.10 < M < 1.13~GeV\), and for which the vertex fit did not fail, are kept.The vertex fitter can be selected among
TreeFit
,KFit
, andRave
.- Parameters
prioritiseV0 (bool) – should the V0 mdst objects be prioritised when merging?
fitter (str) – vertex fitter name, valid options are
TreeFit
,KFit
, andRave
.path (basf2.Path) – the path to load the modules
- stdCharged.stdE(listtype='good', method=None, classification=None, path=None)[source]¶
Function to prepare one of several standardized types of electron lists. See the documentation of
stdLep
for details.It also accepts any of the legacy definitions for the
listtype
parameter to fall back to thestdCharged
behaviour:‘all’
‘good’
‘loosepid’
‘loose’
‘higheff’
‘95eff’
‘90eff’
‘85eff’
- stdCharged.stdMu(listtype='good', method=None, classification=None, path=None)[source]¶
Function to prepare one of several standardized types of muon lists. See the documentation of
stdLep
for details.It also accepts any of the legacy definitions for the
listtype
parameter to fall back to thestdCharged
behaviour:‘all’
‘good’
‘loosepid’
‘loose’
‘higheff’
‘95eff’
‘90eff’
‘85eff’
- stdCharged.stdLep(pdgId, listtype, method, classification, path=None)[source]¶
Function to prepare one of several standardized types of lepton (\(e,\mu\)) lists:
‘UniformEff60’ 60% lepton efficiency list, uniform in a given multi-dimensional parametrisation.
‘UniformEff70’ 70% lepton efficiency list, uniform in a given multi-dimensional parametrisation.
‘UniformEff80’ 80% lepton efficiency list, uniform in a given multi-dimensional parametrisation.
‘UniformEff90’ 90% lepton efficiency list, uniform in a given multi-dimensional parametrisation.
‘UniformEff95’ 95% lepton efficiency list, uniform in a given multi-dimensional parametrisation.
The function will select particles according to the chosen
listtype
, and decorate each candidate with the nominal Data/MC \(\ell\) ID efficiency and \(\pi,K\) fake rate correction factors and their stat, syst uncertainty, reading the info from the Conditions Database.- Parameters
pdgId (int) – the lepton pdg code.
listtype (str) – name of standard list. Choose among the above values.
method (str) – the PID method: ‘likelihood’ or ‘bdt’.
classification (str) – the type of classifier: ‘binary’ (one-vs-pion) or ‘global’ (one-vs-all).
path (basf2.Path) – modules are added to this path.
Not (yet) recommended final-state particle list builder functions¶
Warning
Unfortunately these lists are not yet recommended for use with recent data processings.
- stdPhotons.stdPhotons(listtype='loose', path=None, loadPhotonBeamBackgroundMVA=False)[source]¶
Function to prepare one of several standardized types of photon lists:
‘gamma:all’ with no cuts this will be polluted by tracks from outside the acceptance
‘gamma:cdc’ all clusters inside the CDC tracking acceptance
‘gamma:loose’ (default) with some loose quality selections
‘gamma:tight’ like loose but with higher energy cuts depending on detector regions
‘gamma:pi0eff60_May2020’ gamma list for 60% pi0 efficiency list, optimized in May 2020
‘gamma:pi0eff50_May2020’ gamma list for 50% pi0 efficiency list, optimized in May 2020
‘gamma:pi0eff40_May2020’ gamma list for 40% pi0 efficiency list, optimized in May 2020
‘gamma:pi0eff30_May2020’ gamma list for 30% pi0 efficiency list, optimized in May 2020
‘gamma:pi0eff20_May2020’ gamma list for 20% pi0 efficiency list, optimized in May 2020
‘gamma:pi0eff10_May2020’ gamma list for 10% pi0 efficiency list, optimized in May 2020
‘gamma:pi0’ gamma list for pi0 list
‘gamma:pi0highE’ gamma list for pi0 list, high energy selection
For latest pi0 recommendations see https://confluence.desy.de/display/BI/Neutrals+Performance
- Parameters
listtype (str) – name of standard list
path (basf2.Path) – modules are added to this path
loadPhotonBeamBackgroundMVA (bool) – If true, photon candidates will be assigned a beam background probability.
- stdCharged.stdPi(listtype='good', path=None)[source]¶
Function to prepare standard pion lists, refer to
stdCharged
for details- Parameters
listtype – name of standard list
path – modules are added to this path
- stdCharged.stdK(listtype='good', path=None)[source]¶
Function to prepare standard kaon lists, refer to
stdCharged
for details- Parameters
listtype – name of standard list
path – modules are added to this path
- stdCharged.stdPr(listtype='good', path=None)[source]¶
Function to prepare standard proton lists, refer to
stdCharged
for details- Parameters
listtype – name of standard list
path – modules are added to this path
Other functions available¶
Warning
These other functions are not recommended for normal use without some study of the selection, or if you are working on skimming. If you use and improve these lists, please report in a performance meeting and make a pull request.
- stdCharged.stdCharged(particletype, listtype, path)[source]¶
- Function to prepare one of several standardized types of charged particle lists:
‘all’ with no cuts on track
‘good’ high purity lists for data studies
‘loosepid’ loose selections for skimming, PID cut only
‘loose’ loose selections for skimming
‘higheff’ high efficiency list with loose global ID cut for data studies
‘mostlikely’ list with the highest PID likelihood
- Also the following lists, which may or may not be available depending on the release
‘99eff’ with 99% selection efficiency (calculated for 1<p<4 GeV) and good track (MC only)
‘95eff’ with 95% selection efficiency (calculated for 1<p<4 GeV) and good track (MC only)
‘90eff’ with 90% selection efficiency (calculated for 1<p<4 GeV) and good track (MC only)
‘85eff’ with 85% selection efficiency (calculated for 1<p<4 GeV) and good track (MC only)
- Parameters
particletype – type of charged particle to make a list of
listtype – name of standard list
path – modules are added to this path
- stdCharged.stdMostLikely(pidPriors=None, suffix='', custom_cuts='', path=None)[source]¶
Function to prepare most likely particle lists according to PID likelihood, refer to stdCharged for details
- Parameters
pidPriors – list of 6 float numbers used to reweight PID likelihoods
suffix – string added to the end of particle list names
custom_cuts – custom selection cut string, if empty, standard track quality cuts will be applied
path – modules are added to this path
- stdPhotons.loadStdGoodBellePhoton(path)[source]¶
Load the Belle goodBelle list. Creates a ParticleList named ‘gamma:goodBelle’ with ‘0.5 <
goodBelleGamma
< 1.5’Warning
Should only be used for Belle analyses using B2BII.
- Parameters
path (basf2.Path) – the path to load the modules
- stdPhotons.loadStdSkimPhoton(path)[source]¶
Function to prepare the skim photon lists.
Warning
Should only be used by skims.
- Parameters
path (basf2.Path) – modules are added to this path
- stdPi0s.loadStdSkimHighEffPi0(path)[source]¶
Function to prepare the high-efficiency skim pi0 lists based on eff60_May2020 list.
Warning
Should only be used by skims.
- Parameters
path (basf2.Path) –
- stdPi0s.loadStdSkimPi0(path)[source]¶
Function to prepare the skim pi0 lists.
Warning
Should only be used by skims.
- Parameters
path (basf2.Path) –
- stdV0s.goodBelleKshort(path)[source]¶
Load the Belle goodKshort list. Creates a ParticleList named
K_S0:legacyGoodKS
. A vertex fit is performed and only candidates that satisfy thegoodBelleKshort
criteria, with an invariant mass in the range \(0.468 < M < 0.528~GeV\), and for which the vertex fit did not fail, are kept- Parameters
path (basf2.Path) – the path to load the modules
- stdKlongs.stdKlongs(listtype='allklm', path=None)[source]¶
Warning
This function is a placeholder for Klong selections. Currently everything but the ‘allklm’ list is disabled pending study.
Prepares the ‘K_L0:allklm’ list with no cuts (all KLM clusters are loaded).
- Parameters
listtype (str) – name of standard list options (currently only ‘all’ is supported/recommended)
path (basf2.Path) – modules are added to this path
- stdHyperons.goodOmega(omegatype='loose', path=None)[source]¶
Select the standard good \(\Omega^-\)
ParticleList
namedOmega-:veryloose
,Omega-:loose
, orOmega-:tight
from the reconstructedOmega-:std
.See also
- Parameters
omegatype (str) – specify either
veryloose
,loose
, ortight
for goodParticleList
selection (defaultveryloose
)path (basf2.Path) – modules are added to this path building the
Omega-:veryloose
,Omega-:loose
, orOmega-:tight
, list
- stdHyperons.goodXi(xitype='loose', path=None)[source]¶
Select the standard good \(\Xi^-\)
ParticleList
namedXi-:veryloose
,Xi-:loose
, orXi-:tight
from the reconstructedXi-:std
.See also
- Parameters
xitype (str) – specify either
veryloose
,loose
, ortight
for goodParticleList
selection (defaultloose
)path (basf2.Path) – modules are added to this path building the
Xi-:veryloose
,Xi-:loose
, orXi-:tight
, list
- stdHyperons.goodXi0(xitype='loose', path=None)[source]¶
Select the standard good \(\Xi^0\)
ParticleList
namedXi0:veryloose
,Xi0:loose
, orXi0:tight
from the reconstructedXi0:std
.See also
- Parameters
xitype (str) – specify either
veryloose
,loose
, ortight
for goodParticleList
selection (defaultloose
)path (basf2.Path) – modules are added to this path building the
Xi0:veryloose
,Xi0:loose
, orXi0:tight
, list
- stdHyperons.stdOmega(fitter='TreeFit', path=None)[source]¶
Reconstruct the standard \(\Omega^-\)
ParticleList
namedOmega-:std
.See also
- Parameters
fitter (str) – specify either
KFit
orTreeFit
for the vertex reconstructions (defaultTreeFit
)path (basf2.Path) – modules are added to this path building the
Omega-:std
list
- stdHyperons.stdXi(fitter='TreeFit', path=None)[source]¶
Reconstruct the standard \(\Xi^-\)
ParticleList
namedXi-:std
.See also
- Parameters
fitter (str) – specify either
KFit
orTreeFit
for the vertex reconstructions (defaultTreeFit
)path (basf2.Path) – modules are added to this path building the
Xi-:std
list
- stdHyperons.stdXi0(gammatype='eff40', path=None, loadPhotonBeamBackgroundMVA=True)[source]¶
Reconstruct the standard \(\Xi^0\)
ParticleList
namedXi0:std
.See also
- Parameters
gammatype (str) – specify either
eff60
,eff50
,eff40
,eff30
, oreff20
to select the signal efficiency of the photons used in the pi0 reconstruction (defaulteff40
)path (basf2.Path) – modules are added to this path building the
Xi0:std
listloadPhotonBeamBackgroundMVA (bool) – If true, photon candidates will be assigned a beam background probability.