Helper Cone shapes in LArWheelSolid
A new option to replace internal helper G4Polycone objects in LArWheelSolid with simpler (and thus faster) cone objects is introduced. (This address ATLASSIM-3778.)
For this purpose a local G4ShiftedCone class based on standard G4Cons is implemented. "Shifted" cone is necessary to keep G4Polycone-induced coordinate system.
LArWheelSliceSolid, representing a thin z-slice of LArWheelSolid and an option for its usage activation are also implemented. Such a setup could help Geant4 to make voxelization and also could have positive effect for issues like ATLASSIM-3314, ATLASSIM-3654, and maybe others (stuck tracks).
The geometry variant is controlled with
from LArGeoAlgsNV.LArGeoAlgsNVConf import LArDetectorToolNV
LArDetectorToolNV.EMECVariantInner=INNER_VARIANT
LArDetectorToolNV.EMECVariantOuter=OUTER_VARIANT
where INNER and OUTER_VARIANT could be "Cone" for LArWheelSolid+Cone helper shapes, "Slices" for LArWheelSliceSolid, or anything else for the old variant (LArWheelSolid with polycones). The default is "Wheel".
Both new variants give expected geantino tracking printout. For real particles, however, output ROOT files do have differences comparing to the old version, which is, to my understanding, also expected, since the geometry layout is changed in both variants. If the changes are acceptable should be decided with physical validation.