Skip to content

Releases: LArSoft/larsoft

larsoft v09_71_00

27 Mar 22:46
Compare
Choose a tag to compare

LArSoft v09_71_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_71_00

Download instructions for just larsoftobj v09_29_00

Purpose

  • approved PRs
  • update genie

New features

  • LArSoft/larpandoracontent#52
    • This PR for larpandoracontent version v04_03_03 updates feature map handling for the TrackShowerIdFeatureTool to directly pass InitializedDoubles rather than primitive doubles, preventing an exception being thrown in the event of an uninitialized feature.
    • This update may alter product outputs where uninitialized features were present previously (on the order of one PFP in every 400 events).
  • LArSoft/larpandora#36
    • This PR for larpandora v09_19_00 converts the usage of CollectHits in LArPandora.cxx into an art tool to allow customisation at this stage of input. The intention is to have an optional tool in icaruscode that performs some filtering on the hits. The default functionality retains the previous behaviour and therefore does not impact other experiments.

Bug fixes

Updated dependencies

Change List

larsoft v09_71_00

lareventdisplay v09_08_11

larexamples v09_06_09

larpandora v09_19_00

larsimrad v09_06_15

larsimdnn v09_02_15

larrecodnn v09_17_14

larwirecell v09_12_01

larana v09_12_04

larreco v09_17_05

larsim v09_33_00

larg4 v09_14_01

larevt v09_07_03

lardata v09_13_01

larcore v09_08_01

larpandoracontent v04_03_03

larsoftobj v09_29_00

larvecutils v09_02_00

lardataobj v09_14_00

lardataalg v09_13_03

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_59_00

larutils v1_29_01

larsoft v09_70_00

24 Mar 03:05
Compare
Choose a tag to compare

LArSoft v09_70_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_70_00

Download instructions for just larsoftobj v09_29_00

Purpose

  • approved PRs

New features

  • LArSoft/larwirecell#28
  • LArSoft/larreco#54
    • INormalizeCharge interface extension to allow per-event setup.
    • This request is for support to SBNSoftware/icaruscode#543.
    • The INormalizeCharge interface is extended to support a "setup" stage where the tool is expected to extract whatever it needs from the event.
    • A default no-op implementation is provided.
    • One of the implementations of this interface in icaruscode will use it to cache the detector clocks data.
    • Note that the current interface already allows access to the event on each normalisation call; therefore alternative approaches are also possible that do not change the interface at all, e.g. caching the detector clocks data at the first call, and for the following calls refresh the cache only if the event ID has changed. This approach has all the usual drawbacks (more cumbersome, has a minor overhead and makes multithreading more complicate).
  • LArSoft/larpandoracontent#51
    • This PR for larpandoracontent version v04_03_02 adds support for GitHub actions to be run in the PandoraPFA LArContent repository. Actions should be skipped in the LArSoft repository and no product changes are expected.
  • Particle Ancestry Map
    • LArSoft/lardataobj#34
    • Currently in the largeant processes (as of ~1 year ago) we are producing a std::map<int, std::set> which indicates the mapping of dropped track IDs (the set of ints) to their undropped ancestor (the key). This object should allow you to find the intended ancestor if you have a track ID for which you cannot access the MCParticle.
    • This object has a few flaws:
      • It doesn't have a name, which makes it very hard for analysers to know what it does (unless you know in advance).
      • It cannot be kept or dropped using the output and input commands in fcl (as a result of not having a name that can be recognised by these prescriptions).
      • When multiple instances of largeant are ran, the MergeSimSources (larsim) module doesn't merge these objects so you lose it from the event. Running multiple largeant instances is a pretty common approach in SBND (and I'm sure in other experiments).
      • Even if you hack the fcl file to keep the original maps, the track ID offsets applied in MergeSimSources are lost, so the maps values are garbage.
    • This PR produces a wrapper object in order to solve all of the above flaws. This also provides a few useful functions to access the information.
    • It will be accompanied by PRs in larg4 and larsim in order to produce the object, and have the ability to merge it.
    • In SBND this object isn't currently used in develop (I ran across this issue in a feature branch, which will later be prepared for develop) so shouldn't be a breaking change. The CI should help indicate whether any other repos use this object and will therefore need to update their usage.
    • LArSoft/larg4#45
    • Produce the new sim::ParticleAncestryMap rather than a raw std::map<int, std::set>
    • LArSoft/larsim#110
    • This PR adds the new sim::ParticleAncestryMap to the MergeSimSources module.

