Avoid NaN and std::bad_alloc inside ACTS during the grid creation, due to specific pseudorapidity coverage, field strength, and minimum pT; custom association of hit to tracking surfaces; additional memory debugging checks
The following issues with the previous code are addressed:
- std::bad_alloc inside ACTS for virtually any EIC acceptance coverage, field strength and minimum pT (!). Note that given an acceptance out to 3-4, the minimum pT has to be set very low, as ACTS does not permit this mandatory cut to be set by the momentum magnitude.
- Inefficient and sometimes incorrect hit-surface association, fixed by (re-)determine the hit-surface association through geometry service inside the seeding code. Removed source links as input, as this is now not needed anymore.
- Removed eicd/edm4eic inheritance, which appears to has side-effects impacting seeding efficiency at 40 degrees angle