-
Notifications
You must be signed in to change notification settings - Fork 177
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix bug in CKF and add script for KF timing test #126
Fix bug in CKF and add script for KF timing test #126
Conversation
Codecov Report
@@ Coverage Diff @@
## master #126 +/- ##
=======================================
Coverage 45.82% 45.82%
=======================================
Files 351 351
Lines 17446 17447 +1
Branches 8095 8095
=======================================
+ Hits 7994 7995 +1
- Misses 4335 4338 +3
+ Partials 5117 5114 -3
Continue to review full report at Codecov.
|
@paulgessinger @asalzburger , could you help take a look and get it in? |
9df781b
to
4d0086c
Compare
Can you comment what the bugs were? I'm not sure I understand just from the code. |
4d0086c
to
7fc67bf
Compare
@paulgessinger , sorry. The bugs are explained in the first comment. |
@XiaocongAi can you rebase, please - this should remove the build error with macOS as well. |
7fc67bf
to
850f3fe
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's one comment change I would do, otherwise I am happy with the PR.
@@ -1100,6 +1099,7 @@ class KalmanFitter { | |||
} | |||
|
|||
if (!kalmanResult.result.ok()) { | |||
ACTS_ERROR("KalmanFilter failed: " << kalmanResult.result.error()); | |||
return kalmanResult.result.error(); | |||
} | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the meaningful error output messages.
@@ -0,0 +1,55 @@ | |||
import ROOT |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we will have to do a cleanup of the scripts, probably as preparation for the Tutorial/Workshop.
This is unrelated to this PR though, it should go into an issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good idea!
@@ -72,7 +72,7 @@ FW::EventGenerator::Config FW::Options::readPythia8Options( | |||
Pythia8Generator::makeFunction(hard, lvl)}, | |||
{PoissonMultiplicityGenerator{mu}, | |||
GaussianVertexGenerator{{vtxStdXY, vtxStdXY, vtxStdZ, vtxStdT}}, | |||
Pythia8Generator::makeFunction(hard, lvl)}, | |||
Pythia8Generator::makeFunction(pileup, lvl)}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well spotted!
/// The navigator has DirectNavigator type or not | ||
static constexpr bool isDirectNavigator = | ||
std::is_same<KalmanNavigator, DirectNavigator>::value; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just shifting lines, hence ok.
if (isMeasurement) { | ||
measurementIndices.emplace_back(st.index()); | ||
} else if (measurementIndices.empty()) { | ||
// No smoothed parameter if the last measurment state has not been |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"No smoothed parameters if the last measurement stat has not been found yet."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
d8776c1
to
3038d5f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, the changes are integrated. I approve.
* Clean-up the KalmanFitter * Fix the pythia8 option * Add the script for KF timing test * Add the python script for plotting KF timing test result * Fix a bug in CKF * Fix the comment
addSourcelinkState
will remove the last tip, which is not correct.pileup
generators as well instead of including thehard
configurations twice.