Fix the MFT half-disk 3 support pockets to match the technical drawing - #15868
Merged
sawenzel merged 1 commit intoSep 30, 2026
Merged
Conversation
This fixes the two large pockets of the MFT half-disk 3 support plate so they match the Subatech drawing. - Each pocket is cut as two TGeoArb8. The left split along f-i left vertex i 0.12 mm inside its piece, so sc_void_1_H*_D3 was non-convex and VecGeom rejects it. - ROOT evaluates that non-convex arb8 as the intersection of its edge half-planes, which left 0.032 cm2 of PEEK inside the left pocket. - On the right, the .02 overlap shift was applied to the corners l and o, so the plate kept a 0.060 cm2 wedge along wall l-m and lost 0.020 cm2 along wall n-o. - Both pockets are now split at y = 7.5 into two convex trapezoids that overlap by .02 away from the walls. https://twiki.cern.ch/twiki/pub/ALICE/MFTWP3/Disk_support_03_05-09-2017.pdf Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
sawenzel
requested review from
f3sch,
fprino,
mconcas,
mcoquet642 and
shahor02
as code owners
September 29, 2026 16:27
Collaborator
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR corrects the two large pockets in the support plate of MFT half-disk 3. With this fix, all support-plate voids in the MFT are valid convex solids, so the geometry can be imported through GDML into VecGeom, which previously rejected
sc_void_1_H0_D3andsc_void_1_H1_D3.Each pocket is an L-shaped hexagon with one inward corner.
Support.cxxcuts it out as twoTGeoArb8. The left pocket was split so that one piece was non-convex. ROOT does not check convexity and evaluates such an arb8 as the intersection of its edge half-planes, which silently left a thin wall of PEEK inside the pocket. The small offsets later added to both pockets reduced this wall but did not remove it. On the right they also moved two corners of the pocket, cutting into material outside the pocket and leaving a wedge along the slanted wall.Both pockets are now split at the height of the inward corner into two convex trapezoids that overlap slightly away from the walls. The vertices are taken from the pocket coordinate table of the Subatech drawing of the disk 03 support. The result was cross-checked against the CAD model of the part, converted with
o2-cad-to-tgeo, where the straight walls of both pockets coincide with the drawing to better than 0.1 µm.The deviation from the drawing, per pocket and per half-disk, is:
Note that the changes are not intended to alter anything else. Point sampling of the full MFT, ROOT overlap checks of the disk 3 half-disks and a GDML export read by Geant4 and VecGeom show no other difference. In the CAD model, the slanted outer wall of each pocket is an arc following the rim, which the code approximates by its chord. That is a separate simplification and is left for a follow-up.
Overall, the half-disk 3 support now reproduces its technical drawing exactly and no longer contains solids that other geometry engines reject.
Drawing: https://twiki.cern.ch/twiki/pub/ALICE/MFTWP3/Disk_support_03_05-09-2017.pdf
CAD model: https://twiki.cern.ch/twiki/pub/ALICE/MFTWP3/Disk_support_03-A.35.stp
Assisted by Claude Code.