Fix getColumn/getRow and getLocalPosition
@williamm discovered an inconsistency, i.e. "shift" between
clusterMapAssoc
hitMapAssoc
in the AnalysisDUT
module.
I had a closer look at it and found that
cluster->column();
// and
auto clusterLocal = m_detector->globalToLocal(cluster->global());
m_detector->getColumn(clusterLocal);
would not give the same result. The second method was the one implemented and much more complicated than necessary. However, I took this as an opportunity to understand what was going wrong.
And in fact, the getColumn()/getRow()
as well as the getLocalPosition()
member functions of the detectors class did not behave as expected - even though we thought about them many times.
Now it's fixed and consistent (also with what I calculated on paper). Again, the tricky bit as an integer division causing an unexpected shift by 1/2 pitch.
Anyway, I believe that it's fine now. Tested with run 742. @williamm Can you also check it with your analysis?