Skip to content

Commit

Permalink
Save full KF state vector and cov matrix
Browse files Browse the repository at this point in the history
  • Loading branch information
creetz16 committed Feb 28, 2024
1 parent b2541ef commit c598e6c
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,8 @@ struct StrangeTrack {
o2::track::TrackParCovF mMother;
unsigned int mITSRef = -99;
unsigned int mDecayRef = -99;
std::array<float, 3> mDecayVtx;
std::array<float, 3> mDecayVtxErr;
std::array<float, 3> mDecayMom;
std::array<float, 8> mDecayParams;
std::array<float, 36> mDecayCov;
std::array<float, 2> mMasses; // V0: hypertriton and hyperhydrongen4, cascade: Xi and Omega.
float mITSClusSize = -99;
float mMatchChi2 = -99;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -392,15 +392,12 @@ class StrangenessTracker
float M, SigmaM;
kfParticle.GetMass(M, SigmaM);
strangeTrack.mMasses[0] = M;
strangeTrack.mDecayMom[0] = kfParticle.GetPx();
strangeTrack.mDecayMom[1] = kfParticle.GetPy();
strangeTrack.mDecayMom[2] = kfParticle.GetPz();
strangeTrack.mDecayVtx[0] = kfParticle.GetX();
strangeTrack.mDecayVtx[1] = kfParticle.GetY();
strangeTrack.mDecayVtx[2] = kfParticle.GetZ();
strangeTrack.mDecayVtxErr[0] = kfParticle.GetErrX();
strangeTrack.mDecayVtxErr[1] = kfParticle.GetErrY();
strangeTrack.mDecayVtxErr[2] = kfParticle.GetErrZ();
for (int i = 0; i < 8; i++) {
strangeTrack.mDecayParams[i] = kfParticle.GetParameter(i);
}
for (int i = 0; i < 36; i++) {
strangeTrack.mDecayCov[i] = kfParticle.GetCovariance(i); // lower triangular form of covariance matrix
}
strangeTrack.mGeoChi2 = kfParticle.GetChi2();
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -389,12 +389,12 @@ bool StrangenessTracker::matchDecayToITStrack(float decayR, StrangeTrack& strang
} else if (strangeTrack.mPartType == dataformats::kStrkCascade) { // create KFParticle with Xi hypothesis
kfpTracklet = createKFParticleFromTrackParCov(decayVtxTrackClone, -1, o2::constants::physics::MassXiMinus);
}
/// IMPORTANT: energy of kfpTracklet should not be used in KF filtering of the next step since it is not measured but calculated from mass hypothesis.


/// transformed KFParticle object "kfpTracklet" can be used to constrain mother parameters at decay vertex
/// "kfpTracklet" is used as measurement to constrain "kfpMother" parameters
/// TODO: add kinematic constraint with new KF functionality here!
/// ...
kfpMother.AddMeasurement(kfpTracklet);

}

Expand Down

0 comments on commit c598e6c

Please sign in to comment.