Enable use of Kalman Filter as final fitter (Kalman Module code review recommendation)
Kalman /Pandora /LArSoft :
input should be an ordered set of hits plus an initial estimate of the 3D trajectory.
code should run a Kalman filter on this input and report the output.
The Pandora team should learn to use the Kalman filter in this configuration and evaluate if it resolves the known physics performance issues.
The transmission of the additional information between the two codes may involve the addition to or modification of LArSoft data products and LArSoft interfaces;
a. Who is responsible for adding surfaces at which there are missing hits?
b. Should the Kalman filter do any outlier rejection? If so, this should be under the control of run‐time configuration.
c. As knowledge of the trajectory evolves, the Kalman filter may come up with a slightly different hit ordering than that transmitted by the Pandora team. The parties should discuss the desired action of the Kalman filter in this case.
#2 Updated by Katherine Lato almost 5 years ago
- Due date set to 06/01/2017
- Category changed from Other to Reconstruction
- Status changed from New to Assigned
- Assignee changed from Ruth Pordes to Rob Kutschke
This is the task of abstracting a general Kalman filter for use by multiple algorithms. The target is to have the agreements in place to have Giuseppe Cerati start in September. Per Rob's email of July 16th, we are assigning this to him. This issue is likely to spawn several sub-issues or a sub or related project.
#3 Updated by Katherine Lato over 4 years ago
- Assignee changed from Rob Kutschke to Giuseppe Cerati
While Giuseppe is taking care of the implementation of the feature, the ultimate responsibility of a full test of how this feature couples with Pandora is shared with the Pandora team.
This is a multi-step process.
1) Giuseppe put a prototype of the code in the latest LArSoft release for people to test and give feedback.
2) PMA, Pandora, others
- use the Kalman filter as a final fitter and give feedback
- Giuseppe should work with the feedback and the people giving the
feedback to evolve the prototype
- iterate until good enough (with luck, real convergence but that’s neither
guaranteed nor necessary).
3) Close this issue when the iterations have resulted in an implementation of the Kalman filter that uses best practices of both physics and software engineering.
#4 Updated by Katherine Lato over 4 years ago
Note, the initial prototype is to determine if the physics being delivered is what is wanted and prototyping parts of the interface to get feedback. It is expected that the code will be rewritten before going into production. This issues covers that work, but not the maintenance phase extending.