Calo Surface Steps#1757
Conversation
|
Hi @sophiemiddleton,
which require these tests: build. @Mu2e/write, @Mu2e/fnalbuild-users have access to CI actions on main. ⌛ The following tests have been triggered for 2610df8: build (Build queue - API unavailable) |
|
this is an initial draft with most of the work. I have a small issues to fix before it becomes a full PR |
|
☀️ The build tests passed at 2610df8.
N.B. These results were obtained from a build of this Pull Request at 2610df8 after being merged into the base branch at 6a994e7. For more information, please check the job page here. |
brownd1978
left a comment
There was a problem hiding this comment.
Could you please merge in the head? That will get rid of the messages about infrastructure changes which are already merged.
|
I merged the HEAD and fixed a few conflicts |
brownd1978
left a comment
There was a problem hiding this comment.
Overall this looks really good. Thanks for adding extrapolation to KKLIne and CentralHelix fits. I just have a question about how multiple intersections are handled.
The current calo geom only describes VD surfaces, so extrapolation doesn't do any material corrections. In future it would be nice to add materials in front of the crystals like the CF and supports and the calibration system.
| // update the cache | ||
| inter_ = newinter; | ||
| ann_ = disks_[idisk]; | ||
| //sid_ = SurfaceId(SurfaceIdEnum::calo_Foils,idisk); //FIXME |
There was a problem hiding this comment.
Is sid_ left out intentionally?
There was a problem hiding this comment.
yes, I agree, adding in the material corrections would be a good next step. I'll take a look and see what I can figure out as a future task here.
| # | ||
| # may use a more careful optimization, but this is it for now | ||
| #------------------------------------------------------------------------------ | ||
| InterdetectorTimeBootstrap : { |
There was a problem hiding this comment.
Does this correspond to code not in this PR?
There was a problem hiding this comment.
Ah, this is old stuff. I had a module for the time calibration, it was removed, ill remove this comment too
This pull request introduces support for calorimeter (Calo) surfaces in the geometry and extrapolation infrastructure, enabling track extrapolation to the calorimeter disks. The main changes include defining Calo surfaces, integrating them into surface mapping, and adding extrapolation logic to reach Calo disks. Additionally, configuration options are updated to allow extrapolation to Calo disks.
Calorimeter surface integration:
Caloclass to define the geometry of calorimeter disks and edges, including inner/outer cylinders and front/back disks for both disk 0 and disk 1 (KinKalGeom/inc/Calo.hh,KinKalGeom/src/Calo.cc). [1] [2]SurfaceMapclass and surface mapping logic, allowing retrieval and mapping of Calo surfaces (KinKalGeom/inc/SurfaceMap.hh,KinKalGeom/src/SurfaceMap.cc). [1] [2] [3]Extrapolation enhancements:
ExtrapolateCaloclass to handle extrapolation predicates and logic for reaching Calo disks, including methods for finding nearest disks and intersection checks (Mu2eKinKal/inc/ExtrapolateCalo.hh).KKExtrapclass to include extrapolation methods for Calo disks and associated member variables for Calo disk surfaces and predicates (Mu2eKinKal/inc/KKExtrap.hh). [1] [2] [3]Configuration updates:
ToCaloD0,ToCaloD1) in the FCL files to control extrapolation to Calo disks (Mu2eKinKal/fcl/prolog.fcl). [1] [2] [3]Surface ID and mapping updates:
SurfaceIdenumeration and mapping to include Calo disk surfaces, and updated string mappings for these IDs (DataProducts/inc/SurfaceId.hh,DataProducts/src/SurfaceId.cc). [1] [2]MakeSurfaceSteps_module.ccto map new Calo surface IDs and add debug output for Calo-related steps (CommonMC/src/MakeSurfaceSteps_module.cc). [1] [2]Build system update:
Calo.ccto the build system for compilation (KinKalGeom/CMakeLists.txt).