Geometry Work Plan for 2020

Version 1.1

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.

  1. Architecture:
    • Code review and optimization - (1)/(2)

      Keep on introducing adiabatic adoption of new C++ Standard constructs in the code and further simplify and enhance performance on key areas of the geometry modeller and navigation system.

  2. Navigation & optimisation:
    • Interface with navigator based on VecGeom - (1)

      Provide first optional interface/adapter for enabling navigation capabilities in VecGeom.

    • 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.

    • 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.

  3. Field transport:
    • Review accuracy of boundary crossing in field - (1)/(2)

      Study boundary crossing accuracy when field integration is enabled, reviewing behavior when using current default parameters in typical geometry setups.

    • Equation of motion and steppers templated on type of field - (2)

      Introduce new template framework for allowing specializations of equation of motion and steppers by the field type.

  4. Solids modelling:
    • Enable VecGeom shapes as default - (1)/(2)

      Prepare infrastructure (also for standalone build of Geant4) with solids from the Unified Solids library (VecGeom) enabled as default.

  • Routine activities
    • Review of user documentation

(1) First semester
(2) Second semester

Created: 24 January 2020
Modified: 27 January 2020