Bug fixes

Updated dependencies

Change List

larsoft v09_70_00

lareventdisplay v09_08_10

larexamples v09_06_08

larpandora v09_18_04

larsimrad v09_06_14

larsimdnn v09_02_14

larrecodnn v09_17_13

larwirecell v09_12_00

larana v09_12_03

larreco v09_17_04

larsim v09_32_02

larg4 v09_14_01

larevt v09_07_03

lardata v09_13_01

larcore v09_08_01

larpandoracontent v04_03_02

larsoftobj v09_29_00

larvecutils v09_02_00

lardataobj v09_14_00

lardataalg v09_13_03

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_59_00

larutils v1_29_01

larsoft v09_69_01_01

22 Mar 20:23
Compare
Choose a tag to compare
larsoft v09_69_01_01 Pre-release
Pre-release

LArSoft v09_69_01_01 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_69_01_01

Download instructions for just larsoftobj v09_28_01

Purpose

  • test release for genie v3_04_04
    • This release is identical to v09_69_01, with the exception of product updates.
    • No changes are needed in user code.
    • See the March 21 talk

New features

Bug fixes

Updated dependencies

  • genie v3_04_00
  • dk2nugenie v01_10_01g
  • genie_phyopt v3_04_00
  • genie_xsec v3_04_00
  • nugen v1_17_09
  • nutools v3_14_03
  • nusystematics v01_02_09
  • ppfx v02_15_09

Change List

larsoft v09_69_01_01

lareventdisplay v09_08_09_01

larexamples v09_06_07_01

larpandora v09_18_03_01

larsimrad v09_06_13_01

larsimdnn v09_02_13_01

larrecodnn v09_17_12_01

larwirecell v09_11_02

larana v09_12_02_01

larreco v09_17_03_01

larsim v09_32_01_01

larg4 v09_14_00

larevt v09_07_02

lardata v09_13_00

larcore v09_08_01

larpandoracontent v04_03_01

larsoftobj v09_28_01

larvecutils v09_02_00

lardataobj v09_13_05

lardataalg v09_13_02

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larsoft v09_69_01

10 Mar 22:53
Compare
Choose a tag to compare

LArSoft v09_69_01 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_69_01

Download instructions for just larsoftobj v09_28_01

Purpose

  • update genie to v3_02_02_p01
    • See the presentation on Feb. 21
    • This update adds several options that are off by default.
    • Also includes FSI bug fix in handling a random number
    • These changes will be part of an upcoming official GENIE release (probably v3_04_00).

New features

Bug fixes

Updated dependencies

  • genie v3_02_02_p01
  • dk2nugenie v01_10_01c
  • nugen v1_17_08
  • nutools v3_14_02
  • nusystematics v01_02_08
  • ppfx v02_15_08

Change List

larsoft v09_69_01

lareventdisplay v09_08_09

larexamples v09_06_07

larpandora v09_18_03

larsimrad v09_06_13

larsimdnn v09_02_13

larrecodnn v09_17_12

larwirecell v09_11_02

larana v09_12_02

larreco v09_17_03

larsim v09_32_01

larg4 v09_14_00

larevt v09_07_02

lardata v09_13_00

larcore v09_08_01

larpandoracontent v04_03_01

larsoftobj v09_28_01

larvecutils v09_02_00

lardataobj v09_13_05

lardataalg v09_13_02

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_59_00

larutils v1_29_01

larsoft v09_69_00

09 Mar 19:36
Compare
Choose a tag to compare

LArSoft v09_69_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_69_00

Download instructions for just larsoftobj v09_28_01

Purpose

  • approved PRs

