Expand regrowing options#1870
Conversation
|
Hi @brownd1978,
which require these tests: build. @Mu2e/fnalbuild-users, @Mu2e/write have access to CI actions on main. ⌛ The following tests have been triggered for f8fceca: build (Build queue - API unavailable) |
|
☀️ The build tests passed at f8fceca.
N.B. These results were obtained from a build of this Pull Request at f8fceca after being merged into the base branch at 3d84f93. For more information, please check the job page here. |
|
@FNALbuild run build test |
|
⌛ The following tests have been triggered for 7870183: build (Build queue - API unavailable) |
|
☀️ The build tests passed at 7870183.
N.B. These results were obtained from a build of this Pull Request at 7870183 after being merged into the base branch at 704459c. For more information, please check the job page here. |
🔴 Bugs1. double value = std::numeric_limits<double>::max(); // ok for the "min" cases
...
if(selbest_ == mom && std::get<2>(match) > value){ // never true: nothing > max()
ibest = imatch;
value = std::get<2>(match);
} else if(selbest_ == deltat && std::get<3>(match) < value){
...
} else if(selbest_ == nactive && std::get<5>(match) > value){ // same bug: never > max()
ibest = imatch;
value = std::get<5>(match);
}The two "maximize" branches ( 2. Missing 🟡 Correctness / robustness3. Linear MC-assns lookup is O(N²) for(auto ksmci= ksmca.begin(); ksmci != ksmca.end(); ++ksmci){
if(ksmci->first == kseedptr){ ksmcai = ksmci; break; }
}Correct given the Ptr-based approach, but O(seeds × assns). Fine for small collections; worth a comment noting the tradeoff. 4. 5. 🟢 Style / nits
|
|
AI comments response: |
|
@FNALbuild run build test |
|
⌛ The following tests have been triggered for c5f5a7b: build (Build queue - API unavailable) |
|
☀️ The build tests passed at c5f5a7b.
N.B. These results were obtained from a build of this Pull Request at c5f5a7b after being merged into the base branch at 704459c. For more information, please check the job page here. |
This PR adds the ability to regrow a Ptr list (selection) of LoopHelix KalSeeds, and to deep-copy the associated KalSeedMCs, to allow regrowing only selected tracks. If this feature is generally useful it could be added to regrowKinematicLine as well. Or perhaps it's time to merge these into a single module.
I also started moving some regrowing fcl into Offline prolog.