![]() |
Belle II Software
light-2303-iriomote
|
FourCFitKFit is a derived class from KFitBase to perform 4 momentum-constraint kinematical fit. More...
#include <FourCFitKFit.h>


Public Member Functions | |
| FourCFitKFit (void) | |
| Construct an object with no argument. | |
| ~FourCFitKFit (void) | |
| Destruct the object. | |
| enum KFitError::ECode | setVertex (const HepPoint3D &v) |
| Set an initial vertex position for the four momentum-constraint fit. More... | |
| enum KFitError::ECode | setVertexError (const CLHEP::HepSymMatrix &e) |
| Set an initial vertex error matrix for the four momentum-constraint fit. More... | |
| enum KFitError::ECode | setInvariantMass (const double m) |
| Set an invariant mass for the four momentum-constraint fit. More... | |
| enum KFitError::ECode | setFourMomentum (const ROOT::Math::PxPyPzEVector &m) |
| Set an 4 Momentum for the FourC-constraint fit. More... | |
| enum KFitError::ECode | setFlagAtDecayPoint (const bool flag) |
| Set a flag if to constraint at the decay point in the four momentum-constraint fit. More... | |
| enum KFitError::ECode | fixMass (void) |
| Tell the object to fix the last added track property at the invariant mass. More... | |
| enum KFitError::ECode | unfixMass (void) |
| Tell the object to unfix the last added track property at the invariant mass. More... | |
| enum KFitError::ECode | setTrackVertexError (const CLHEP::HepMatrix &e) |
| Set a vertex error matrix of the child particle in the addTrack'ed order. More... | |
| enum KFitError::ECode | setTrackZeroVertexError (void) |
| Indicate no vertex uncertainty in the child particle in the addTrack'ed order. More... | |
| enum KFitError::ECode | setCorrelation (const CLHEP::HepMatrix &m) override |
| Set a correlation matrix. More... | |
| enum KFitError::ECode | setZeroCorrelation (void) override |
| Indicate no correlation between tracks. More... | |
| const HepPoint3D | getVertex (const int flag=KFitConst::kAfterFit) const |
| Get a vertex position. More... | |
| const CLHEP::HepSymMatrix | getVertexError (const int flag=KFitConst::kAfterFit) const |
| Get a vertex error matrix. More... | |
| double | getInvariantMass (void) const |
| Get an invariant mass. More... | |
| bool | getFlagAtDecayPoint (void) const |
| Get a flag if to constraint at the decay point in the four momentum-constraint fit. More... | |
| bool | getFlagFitWithVertex (void) const |
| Get a flag if the fit is allowed with moving the vertex position. More... | |
| double | getCHIsq (void) const override |
| Get a chi-square of the fit. More... | |
| const CLHEP::HepMatrix | getTrackVertexError (const int id, const int flag=KFitConst::kAfterFit) const |
| Get a vertex error matrix of the track. More... | |
| double | getTrackCHIsq (const int id) const override |
| Get a chi-square of the track. More... | |
| const CLHEP::HepMatrix | getCorrelation (const int id1, const int id2, const int flag=KFitConst::kAfterFit) const override |
| Get a correlation matrix between two tracks. More... | |
| enum KFitError::ECode | doFit (void) |
| Perform a four momentum-constraint fit. More... | |
| enum KFitError::ECode | updateMother (Particle *mother) |
| Update mother particle. More... | |
| enum KFitError::ECode | addTrack (const KFitTrack &kp) |
| Add a track to the fitter object. More... | |
| enum KFitError::ECode | addTrack (const CLHEP::HepLorentzVector &p, const HepPoint3D &x, const CLHEP::HepSymMatrix &e, const double q) |
| Add a track to the fitter object with specifying its momentum, position, error matrix, and charge. More... | |
| enum KFitError::ECode | addParticle (const Particle *particle) |
| Add a particle to the fitter. More... | |
| enum KFitError::ECode | setMagneticField (const double mf) |
| Change a magnetic field from the default value KFitConst::kDefaultMagneticField. More... | |
| enum KFitError::ECode | getErrorCode (void) const |
| Get a code of the last error. More... | |
| int | getTrackCount (void) const |
| Get the number of added tracks. More... | |
| virtual int | getNDF (void) const |
| Get an NDF of the fit. More... | |
| double | getMagneticField (void) const |
| Get a magnetic field. More... | |
| const CLHEP::HepLorentzVector | getTrackMomentum (const int id) const |
| Get a Lorentz vector of the track. More... | |
| const HepPoint3D | getTrackPosition (const int id) const |
| Get a position of the track. More... | |
| const CLHEP::HepSymMatrix | getTrackError (const int id) const |
| Get an error matrix of the track. More... | |
| const KFitTrack | getTrack (const int id) const |
| Get a specified track object. More... | |
| bool | isFitted (void) const |
| Return false if fit is not performed yet or performed fit is failed; otherwise true. More... | |
Protected Member Functions | |
| const CLHEP::HepSymMatrix | makeError1 (const CLHEP::HepLorentzVector &p, const CLHEP::HepMatrix &e) const |
| Rebuild an error matrix from a Lorentz vector and an error matrix. More... | |
| const CLHEP::HepMatrix | makeError1 (const CLHEP::HepLorentzVector &p1, const CLHEP::HepLorentzVector &p2, const CLHEP::HepMatrix &e) const |
| Rebuild an error matrix from a pair of Lorentz vectors and an error matrix. More... | |
| const CLHEP::HepMatrix | makeError2 (const CLHEP::HepLorentzVector &p, const CLHEP::HepMatrix &e) const |
| Rebuild an error matrix from a Lorentz vector and an error matrix. More... | |
| const CLHEP::HepSymMatrix | makeError3 (const CLHEP::HepLorentzVector &p, const CLHEP::HepMatrix &e, const bool is_fix_mass) const |
| Rebuild an error matrix from a Lorentz vector and an error matrix. More... | |
| const CLHEP::HepMatrix | makeError3 (const CLHEP::HepLorentzVector &p1, const CLHEP::HepLorentzVector &p2, const CLHEP::HepMatrix &e, const bool is_fix_mass1, const bool is_fix_mass2) const |
| Rebuild an error matrix from a pair of Lorentz vectors and an error matrix. More... | |
| const CLHEP::HepMatrix | makeError4 (const CLHEP::HepLorentzVector &p, const CLHEP::HepMatrix &e) const |
| Rebuild an error matrix from a Lorentz vector and an error matrix. More... | |
| enum KFitError::ECode | doFit1 (void) |
| Perform a fit (used in MassFitKFit::doFit()). More... | |
| enum KFitError::ECode | doFit2 (void) |
| Perform a fit (used in VertexFitKFit::doFit() and MassVertexFitKFit::doFit()). More... | |
| bool | isTrackIDInRange (const int id) const |
| Check if the id is in the range. More... | |
| bool | isNonZeroEnergy (const CLHEP::HepLorentzVector &p) const |
| Check if the energy is non-zero. More... | |
Protected Attributes | |
| enum KFitError::ECode | m_ErrorCode |
| Error code. | |
| bool | m_FlagFitted |
| Flag to indicate if the fit is performed and succeeded. | |
| std::vector< KFitTrack > | m_Tracks |
| Container of input tracks. | |
| std::vector< CLHEP::HepMatrix > | m_BeforeCorrelation |
| Container of input correlation matrices. | |
| CLHEP::HepSymMatrix | m_V_al_0 |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_al_0 |
| See J.Tanaka Ph.D (2001) p136 for definition. | |
| CLHEP::HepMatrix | m_al_1 |
| See J.Tanaka Ph.D (2001) p136 for definition. | |
| CLHEP::HepMatrix | m_al_a |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_property |
| Container of charges and masses. | |
| CLHEP::HepMatrix | m_D |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_d |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_V_D |
| See J.Tanaka Ph.D (2001) p138 for definition. | |
| CLHEP::HepMatrix | m_V_al_1 |
| See J.Tanaka Ph.D (2001) p138 for definition. | |
| CLHEP::HepMatrix | m_lam |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_E |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_V_E |
| See J.Tanaka Ph.D (2001) p138 for definition. | |
| CLHEP::HepMatrix | m_lam0 |
| See J.Tanaka Ph.D (2001) p138 for definition. | |
| CLHEP::HepMatrix | m_v |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_v_a |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| CLHEP::HepMatrix | m_V_Dt |
| See J.Tanaka Ph.D (2001) p138 for definition. | |
| CLHEP::HepMatrix | m_Cov_v_al_1 |
| See J.Tanaka Ph.D (2001) p137 for definition. | |
| int | m_NDF |
| NDF of the fit. | |
| double | m_CHIsq |
| chi-square of the fit. | |
| int | m_TrackCount |
| Number of tracks. | |
| int | m_NecessaryTrackCount |
| Number needed tracks to perform fit. | |
| bool | m_FlagCorrelation |
| Flag whether a correlation among tracks exists. | |
| bool | m_FlagOverIteration |
| Flag whether the iteration count exceeds the limit. | |
| double | m_MagneticField |
| Magnetic field. | |
Private Member Functions | |
| enum KFitError::ECode | prepareInputMatrix (void) override |
| Build grand matrices for minimum search from input-track properties. More... | |
| enum KFitError::ECode | prepareInputSubMatrix (void) override |
| Build sub-matrices for minimum search from input-track properties. More... | |
| enum KFitError::ECode | prepareCorrelation (void) override |
| Build a grand correlation matrix from input-track properties. More... | |
| enum KFitError::ECode | prepareOutputMatrix (void) override |
| Build an output error matrix. More... | |
| enum KFitError::ECode | makeCoreMatrix (void) override |
| Build matrices using the kinematical constraint. More... | |
| enum KFitError::ECode | calculateNDF (void) override |
| Calculate an NDF of the fit. More... | |
Private Attributes | |
| HepPoint3D | m_BeforeVertex |
| Vertex position before the fit. | |
| CLHEP::HepSymMatrix | m_BeforeVertexError |
| Vertex error matrix before the fit. | |
| std::vector< CLHEP::HepMatrix > | m_BeforeTrackVertexError |
| array of vertex error matrices before the fit. | |
| HepPoint3D | m_AfterVertex |
| Vertex position after the fit. | |
| CLHEP::HepSymMatrix | m_AfterVertexError |
| Vertex error matrix after the fit. | |
| std::vector< CLHEP::HepMatrix > | m_AfterTrackVertexError |
| array of vertex error matrices after the fit. | |
| bool | m_FlagTrackVertexError |
| Flag to indicate if the vertex error matrix of the child particle is preset. | |
| bool | m_FlagFitIncludingVertex |
| Flag to indicate if the fit is allowed with moving the vertex position. | |
| bool | m_FlagAtDecayPoint |
| Flag controlled by setFlagAtDecayPoint(). | |
| double | m_InvariantMass |
| Invariant mass. | |
| ROOT::Math::PxPyPzEVector | m_FourMomentum |
| Four Momentum. | |
| std::vector< int > | m_IsFixMass |
| Array of flags whether the track property is fixed at the mass. | |
FourCFitKFit is a derived class from KFitBase to perform 4 momentum-constraint kinematical fit.
Definition at line 30 of file FourCFitKFit.h.
|
inherited |
Add a particle to the fitter.
The function gets track parameters from the Particle dataobject and calls addTrack().
| [in] | particle | Particle. |
Definition at line 34 of file KFitBase.cc.
|
inherited |
Add a track to the fitter object with specifying its momentum, position, error matrix, and charge.
This function internally calls addTrack(const KFitTrack &kp).
| p | Lorentz vector of the track |
| x | position of the track |
| e | (7x7) error matrix of the track |
| q | charge of the track |
|
inherited |
Add a track to the fitter object.
| kp | object of the track |
Definition at line 34 of file KFitBase.cc.
|
overrideprivatevirtual |
Calculate an NDF of the fit.
Implements KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
| enum KFitError::ECode doFit | ( | void | ) |
Perform a four momentum-constraint fit.
Definition at line 261 of file FourCFitKFit.cc.
|
protectedinherited |
Perform a fit (used in MassFitKFit::doFit()).
Definition at line 438 of file KFitBase.cc.
|
protectedinherited |
Perform a fit (used in VertexFitKFit::doFit() and MassVertexFitKFit::doFit()).
Definition at line 438 of file KFitBase.cc.
| enum KFitError::ECode fixMass | ( | void | ) |
Tell the object to fix the last added track property at the invariant mass.
Not intended for end user's use.
Definition at line 40 of file FourCFitKFit.cc.
|
overridevirtual |
Get a chi-square of the fit.
Reimplemented from KFitBase.
Definition at line 201 of file FourCFitKFit.cc.
|
overridevirtual |
Get a correlation matrix between two tracks.
| id1 | first track id |
| id2 | second track id |
| flag | KFitConst::kBeforeFit or KFitConst::kAfterFit |
Reimplemented from KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
inherited |
| bool getFlagAtDecayPoint | ( | void | ) | const |
Get a flag if to constraint at the decay point in the four momentum-constraint fit.
Definition at line 187 of file FourCFitKFit.cc.
| bool getFlagFitWithVertex | ( | void | ) | const |
Get a flag if the fit is allowed with moving the vertex position.
Definition at line 194 of file FourCFitKFit.cc.
| double getInvariantMass | ( | void | ) | const |
|
inherited |
|
virtualinherited |
|
inherited |
Get a specified track object.
| id | track id |
Definition at line 175 of file KFitBase.cc.
|
overridevirtual |
Get a chi-square of the track.
| id | track id |
Reimplemented from KFitBase.
Definition at line 225 of file FourCFitKFit.cc.
|
inherited |
Get the number of added tracks.
Definition at line 107 of file KFitBase.cc.
|
inherited |
Get an error matrix of the track.
| id | track id |
Definition at line 168 of file KFitBase.cc.
|
inherited |
Get a Lorentz vector of the track.
| id | track id |
Definition at line 154 of file KFitBase.cc.
|
inherited |
Get a position of the track.
| id | track id |
Definition at line 161 of file KFitBase.cc.
| const HepMatrix getTrackVertexError | ( | const int | id, |
| const int | flag = KFitConst::kAfterFit |
||
| ) | const |
Get a vertex error matrix of the track.
| id | track id |
| flag | KFitConst::kBeforeFit or KFitConst::kAfterFit |
Definition at line 208 of file FourCFitKFit.cc.
| const HepPoint3D getVertex | ( | const int | flag = KFitConst::kAfterFit | ) | const |
Get a vertex position.
| flag | KFitConst::kBeforeFit or KFitConst::kAfterFit |
Definition at line 145 of file FourCFitKFit.cc.
| const HepSymMatrix getVertexError | ( | const int | flag = KFitConst::kAfterFit | ) | const |
Get a vertex error matrix.
| flag | KFitConst::kBeforeFit or KFitConst::kAfterFit |
Definition at line 164 of file FourCFitKFit.cc.
|
inherited |
Return false if fit is not performed yet or performed fit is failed; otherwise true.
Definition at line 727 of file KFitBase.cc.
|
protectedinherited |
Check if the energy is non-zero.
| p | Lorentz vector |
Definition at line 749 of file KFitBase.cc.
|
protectedinherited |
Check if the id is in the range.
| id | track id |
Definition at line 738 of file KFitBase.cc.
|
overrideprivatevirtual |
Build matrices using the kinematical constraint.
Implements KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
protectedinherited |
Rebuild an error matrix from a Lorentz vector and an error matrix.
| p | Lorentz vector |
| e | (6x6) error matrix |
|
protectedinherited |
Rebuild an error matrix from a pair of Lorentz vectors and an error matrix.
| p1 | first Lorentz vector |
| p2 | second Lorentz vector |
| e | (6x6) error matrix |
|
protectedinherited |
Rebuild an error matrix from a Lorentz vector and an error matrix.
| p | Lorentz vector |
| e | (3x6) error matrix |
Definition at line 296 of file KFitBase.cc.
|
protectedinherited |
Rebuild an error matrix from a Lorentz vector and an error matrix.
| p | Lorentz vector |
| e | (7x7) error matrix |
| is_fix_mass | true to recalculate energy term from other parameters, false to do nothing |
|
protectedinherited |
Rebuild an error matrix from a pair of Lorentz vectors and an error matrix.
| p1 | first Lorentz vector |
| p2 | second Lorentz vector |
| e | (7x7) error matrix |
| is_fix_mass1 | true to recalculate energy term from other parameters, false to do nothing |
| is_fix_mass2 | true to recalculate energy term from other parameters, false to do nothing |
|
protectedinherited |
Rebuild an error matrix from a Lorentz vector and an error matrix.
| p | Lorentz vector |
| e | (3x7) error matrix |
Definition at line 438 of file KFitBase.cc.
|
overrideprivatevirtual |
Build a grand correlation matrix from input-track properties.
Reimplemented from KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
overrideprivatevirtual |
Build grand matrices for minimum search from input-track properties.
Implements KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
overrideprivatevirtual |
Build sub-matrices for minimum search from input-track properties.
Implements KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
overrideprivatevirtual |
Build an output error matrix.
Implements KFitBase.
Definition at line 261 of file FourCFitKFit.cc.
|
overridevirtual |
Set a correlation matrix.
Not intended for end user's use.
| c | (7x7) correlation matrix |
Reimplemented from KFitBase.
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setFlagAtDecayPoint | ( | const bool | flag | ) |
Set a flag if to constraint at the decay point in the four momentum-constraint fit.
| flag | true for constraint, false for not |
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setFourMomentum | ( | const ROOT::Math::PxPyPzEVector & | m | ) |
Set an 4 Momentum for the FourC-constraint fit.
| m | four momentum |
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setInvariantMass | ( | const double | m | ) |
Set an invariant mass for the four momentum-constraint fit.
| m | invariant mass |
Definition at line 40 of file FourCFitKFit.cc.
|
inherited |
Change a magnetic field from the default value KFitConst::kDefaultMagneticField.
| mf | magnetic field to set |
Definition at line 34 of file KFitBase.cc.
| enum KFitError::ECode setTrackVertexError | ( | const CLHEP::HepMatrix & | e | ) |
Set a vertex error matrix of the child particle in the addTrack'ed order.
| e | (3x7) vertex error matrix |
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setTrackZeroVertexError | ( | void | ) |
Indicate no vertex uncertainty in the child particle in the addTrack'ed order.
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setVertex | ( | const HepPoint3D & | v | ) |
Set an initial vertex position for the four momentum-constraint fit.
| v | vertex position |
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode setVertexError | ( | const CLHEP::HepSymMatrix & | e | ) |
Set an initial vertex error matrix for the four momentum-constraint fit.
| e | vertex error matrix |
Definition at line 40 of file FourCFitKFit.cc.
|
overridevirtual |
Indicate no correlation between tracks.
Not intended for end user's use.
Reimplemented from KFitBase.
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode unfixMass | ( | void | ) |
Tell the object to unfix the last added track property at the invariant mass.
Not intended for end user's use.
Definition at line 40 of file FourCFitKFit.cc.
| enum KFitError::ECode updateMother | ( | Particle * | mother | ) |
Update mother particle.
| [in] | mother | Mother particle. |
Definition at line 261 of file FourCFitKFit.cc.