New features

  • LArSoft/larsim#111
    • Refactoring of PhotonPropagation classes to substantially reduce overhead
    • While inspecting the code for bugs I tend to make changes to the code to make tests. I've collected enough of these changes that it makes sense to put them together neatly.
    • This PR improves performance times and hopefully improves the organisation of the code. The processing time per event doesn't change much, but the initialisation is substantially reduced.
    • Functionality stays largely the same, but there is is a small change in the time propagation distribution, which is expected.
    • Main changes:
      • Change from using ROOT RNG to CLHEP::RandGeneral
      • Create PhotonPropagationUtils to host functions defined twice elsewhere
      • Use references of the fcl parameters, instead of copying the objects
      • Move PropagationTimeModel and SemiAnalyticalModel to the phot namespace
      • Simplify the initialisation and reduce the number of class members, moving several things around and creating some functions to use them during initialisation
      • Round scintillation times instead of flooring them
      • Stop using TVector3
      • Regularise the syntax and clean comments
  • LArSoft/larsim#112
    • Save MotherTrackID in the SimPhotons
    • Running the light simulation withSimPhotons we found the MotherTrackID attribute was not being filled. This PR fixes this.
    • also add the MotherTrackID to PDFastSimPVS_module.cc
  • LArSoft/larg4#46
    • Changes in ParticleList.cc to run full light simulation
    • Particles are now added to the particle list only on their first step. Also add particles to the particle list with energy below the energy cut if it is an optical photon.
    • See the presentation
  • LArSoft/larg4#44
    • Currently simulated energy deposits for which we are not saving the relevant MCParticle follow the prescription of being stored with a trackID of:
    • -1 * the trackID of their first ancestor which was saved
    • This is applied in ParticleListAction, and the effects of it are applied to sim::SimEnergyDeposits in LArG4Detector.
    • In SBND we use sim::SimEnergyDeposits for our TPC & PDS systems but sim::AuxDetHits for our CRT. I noticed that the same prescription is not applied to the sim::AuxDetHits to update their track IDs.
    • This PR employs a similar block to do this. I haven't added this to the other objects mentioned in this area of the code but that may be something that people want to consider going forward.

Breaking Changes

Updated dependencies

  • ifdhc v2_6_18
  • ifdhc_config v2_6_18
  • ifbeam v2_5_21
  • nucondb v2_5_21
  • ifdh_art v2_13_17
  • nugen v1_17_07
  • nusystematics v01_02_07
  • ppfx v02_15_07

Change List

larsoft v09_69_00

lareventdisplay v09_08_08

larexamples v09_06_06

larpandora v09_18_02

larsimrad v09_06_12

larsimdnn v09_02_12

larrecodnn v09_17_11

larwirecell v09_11_02

larana v09_12_01

larreco v09_17_02

larsim v09_32_00

larg4 v09_14_00

larevt v09_07_02

lardata v09_13_00

larcore v09_08_01

larpandoracontent v04_03_01

larsoftobj v09_28_01

larvecutils v09_02_00

lardataobj v09_13_05

lardataalg v09_13_02

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_59_00

larutils v1_29_01

larsoft v09_68_00

22 Feb 22:01
Compare
Choose a tag to compare

LArSoft v09_68_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_68_00

Download instructions for just larsoftobj v09_28_01

Purpose

  • approved PRs

New features

  • Added dumper for recob::OpHit and recob::OpFlash
    • LArSoft/lardataobj#35
      • This pull request adds stream output for recob::OpHit and recob::OpFlash data product classes.
    • LArSoft/lardata#31
      • While working at LArSoft/larana#25, I realised that there is no dumper for recob::OpHit data products yet. The simple module in the pull request tries to fill the gap. (There is none for recob::OpFlash either, but right now I am not filling that gap.)
      • There is the question whether it is preferred for an operator<< (std::ostream&, recob::OpHit const&) to be defined in the data product library (in lardataobj, like for the most part of TPC reconstruction classes) instead.
      • The updated pull request also adds a new dumper for recob::OpFlash.
  • LArSoft/larana#26
    • Optical hit reconstruction algorithms selected via art tools
    • The current optical hit reconstruction is performed by algorithms managed by a "mini-framework". The management of the algorithms in LArSoft is semi-dynamic (or semi-static?), in that the algorithms are chosen at run time, but only among a hard-coded selection of algorithms.
    • This pull request changes the loading mechanism in ophit::OpHitFinder module to leverage on art tool feature. The algorithms are not changed (neither their functionality, nor the interface).
    • This allows the experiments to test additional algorithms or modifications of the existing ones without forking OpHitFinder module.
  • LArSoft/larbatch#22
    • Add support for token authentication. Make project.py more tolerant of imperfect environment initialization by not requiring the ability to import ROOT when submitting jobs.

