Skip to content

LArSoft v10_23_00

Latest

Choose a tag to compare

@lgarren lgarren released this 07 Aug 22:52

LArSoft v10_23_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v10_23_00

Download instructions for just larsoftobj v10_06_03

Purpose

  • approved PRs
  • enable e28 builds (gcc v13_1_0 with c++20)
  • build with dk2nu v01_12_00
    • Fix the handling to time when using MoveToZ0()
    • Drop the support for GENIE v2 and ROOT 5

New features

  • LArSoft/larwirecell#66
    • Add new WireCell component TrackIDPIDMap2h5 that reads MCParticle and SimChannel collections from art events and writes per-trackID truth metadata (PID, mother ID, G4 process, mother PID, energy fraction, and full MC ancestry chain) to HDF5. This enables downstream pixel-level classification of Tracks, Showers, Michel electrons, Delta-rays, and Blips.
    • Extend Labelling2D to output energy fraction (1st/2nd contributor) and total numelectrons traces alongside existing label/trackid/pid frames.
  • LArSoft/larrecodnn#62
    • This PR adds a bare Triton gRPC client implementation for Mike Wang's raw data reduction 2D CNN inference.
    • Changes:
      • Adds WireframeRecogTriton_tool.cc
      • Registers the tool as an art tool plugin
      • Updates the Triton Tools CMake configuration
    • This implementation provides direct Triton inference without SONIC-specific dispatch logic.
  • LArSoft/larpandoracontent#98
    • This PR for larpandoracontent v05_03_00 adds a minor build configuration update and some new algorithms for track reconstruction:
      • Resolves build tension between cetmodules and standalone builds caused by the presence/absence of a Torch TBB dependency.
      • Adds orthogonal mechanism for matching of activity between planes.
      • Adds algorithms to recover tracks lost to over-merging.
    • The new algorithms are not yet active in any workflow, so no product changes are expected.
  • LArSoft/larpandora#53
    • New RefinedPCA shower direction tool + fixes to lesser used tools
    • fixes
      • ShowerTrackDirection: exposed the shower element labels to the fcl config to remove hardcoding
      • ShowerTrackHitDirection: the original dir reco logic was broken, it mixed unit vectors and unnormalised vectors and its calculation of the standard deviation to try to remove outliers was not working. I couldnt really understand the intent of this tool and its implementation meant it was guaranteed to fail and never produce a direction. I assume this means no one has ever used it. I changed the logic to do dir reco by summing the unit vectors in the initial track, I think this is inline with what the class name suggets it does and the original intent of the code.
      • ShowerTrackSpacePointDirection: Same problem and fix as for ShowerTrackHitDirection, these two are almost the same tool.
    • New Tool ShowerRefinedPCADirection
      • A new PCA that uses weighted PCA to iteratively refine a seed PCA so that it focuses more on spacepoints near the vertex and central core of the shower.
      • Performs much better than all other tools for leading electron (see image)
      • Scanned a handful of configurables and put the best set as the fcl defaults #21
    • WritePCAxis change
      • ShowerRefinedPCADireciton runs after ShowerPCADirection to get a seed PCA. If both tools try to write a recob::PCAxis there is an error. I added a WritePCAxis configurable to each tool that controls whether the tool will write its PCA and assns out to the art-root file. Everything works fine if only one of these tools has WritePCAxis: true, I assume you would want this tool to be the refined PCA. Previously, ShowerPCADiretion was the only tool that did produced a PCA so this was not an issue.
      • Screenshot from 2026-07-04 10-13-19

Bug fixes

  • LArSoft/larsim#173
    • Fix in-plane coordinate for orientation 2 in Rectangle_SolidAngle
    • For OpDetOrientation == 2 the arapuca plane is normal to z, so the in-plane coordinate paired with the window half-width o.w is y. The function used std::abs(v.Z()) as both the perpendicular depth and the in-plane width, so the returned solid angle had no dependence on the true in-plane position. Assign the in-plane coordinate d3 per-orientation alongside d1 and d2. No change to orientation 0 or 1, where z is in-plane.
  • LArSoft/larsimdnn#19
    • Fix cmake errors from protobuf-config.cmake found in spack mpd build.
    • Add find_package(Protobuf) before find_package(TensorFlow) so all protobuf target are defined before find_package(grpc) is called in find_package(TensorFlow).
  • LArSoft/larrecodnn#64
    • Silence warnings from hep_hpc headers when compiling with gcc 12.5.0+.
    • See larrecodnn/ImageMaker/CMakeLists.txt

Updated dependencies

  • dk2nudata v01_12_00
  • dk2nugenie v01_12_00
  • torch_scatter v2_1_2b
  • nusimdata v1_29_04
  • nuevdb v1_09_15
  • nug4 v1_17_04
  • geant4reweight v01_21_04
  • nugen v1_23_06
  • nutools v3_22_02
  • systematicstools v01_05_00
  • nusystematics v1_05_15
  • ppfx v02_21_02
  • spdlog v1_14_1b
  • wirecell v0_37_0a
  • artg4tk v13_00_01

Change List

larsoft v10_23_00

lareventdisplay v10_01_08

larexamples v10_02_03

larpandora v10_05_00

larsimrad v10_01_07

larsimdnn v10_02_06

larrecodnn v10_05_00

larwirecell v10_04_00

larana v10_02_08

larreco v10_06_08

larsim v10_20_06

larg4 v10_20_06

larevt v10_00_22

lardata v10_00_19

larcore v10_00_06

larpandoracontent v05_03_00

larsoftobj v10_06_03

larvecutils v09_04_04

lardataobj v10_05_03

lardataalg v10_02_04

larcorealg v10_00_06

larcoreobj v10_00_03

larfinder v09_00_06

larbatch v01_61_05

larutils v1_29_10