Draft: EFTracking/FPGATrackSim: port spacepoint-based fitting, updated Hough transforms, related changes from HTTSiim
I've put this together at @jahreda's request to incorporate as much of the missing spacepoint/Hough-related HTTSim functionality as possible. This includes the following (all mostly being ported over from 21.9 with some minor changes):
- Updates to the spacepoint tool; there were originally two versions of the code, but only one of them worked, so we standardized on the working one (previously known as "v2") and eliminated the original. There are also various bugfixes/cleanup here ported over from HTTSim.
- Code to handle spacepoints properly in the Hough transform, matrix/fit constant generation, and linear track fit. The main thing is accounting for spacepoint "duplication"-- the tool writes out two copies of a spacepoint, one in the inner strip layer and one in the outer strip layer. Each copy of the spacepoint has the same "global" coordinates (x, y, z) but different "local" coordinates (etamod, phimod, layer, etc.). This makes it easy to mix spacepoints with normal strip hits, as needed, but it requires checks in a couple places to make sure that spacepoints are never accidentally split in "half".
- Updates to various other tools; the eta pattern filter, most notably the 2D and 1D hough transform tools. This includes bugfixes, plus support for running over spacepoints.
- A change eliminating the "Road_Hough" subclass in favor of just a single "Road" class.
- Some configuration changes. I made 9-layer-with-spacepoints the "default", where possible, as that seems to be the direction EF Tracking is going. But I think ultimately we want to standardize the configuration system (maybe using an updated version of HTTSim style tags?)-- so this can all be cleaned up in the future.
I think those are the highlights. Sorry it's kind of a large MR, I tried to make the individual commits as small and neat as possible.
I have successfully generated wrappers, maps, and fit constants with this branch in region 0. At the moment they are on the Chicago analysis facility but I can put them somewhere in eos if that would be useful. (Haven't tried to run the FPGATrackSim unit tests, I'm sure they will need updating).
This should supercede !69113 (closed); it includes those changes.