Geometry Work Plan for 2019
Version 1.0
NOTE: Any dates assigned to items are to be considered just indicative.
- Items marked with refer to new developments.
- Items marked with will involve new man-power or contribution from external sources interested in the project.
- Items marked with will require coordination with more than one Working Group.
- Items marked with (*) may or may not be achieved.
- Architecture:
- Code review and modernization - (1)/(2)
Keep on introducing adiabatic adoption of C++11 and C++14 constructs to simplify and enhance performance on key areas of the geometry modeller and navigation system.
- Code review and modernization - (1)/(2)
- Navigation & optimisation:
- Implement prototype navigator based on VecGeom - (1)
Based on revision of G4Navigator above, provide first prototype implementation of a navigator adapter making full use of navigation capabilities in VecGeom.
- Enable default use of interpolation in intersection calculation in
magnetic field propagation - (1)
Enable interpolation in intersection calculation as the default and evaluate performance in field propagation in terms of accuracy and speed on realistic benchmarks.
- Separate safety computation and state from navigator - (1)/(2)
Loose coupling of G4Navigator in the computation of the safety distances from geometrical boundaries, factorising out the implementation now included in G4Navigator class, to get rid of potential side effects. Implement strategy for a light-weight base navigator class not holding navigation state, eventually adopting template arguments.
- Revise protocol between transportation and tracking to better cope with
particles looping in field - (1)/(2)
Review existing protocol between tracking and transportation to possibly enhance current treatment of looping particles in field and reduce incidence of looping particle warnings.
- Revision of the transportation processes; specialised transportation
processes for neutral and charged particles - (2)
Factorise implementation of G4Transportation (and G4CoupledTransportation) for considering having at least two specialised transportation processes, one for neutral and one for charged particles (perhaps also one specific for optical photons), in order to optimise and speed-up transport by reducing redundant calls and code branches.
- Review accuracy of boundary crossing in field - (2)
Study boundary crossing accuracy when field integration is enabled, reviewing behavior when using current default parameters in typical geometry setups.
- Profiling and optimisation of multiple navigation - (2)
Revise the design and implementation of multiple navigation and coupled-transportation.
Identify any open issue in application to fast-simulation, scoring and layered tracking geometries and in conjuction with magnetic field transport.
Identify possible CPU performance penalties which may be introduced with the activation of coupled-transportation. Optimize overall performance (ATLAS request).
- Implement prototype navigator based on VecGeom - (1)
- Solids modelling:
- Complete set of specific shapes in VecGeom - (1)/(2)
Complete implementation of remaining specific solids in the Unified Solids library (VecGeom) for geometrical shapes.
- Complete set of specific shapes in VecGeom - (1)/(2)
- Routine activities
- Review of user documentation
(1) First semester
(2) Second semester
Created: 15 January 2019
Modified: 24 January 2019