Skip to content

Version 2.2.3 August 9, 2021 (execution speed, code quality/style)

Compare
Choose a tag to compare
@mszydagis mszydagis released this 09 Aug 20:24
· 152 commits to master since this release
  • Replaced useTiming variable by an enum and made the GetS1 result a class member. Separated the S1 and S2 calculation modes.
  • Made GetS1 return a ref to avoid vector copy, while also adding gcem support and constexpr to offload some redundant operations
  • Made the GetS2 results a private member returned by reference, while also making GetS1 and GetS2 results "const"
  • Removed useless, unused variables that caused a lot of memory allocation/deallocation; result of all this and the above: +~1-5% faster
  • Updated the parametric S1 calc to account for the truncated-Gaussian SPE and DPE distributions, making it more consistent with "full"
  • Changed hybrid-mode transition to be 100 keV, ~500 photon hits in modern TPCs, instead of hits directly, creating a smooth transition
  • Efficiency adjustment in the S1 parametric mode that further makes the parametric and full modes (previously useTiming -1,0) closer.
  • Changes driven by Quentin Riffard (LZ/LBNL) & Greg Rischbieter (LZ/UA), with ideas from Matthew (UA) & Luke Kreczko (Bristol)