Skip to content

LArSoft v10_25_00

Choose a tag to compare

@lgarren lgarren released this 14 Sep 19:30
· 3 commits to develop since this release

LArSoft v10_25_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v10_25_00

Download instructions for just larsoftobj v10_07_00

Purpose

  • approved PRs

New features

  • LArSoft/larana#45
    • OpFlashAlg: a zero-width flash deletes every later flash within its late-light window
    • extensive notes are found in the PR
  • LArSoft/larsim#174
    • In DUNE we came across strange behaviour where light yield on some optical detectors was calculated well below expectation. It turned out that the SemiAnalyticalModel could not calculate the orientation of the arapucas correctly if they used rotation transformation in the gdml.
    • The original code guessed the direction only based on the spatial dimensions of the sensitive volumes which did not take into account the rotational transformation.
    • The new code takes this into account, pulling the transformation from the geometry service.
    • The code has been tested with results consistent with expectations. There was only marginal degradation in speed observed.
      • PDFastSimPAR ... v10 has 0.0195s/event stock and 0.0199s/event patched.
    • The tests were made by @sofiaksodhi.
    • coordination meeting presentation
  • LArSoft/lardataalg#52
    • Support for selected unit product and ratio in quantity library
    • Extensive notes are provided in the PR
    • This was presented at a coordination meeting

Bug fixes

  • LArSoft/larsim#175
    • Store photon library metadata with TParameter and not RooInt/RooDouble
      RooFit's RooInt and RooDouble were internal helper classes that were
      never meant for use outside RooFit unit tests: RooInt was removed
      entirely in ROOT 6.30 (breaking the build against art 3.15), and
      RooDouble's header is private in later ROOT versions.
    • The photon library metadata is now written as TParameter<Int_t> and
      TParameter<Double_t> from ROOT core, which is the standard ROOT class
      for named scalar values. Since art::TFileDirectory::makeAndRegister()
      requires SetName()/SetTitle(), which TParameter does not provide, a
      small helper registers the parameter through TFileDirectory::make()
      instead. TParameter has no title, so the descriptive strings formerly
      stored in the titles are kept as code comments.
    • Existing photon library files remain readable: the legacy RooInt and
      RooDouble values are extracted without RooFit via TKey::ReadObjectAny()
      and TClass::GetDataMemberOffset(), which also works for the
      dictionary-less RooInt through the "emulated" class that ROOT builds
      from the streamer information stored in the file itself. Note that
      TKey::ReadObj() cannot be used for this: for an emulated class, its
      virtual Streamer() call dispatches to the compiled TNamed base class
      and silently reads only that part of the object.
    • This was the only RooFit usage in larsim, so the ROOT::RooFitCore link
      dependency is dropped as well.
    • Code provided by Jonas Rembser
    • This fix is required when building with art 3.15
  • LArSoft/larsim#176
    • Remove unnecessary use of art::Ptr
    • This is an example of how art::Ptr usage can be removed based on the guidelines for migrating from art to Phlex.
  • resolve problem with larcore unit tests

Updated dependencies

Change List

larsoft v10_25_00

lareventdisplay v10_01_10

larexamples v10_02_05

larpandora v10_05_02

larsimrad v10_01_09

larsimdnn v10_02_08

larrecodnn v10_05_02

larwirecell v10_04_02

larana v10_03_00

larreco v10_06_10

larsim v10_22_00

larg4 v10_20_07

larevt v10_00_23

lardata v10_00_20

larcore v10_00_07

larpandoracontent v05_04_00

larsoftobj v10_07_00

larvecutils v09_04_04

lardataobj v10_05_03

lardataalg v10_03_00

larcorealg v10_00_06

larcoreobj v10_00_03

larfinder v09_00_06

larbatch v01_61_05

larutils v1_29_10