Skip to content
This repository has been archived by the owner on May 18, 2023. It is now read-only.

COATJAVA release 7.1.0

Compare
Choose a tag to compare
@raffaelladevita raffaelladevita released this 19 Dec 22:04
· 41 commits to master since this release
7b46ce0

Compatible with GEMC 4.4.2
Required Java 11 or later

  • Reconstruction:
    • DC:
      • Full restructuring for integration of AI-assisted tracking:
        • Standalone clustering service to be run before hit-based tracking.
        • Conventional hit-based service, starting from clustering output.
        • AI hit-based service, starting from AI predictions in ai::tracks.
        • Hit-based services now output new HitBasedTrkg::..HitTrkId bank with track-dependent information (track ID, TProp, TBeta, ...)
        • DCTBEngine rebuilds full hit information from HitBasedTrkg::..Hits and HitBasedTrkg::..HitTrkId banks. Extended to DCTBAIEngine for AI tracking.
        • Mechanism to select engine output bank names between conventional and AI.
      • Additional changes:
        • Constants class turned into a singleton to ensure all DC engines use the same configuration. Geometry factories now members of Constants class. Cleanup of unused constants. New initialization method.
        • T0 Table now read with ConstantsManager.
        • Added cluster IDs to Track bank.
        • New method for consistent assignment of track-dependent information to hits and subsequent updates.
        • TB tracking now rejects hits with not track-related information after HB.
        • New track overlap remover method now handles three-way overlaps.
        • Removal of duplicated clusters created to address the LR ambiguity.
        • Fix issues with cross and tracks duplication, removed unnecessary hit cloning.
        • New yaml variable to support choice of output bank names, switch off 5SL tracking, select one sector., turn on/off realignment of time information to hit doublets (off by default). Cleaner printouts of selected configuration. Configuration via environment variables removed.
    • EC: default reporting planes for ECinner and ECouter updated.
    • EB:
      • EBHBAI and EBTBAI engines to support parallel running of conventional and AI tracking.
      • Removed CTOF-CND veto from neutral PID assignment.
      • Cloning DetectorResponses to preserve track-related info in case of multiple associations.
    • FMT:
      • Use swimming to calculate DC track intersections instead of using values from DC trajectory bank: allows for iteration on FMT alignments without re-running the DC service.
      • Added timing cut to select good hits, excluding t==0 to preserve MC hits.
      • Merged FittedHit functionalities into Hit class.
    • MLTN:
      • New package providing the AI track inference information: includes classifier network to 6SL track identification and fixer network to predict missing layer for 5SL tracks.
      • Reads output of DC clustering engine and provide track candidate predictions in ai::tracks bank. Bank includes list of clusters, particle charge, z vertex and probability.
      • Relies on Archive class to handle multiple networks.
      • Supports network choice based on run and flavor.
      • Yaml option to read neural network file from path for testing purposes.
  • Common-tools:
    • EngineProcessor updated to include new DC clustering service in default configuration.
    • New clas-logging package implementing java Logger, supporting different verbosity levels. Several classes in common-tools and reconstruction switched to Logger. Logging property files included as resources. Currently results in highest verbosity for reconstruction engines when run in Clara and for groovy scripts.
    • Post-processing supports overall helicity flip also or direct reporting.
  • Other:
    • Updated DC and EB bankdefs json files to include AI banks.
    • Updated yaml files with examples on how to run conventional and AI-assisted tracking.
    • AI-assisted tracking neural net file with networks for RG-A Spring18, RG-A Fall18, RG-B Spring19
    • Advanced KPP test now checked both conventional and AI tracking results.
    • Switched all bin scripts to serial-GC.

Commits since 7.0.1