ProtoDUNE active volume on the cryostat side
We are experiencing a strange issue with ProtoDUNE geometry. In the ProtoDUNE geometry there are 12 TPCs and 6 TPCs are facing the cryostat walls:
And here are the offline TPC numbers -- shown inside the TPC volumes. The beam enters from the left. 3 7 11 ===== ===== ===== 2 6 10 ----------------- CPA 1 5 9 ===== ===== ===== 0 4 8 TPC's 0, 3, 4, 7, 8, and 11 do not have a field which drifts electrons towards the APA's, though light flashes can be made there and particles depositing charge between the wire planes will cause detected pulses on the wires.
We used to ignore signals on the cryostat side (TPC0,4,8,3,7,11) in the simulation. We recently enabled simulation of signal on the cryostat side and it turns out the drift volume on the cryostat is too large (~12 cm). Martin tried to reduce the drift volume to 5 mm but the initialization of geometry service gives the following error:
cet::exception caught in art ---- OtherArt BEGIN ServiceCreation ---- ServiceNotFound BEGIN Unable to create ServiceHandle. Perhaps the FHiCL configuration does not specify the necessary service? The class of the service is noted below... ---- OtherArt BEGIN ServiceCreation ---- DuneApaChannelMapAlg BEGIN Initialize: View 2 is not the expected 0 ---- DuneApaChannelMapAlg END cet::exception caught during construction of service type geo::Geometry: ---- OtherArt END ---- ServiceNotFound END cet::exception caught during construction of service type lariov::SimpleChannelStatusService: ---- OtherArt END %MSG
Basically if the drift volume is too small, plane 0 on TPC 0 (an outer TPC) will have a view 2, which is inconsistent. I am quite puzzled what's causing this. Maybe related to #22431?
#1 Updated by Tingjun Yang about 1 month ago
To reproduce this problem, change geometry_dune.fcl with the following two lines:
Any lar command that uses geometry service will show this problem, e.g.
lar -c checkwires.fcl
#2 Updated by Tingjun Yang about 1 month ago
- Status changed from New to Resolved
The problem seems to be caused by the definition of drift direction. The drift direction for each plane is defined based on the TPC center and the plane center. If the TPC volume is too small, the TPC center will be in the middle of planes and then planes in that TPC can have different drift directions, which leads to many confusing results. Martin found a solution to keep the TPC volume big while reducing the active volume, which resolved this issue.
#3 Updated by Thomas Junk about 1 month ago
Thanks for debugging that! Maybe it should check the TPC far side instead of the center. Even then, if we were to do the cryostat wire planes "right", the TPC should end at the grid, which probably is big enough. The TPC "center" isn't really a plane at which anything happens.