7.5.4. Kinematic-fitting convenience functions#
The Orca kinematic fitter is a global fitting tool.
A typical use-case would be to constrain the 4-momentum of all particles provided to the 4-momentum of the beam. This is a “4C” fit (four constraints).
Note
By default, the 4-momentum of the beam is taken without uncertainties.
Running this fit updates the chiProb
of the mother particle.
Important
Please also see the list of special Orca Kinematic Fitter variables.
- kinfit.MassfitKinematic1C(list_name, invMass, fitterEngine='NewFitterGSL', constraint='Mass', daughtersUpdate=True, variablePrefix='', path=None)[source]#
Perform recoil mass kinematic fit for particles in the given ParticleList.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass or Mass
invMass – Invariant Mass (GeV)
daughtersUpdate – make copy of the daughters and update them after the vertex fit
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
- kinfit.MassfitKinematic1CRecoil(list_name, recoilMass, fitterEngine='NewFitterGSL', constraint='RecoilMass', daughtersUpdate=True, variablePrefix='', path=None)[source]#
Perform recoil mass kinematic fit for particles in the given ParticleList.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass
recoilMass – RecoilMass (GeV)
daughtersUpdate – make copy of the daughters and update them after the vertex fit
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
- kinfit.UnmeasuredfitKinematic1C(list_name, fitterEngine='NewFitterGSL', constraint='HardBeam', daughtersUpdate=True, variablePrefix='', path=None)[source]#
Perform 1C momentum constraint kinematic fit with one unmeasured photon for particles in the given ParticleList.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass
daughtersUpdate – make copy of the daughters and update them after the vertex fit
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
- kinfit.fitKinematic2C(list_name, fitterEngine='NewFitterGSL', constraint='HardBeam', daughtersUpdate=True, addUnmeasuredPhotonAlongBeam='', variablePrefix='', path=None)[source]#
Perform 2C momentum constraint kinematic fit. The photon with unmeasured energy and theta has to be the first particle in the decay string. If ‘addUnmeasuredPhotonAlongBeam’ is set to ‘HER’ or ‘LER’, both phi and theta (treated as measured) of this photon are then used. Concurrently, an additional unmeasured photon along HER/LER will be taken into account in the fit, which means the momentum is only constrained in the plane perpendicular to one of the beams.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass
daughtersUpdate – make copy of the daughters and update them after the vertex fit
addUnmeasuredPhotonAlongBeam – add an unmeasured photon along beam if ‘HER’ or ‘LER’ is set
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
- kinfit.fitKinematic3C(list_name, fitterEngine='NewFitterGSL', constraint='HardBeam', daughtersUpdate=True, addUnmeasuredPhoton=False, add3CPhoton=True, variablePrefix='', path=None)[source]#
Perform 3C momentum constraint kinematic fit with one photon with unmeasured energy for particles in the given ParticleList, the first daughter should be the energy unmeasured Photon.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass
daughtersUpdate – make copy of the daughters and update them after the vertex fit
addUnmeasuredPhoton – add one unmeasured photon (uses up three constraints)
add3CPhoton – add one photon with unmeasured energy (uses up a constraint)
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
- kinfit.fitKinematic4C(list_name, fitterEngine='NewFitterGSL', constraint='HardBeam', daughtersUpdate=True, addUnmeasuredPhoton=False, variablePrefix='', path=None)[source]#
Perform a 4C momentum constraint kinematic fit for particles in the given ParticleList.
- Parameters:
list_name – name of the input ParticleList
fitterEngine – which fitter engine to use? ‘NewFitterGSL’ or ‘OPALFitterGSL’
constraint – HardBeam or RecoilMass
daughtersUpdate – make copy of the daughters and update them after the vertex fit
addUnmeasuredPhoton – add one unmeasured photon (uses up three constraints)
variablePrefix – prepended to fit variables stored in extra info. Required if ParticleKinematicFitter is run multiple times
path – modules are added to this path
See also
The ParticleKinematicFitter
documentation if you prefer to
directly configure the module yourself.