Bug fixes

  • LArSoft/larpandoracontent#50
    • This PR for larpandoracontent version v04_03_01 ensures that unfilled features for the neutrino slice ID do not attempt to persist their metadata.
  • LArSoft/larana#25
    • Bug fixes to optical hit pedestal reconstruction "rolling mean" algorithm
    • Two details of the rolling mean pedestal algorithm are almost surely bugs.
    • A fix is presented here.
    • The first sees an increase of a threshold as more and more hits are processed in the job. Eventually the threshold will become unpassable and the code will never use interpolation to cover the signal (or high-RMS regions) of the waveforms, but always use the pedestal before or after the region. Which is probably a more sensitive choice at least in ICARUS.
    • The second bug is repeated in two places. In the first, it makes the post-region baseline (mean) be 0 (because extracted out of 0 samples), and the algorithm is most likely going to choose the mean on the pre-region instead. Which is probably a more sensitive choice at least in ICARUS. In the second, the pre-region mean is extracted from a slightly extended interval, affecting the pedestal of the region at the beginning of the waveform if there is signal in it. The effect of this one is likely completely negligible.
    • The impact seems very, very minor on three events from ICARUS data I have tested.
    • Developed and tested with icaruscode v09_65_03.

Updated dependencies

  • pycurl v7_45_2
    • pycurl is supplied to be used as needed with jobsub_lite. It is not setup automatically.
  • mrb v6_08_00

Change List

larsoft v09_68_00

lareventdisplay v09_08_07

larexamples v09_06_05

larpandora v09_18_01

larsimrad v09_06_11

larsimdnn v09_02_11

larrecodnn v09_17_10

larwirecell v09_11_02

larana v09_12_00

larreco v09_17_01

larsim v09_31_05

larg4 v09_13_06

larevt v09_07_02

lardata v09_13_00

larcore v09_08_01

larpandoracontent v04_03_01

larsoftobj v09_28_01

larvecutils v09_02_00

lardataobj v09_13_05

lardataalg v09_13_02

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_59_00

larutils v1_29_01

larsoft v09_67_00

16 Feb 22:41
Compare
Choose a tag to compare

LArSoft v09_67_00 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_67_00

Download instructions for just larsoftobj v09_28_00

Purpose

  • approved PRs

New features

  • LArSoft/larpandoracontent#49
    • v04_03_00 update incorporates modifications to the vertex finding network (both a network architecture change and a modification to the preparation of the input tensors). As this update relates to vertex creation product changes are expected for Pandora products and downstream products relying on them.
    • There is a corresponding update to DUNE/dunereco that makes use of the new networks in the HD accelerator workflow and adds the DL vertex network for the VD accelerator workflow. Correct operation of the networks depends upon the larpandoracontent and dunereco changes being released together.
    • DUNE/dunereco#37
  • LArSoft/larcorealg#35
    • Changes to support PyROOT usage.
    • PyROOT cannot understand an auto return type specification.
    • Also includes fixing ODR violations of inline end/begin free functions.
  • LArSoft/larreco#51
    • Add N+1 peak fitting
    • This PR re-adds a feature to try and fit N+1 Gaussians when fitting N yields poor results that was removed when the hit finding was refactored to use tools. This re-implementation tries to be much smarter about the initial parameters of the extra Gaussian should be added.
    • This feature is disabled by default so no changes to existing workflows are expected.
  • LArSoft/larpandora#34
    • Add SummedIntegral Calorimetry to dE/dx
    • Similarly to LArSoft/larreco#51, this adds the ability to sum the integral of all hits within a snippet when calculating the shower dE/dx. This behaviour is disabled by default and thus no changes to existing workflows are expected.
  • LArSoft/larreco#53
    • add geomName for protodunevd
  • LArSoft/larreco#52
    • This PR adds a new charge method to the calorimetry module. This new method sums the integral of all hits within a snippet. It aims to address the same issues as the SummedADC method but better handles the case where hits within the same snippet are assigned to different tracks.
    • No changes to expected existing are expected.

Bug fixes

Updated dependencies

  • mrb v6_08_00

Change List

larsoft v09_67_00

lareventdisplay v09_08_06

larexamples v09_06_04

larpandora v09_18_00

larsimrad v09_06_10

larsimdnn v09_02_10

larrecodnn v09_17_09

larwirecell v09_11_01

larana v09_11_07

larreco v09_17_00

larsim v09_31_04

larg4 v09_13_05

larevt v09_07_01

lardata v09_12_01

larcore v09_08_01

larpandoracontent v04_03_00

