#include <PointingKinematicConstraint.h>
Public Member Functions | |
PointingKinematicConstraint * | clone () const override |
std::pair< AlgebraicMatrix, AlgebraicVector > | derivative (const AlgebraicVector &exPoint) const override |
std::pair< AlgebraicMatrix, AlgebraicVector > | derivative (const std::vector< RefCountedKinematicParticle > &par) const override |
AlgebraicVector | deviations (int nStates) const override |
int | numberOfEquations () const override |
PointingKinematicConstraint (const GlobalPoint &ref) | |
std::pair< AlgebraicVector, AlgebraicVector > | value (const AlgebraicVector &exPoint) const override |
std::pair< AlgebraicVector, AlgebraicVector > | value (const std::vector< RefCountedKinematicParticle > &par) const override |
Public Member Functions inherited from KinematicConstraint | |
KinematicConstraint () | |
virtual | ~KinematicConstraint () |
Private Member Functions | |
std::pair< AlgebraicMatrix, AlgebraicVector > | makeDerivative (const AlgebraicVector &exPoint) const |
std::pair< AlgebraicVector, AlgebraicVector > | makeValue (const AlgebraicVector &exPoint) const |
Private Attributes | |
GlobalPoint | refPoint |
Topological constraint making a momentum vector to point to the given location in space. Example: if b-meson momentum is reconstructed at b-meson decay position (secondary vertex), making reconstructed momentum pointing the the primary vertex
Multiple track refit is not supported in current version
Kirill Prokofiev, March 2004 MultiState version: July 2004
Definition at line 19 of file PointingKinematicConstraint.h.
|
inline |
Definition at line 21 of file PointingKinematicConstraint.h.
Referenced by clone().
|
inlineoverridevirtual |
Clone method
Implements KinematicConstraint.
Definition at line 49 of file PointingKinematicConstraint.h.
References PointingKinematicConstraint().
|
overridevirtual |
Implements KinematicConstraint.
Definition at line 26 of file PointingKinematicConstraint.cc.
References runTauDisplay::dr, and makeDerivative().
|
overridevirtual |
Vector of values and matrix of derivatives calculated using current state parameters as expansion point
Implements KinematicConstraint.
Definition at line 47 of file PointingKinematicConstraint.cc.
References runTauDisplay::dr, and makeDerivative().
|
overridevirtual |
Returns vector of sigma squared associated to the KinematicParameters of refitted particles Initial deviations are given by user for the constraining parameters (mass, momentum components etc). In case of multiple states exactly the same values are added to every particle parameters
Implements KinematicConstraint.
Definition at line 182 of file PointingKinematicConstraint.cc.
|
private |
Definition at line 113 of file PointingKinematicConstraint.cc.
References runTauDisplay::dr, PVValHelper::dx, PVValHelper::dy, PVValHelper::dz, point, refPoint, mathSSE::sqrt(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by derivative().
|
private |
Definition at line 78 of file PointingKinematicConstraint.cc.
References PVValHelper::dx, PVValHelper::dy, PVValHelper::dz, point, refPoint, mathSSE::sqrt(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by value().
|
overridevirtual |
Returns number of constraint equations used for fitting. Method is relevant for proper NDF calculations.
Implements KinematicConstraint.
Definition at line 184 of file PointingKinematicConstraint.cc.
|
overridevirtual |
Vector of values and matrix of derivatives calculated at given expansion 7xNumberOfStates point
Implements KinematicConstraint.
Definition at line 4 of file PointingKinematicConstraint.cc.
References makeValue().
Referenced by Types.int32::__nonzero__(), Types.uint32::__nonzero__(), Types.int64::__nonzero__(), Types.uint64::__nonzero__(), Types.double::__nonzero__(), Types.bool::__nonzero__(), Types.string::__nonzero__(), Types.string::configValue(), Types.FileInPath::configValue(), Types.int32::insertInto(), Types.uint32::insertInto(), Types.int64::insertInto(), Types.uint64::insertInto(), Types.double::insertInto(), Types.bool::insertInto(), Types.string::insertInto(), Types.FileInPath::insertInto(), Types.vint32::insertInto(), Types.vuint32::insertInto(), Types.vint64::insertInto(), Types.vuint64::insertInto(), Types.vdouble::insertInto(), Types.vbool::insertInto(), and Types.vstring::insertInto().
|
overridevirtual |
Methods making value and derivative matrix using current state parameters as expansion 7-point. Constraint can be made equaly for single and multiple states
Implements KinematicConstraint.
Definition at line 64 of file PointingKinematicConstraint.cc.
References makeValue().
Referenced by Types.int32::__nonzero__(), Types.uint32::__nonzero__(), Types.int64::__nonzero__(), Types.uint64::__nonzero__(), Types.double::__nonzero__(), Types.bool::__nonzero__(), Types.string::__nonzero__(), Types.string::configValue(), Types.FileInPath::configValue(), Types.int32::insertInto(), Types.uint32::insertInto(), Types.int64::insertInto(), Types.uint64::insertInto(), Types.double::insertInto(), Types.bool::insertInto(), Types.string::insertInto(), Types.FileInPath::insertInto(), Types.vint32::insertInto(), Types.vuint32::insertInto(), Types.vint64::insertInto(), Types.vuint64::insertInto(), Types.vdouble::insertInto(), Types.vbool::insertInto(), and Types.vstring::insertInto().
|
private |
Definition at line 55 of file PointingKinematicConstraint.h.
Referenced by makeDerivative(), and makeValue().