acts-project / acts-project/acts

[bug] Off axis endcap with dd4hep plugin.

Ouverte
#942 10 commentaires 0 réactions 1 personne assignée Réclamée par @asalzburger Voir sur GitHub
Feature Stale
Langage dominant
C++
Étoiles
131
Forks
277
Merge moyen
3 j 13 h
PR mergées (30 j)
112

Description

Hello,

I get the following error when the "layer" volume associated with an "endcap" is offset from the z axis:

```
17:16:40 D2A_L:B0Trac VERBOSE Received layers for positive volume -> creating disc layers
17:16:40 D2A_L:B0Trac VERBOSE Disc layer has 12 senstive surfaces.
17:16:40 D2A_LAC VERBOSE Creating a disk Layer:
17:16:40 D2A_LAC VERBOSE - at Z position = 5405.09
17:16:40 D2A_LAC VERBOSE - from Z min/max = 5401.27 / 5408.41
17:16:40 D2A_LAC VERBOSE - with Z thickness = 9.99688
17:16:40 D2A_LAC VERBOSE - incl envelope = 1.17385 / 1.6762
17:16:40 D2A_LAC VERBOSE - with R min/max = 35 (-2.65614) / 150 (+137.582)
17:16:40 D2A_LAC VERBOSE - with phi min/max = -3.14159 / 3.13982
17:16:40 D2A_LAC VERBOSE - # of modules = 12
17:16:40 D2A_SAC VERBOSE Creating a SurfaceArray on a disc
17:16:40 D2A_SAC VERBOSE Create equidistant binning Axis for binned SurfaceArray
17:16:40 D2A_SAC VERBOSE BinningValue: 3
17:16:40 D2A_SAC VERBOSE (binX = 0, binY = 1, binZ = 2, binR = 3, binPhi = 4, binRPhi = 5, binH = 6, binEta = 7)
17:16:40 D2A_SAC VERBOSE Number of bins: 6
17:16:40 D2A_SAC VERBOSE (Min/Max) = (35/150)
****************************************************
* A runtime error has occured :
* vector::_M_range_check: __n (which is 7) >= this->size() (which is 6)
* the program will have to be terminated - sorry.
****************************************************
```

I think we have hit the limit of the imposed barrel-endcap construction paradigm in the dd4hep plugin. The detector in this case is a far forward detector without a corresponding negative endcap. (Perhaps this endcap pair requirement should be the first to go in upgrading the dd4hep plugin?) So, I added a negative endcap to get the plugin functioning, but only the positive endcap is offset from the z axis.

Here are the verbose outputs for two configurations:
- Tracker layer centered on z axis: https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/222479
- Tracker slightly offset from z axis: https://eicweb.phy.anl.gov/EIC/detectors/athena/-/jobs/222615

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Reproduce the centered and offset configurations using the two linked job outputs, then inspect the dd4hep plugin path that creates disc layers and the SurfaceArray. Determine why the offset positive endcap produces a range-check failure with six bins, and verify that the plugin handles this configuration without terminating while preserving the reported layer geometry.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp
Domaine
backend
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.