larsoftobj v09_28_00

larvecutils v09_02_00

lardataobj v09_13_04

lardataalg v09_13_01

larcorealg v09_10_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_58_01

larutils v1_29_01

larsoft v09_66_02

09 Feb 20:08
Compare
Choose a tag to compare

LArSoft v09_66_02 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_66_02

Download instructions for just larsoftobj v09_27_00

Purpose

  • approved PRs

New features

  • LArSoft/larana#24
    • OpHits: Simple RiseTimeGaussFit tool added
    • Instead of computing rise time of Optical Hits with respect to the relative max amplitude, this tool looks for the first maximum of an optical signal and fits the peak to a gaussian.
    • The tool has a minimum Amplitud threshold for it to be considered the maximum, and a tolerance number of bins, to prevent bad fittings.
    • This approach has been tested with good results in the reconstruction of filtered X-Arapuca signals in SBND simulations.

Bug fixes

Updated dependencies

Change List

larsoft v09_66_02

lareventdisplay v09_08_05

larexamples v09_06_03

larpandora v09_17_01

larsimrad v09_06_09

larsimdnn v09_02_09

larrecodnn v09_17_08

larwirecell v09_11_00

larana v09_11_06

larreco v09_16_05

larsim v09_31_03

larg4 v09_13_04

larevt v09_07_00

lardata v09_12_00

larcore v09_08_00

larpandoracontent v04_02_01

larsoftobj v09_27_00

larvecutils v09_02_00

lardataobj v09_13_03

lardataalg v09_13_00

larcorealg v09_09_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_58_00

larutils v1_29_01

Test Release larsoft v09_66_01_01

07 Feb 03:50
Compare
Choose a tag to compare
Pre-release

LArSoft v09_66_01_01 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_66_01_01

Download instructions for just larsoftobj v09_27_00

Purpose

New features

Bug fixes

Updated dependencies

  • genie v3_02_02_p01
  • dk2nugenie v01_10_01c
  • nugen v1_17_06_01
  • nutools v3_14_01_01
  • nulite v3_14_01_01
  • nusystematics v01_02_06_01

Change List

larsoft v09_66_01_01

lareventdisplay v09_08_05_01

larexamples v09_06_03_01

larpandora v09_17_01_01

larsimrad v09_06_09_01

larsimdnn v09_02_09_01

larrecodnn v09_17_08_01

larwirecell v09_11_00

larana v09_11_05_01

larreco v09_16_05_01

larsim v09_31_03_01

larg4 v09_13_04

larevt v09_07_00

lardata v09_12_00

larcore v09_08_00

larsoft v09_66_01

31 Jan 21:09
Compare
Choose a tag to compare

LArSoft v09_66_01 Release Notes

list of LArSoft releases

Download instructions for larsoft v09_66_01

Download instructions for just larsoftobj v09_27_00

Purpose

  • approved PRs

New features

  • LArSoft/larpandoracontent#48
    • This PR for larpandoracontent version v04_02_01 incorporates an optimisation to improve the computational efficiency of cosmic ray reconstruction by avoiding an unnecessary copy.
    • No product changes are expected.

Bug fixes

Updated dependencies

  • ifdhc_config v2_6_15
  • ifdhc v2_6_15
  • ifbeam v2_5_19
  • nucondb v2_5_19
  • ifdh_art v2_13_16
  • nugen v1_17_06
  • nusystematics v01_02_06
  • ppfx v02_15_06
  • mrb v6_07_10
  • git v2_37_3 (installed on larsoft cvmfs since Oct. 18)
  • gh v2_14_4 (installed on larsoft cvmfs since Oct. 18)

Change List

larsoft v09_66_01

lareventdisplay v09_08_05

larexamples v09_06_03

larpandora v09_17_01

larsimrad v09_06_09

larsimdnn v09_02_09

larrecodnn v09_17_08

larwirecell v09_11_00

larana v09_11_05

larreco v09_16_05

larsim v09_31_03

larg4 v09_13_04

larevt v09_07_00

lardata v09_12_00

larcore v09_08_00

larpandoracontent v04_02_01

larsoftobj v09_27_00

larvecutils v09_02_00

lardataobj v09_13_03

lardataalg v09_13_00

larcorealg v09_09_00

larcoreobj v09_07_00

larfinder v09_00_01

larbatch v01_58_00

larutils v1_29_01