Skip to content

Releases: NESTCollaboration/nestpy

Update to v2.0.3

23 May 14:17
4740be8
Compare
Choose a tag to compare

Tagging a new nestpy version that allows for locking/unlocking the random seed, in addition to removing constraints on yield generation in helpers.py

Update to v2.0.2, sync with NEST v2.4.0

29 Jan 23:14
36f4865
Compare
Choose a tag to compare

nestpy versioning has been incremented to sync with NEST v2.4.0. Some python bindings for LArNEST functions has changed since v2.0.1

Sync with NESTv2.3.12beta

19 Jan 18:51
0be624f
Compare
Choose a tag to compare

The NEST submodule has been updated to use NEST v2.3.12beta. The main changes here are:

  • Moved declaration of free parameter vectors to NEST.hh and are globally defined, as opposed to being part of NESTcalc
  • Introduced the ERYieldsParam vector to give more user control over the beta ER yields model
  • Updated the NRERWidthParam defaults to reduce ER band widths

The nestpy bindings have been updated to take the above changes into account. Additional detector functions now have bindings included as well.

Update to nestpy internals, adding in basic LArNEST bindings.

08 Sep 14:45
4c5cf99
Compare
Choose a tag to compare

The copy/paste method for the NEST bindings have been replaced with adding NEST and other modules (such as gcem and pybind11) as git submodules which are downloaded at compile time. LXe notebooks and python scripts have been moved to tutorials/arxiv, and new notebooks will be placed in the tutorials folder as they are created in the future. LAr functionality through LArNEST has been added and will be expanded upon in future releases.

Suggestions/issues/errors should be added as github issues.

Users may have to do before installing.

pip uninstall nestpy

Syncing with NESTv2.3.9

08 Jul 15:54
edf2cb4
Compare
Choose a tag to compare

1.5.5 (2022-07-08)

Synced with NEST v2.3.9

  • New Physics Modeling:
    ** Skewness can be turned off and on now for ER just like for NR. For on -> old model or fixed (Quentin Riffard, LZ/LBNL)
    ** Older beta model is default for gaseous Xenon, a better fit to old world data at the keV scale (Eric Church, DUNE/PNNL)
    ** New dark matter halo model defaults, bringing NEST up to date on WIMP and Sun v (Baxter et al., arXiv:2105.00599)

  • Miscellaneous Bug Fixes:
    ** Fluctuations adjust for difference in width from truncated Gaussians for PE not just mean
    ** Complaint that position resolution too poor does not activate until above S2 (top) of 40 PE
    ** In the dE/dx-based model the minimum LET is now 1.0 MeV/cm not 0 to avoid weirdness

  • Updated binding for GetQuanta to allow for nestpy control over ER skewness.

Update pypi and tests

17 Apr 00:29
Compare
Choose a tag to compare

What's Changed

  • Integrated testing for multiple python versions by @JoranAngevaare in #80
  • No more travis, pipy uploads via github actions by @JoranAngevaare in #86
    • Thanks to the great help of Joran Angevaare, we now use GitHub Actions and no longer use Travis for releases and testing.
    • pip install nestpy works again.
    • Should one want to recompile from source, you will still need to use git clone (for now).

New Contributors

Full Changelog: v1.5.2...v1.5.4

Sync with NESTv2.3.6

12 Apr 00:42
Compare
Choose a tag to compare

On the NEST Side

See NEST v2.3.6 for more release notes.

New Physics:

  • Perfectly vertical MIP tracks now work, and use latest beta model (Greg Rischbieter, LZ/UAlbany)
  • Field in G4 in any direction not just vertical but e.g. radial OK, ala (n)EXO and PETALO (Paola Ferrario)

Code Quality:

  • NEST: Geant4.9.11 & C++17 compatibility achieved (Paola Ferrario, PETALO/Basque Foundation for Science)
  • Multiple scatter code warning addressed: unused variable (Greg Rischbieter, LZ/UAlbany)

nestpy: What's Changed

Full Changelog: v1.5.1...v1.5.2

Sync with NESTv2.3.0

12 Nov 15:48
9f9b91c
Compare
Choose a tag to compare

1.5.0 (2021-11-11)

Synced with NEST v2.3.0 https://github.com/NESTCollaboration/nest/releases/tag/v2.3.0

New Physics:

  • Carried over from v2.3 beta: A new binomial random number generator (C++ default library), e- EE models, beta model with new yields and fluctuations, non-beta-ER (XELDA).
  • New beta model is default regardless of E-field, but old one is still accessible
  • ER model (betas and gammas weighted) is its own function, callable
  • Pb-206 ion coming off wall from alpha decay has correct Ly and Qy versus field (Thomas-Imel box model for recomb)
  • The electron extraction efficiency model now includes “optimistic” high e- EE Aprile/PandaX fits (activatable with EPS_GAS negative)

Code Quality and/or Miscellaneous Bug Fixes:

  • C++11 -> 17 default, README updated with all new versioning requirements, but old gcc and cmake versions requested to allow backwards-compatibility with nestpy. std::clamp still doesn’t work, so similar function written by hand
  • 1.1 -> 1.08 for increasing Qy to match new Zurich W-value measurement, but with new more logical variable names both deep in code and in detector file for user, and with one factor universal in NEST.cpp; general variable renaming for greater clarity
  • Numerous cosmetic and aesthetic changes to code, including unused variable removal, while spacing and tabbing made Google clang-format (with shell script for that now included with NEST), if/else Mac dangle warning addressed
  • Kr83m yields same but code overhauled to allow min versus max time separation flexibility and easier data comparison, with bug squashed where wrong error message got replayed
  • NEST is now 30% faster, cf. v2.2.4, at least when using gcc 7+, despite the new binomial fluctuation function!

nestpy Specific:

  • Bindings to energy spectra generators from TestSpectra.cpp, including: tritium and C14 beta sources; AmBe, DD, Cf252 neutron sources; Spin-Independent WIMP Generators.

Syncing with NESTv2.2.3

24 Aug 20:43
dc2b15d
Compare
Choose a tag to compare

Sync with NEST v2.2.3

  • 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
  • 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)

Syncing with NESTv2.2.2

08 Jul 15:21
3cfe989
Compare
Choose a tag to compare

Sync with NEST v2.2.2

Code Quality and/or Miscellaneous Bug Fixes:

  • Deleted unused redundant line in GetS1 that re-calculated the drift time (Quentin Riffard, LBNL/LZ)
  • Only print most error and warning messages if verbosity on (Quentin Riffard, LBNL/LZ)
  • Updated TravisCI link in README and added note about OSX builds (Chris Tunnell, Rice/XENON)
  • Use of abs value func standardized, lines broken up, multi-line string for cerr (Matthew at behest of Luke Kreczko, Bristol/LZ)
    New Physics:
  • Liquid Xe model for NR is now better behaved at few hundred keV and few hundred in S1: no odd increase in band width caused by Nex/Ni zeroing out and kinking the recombination probability. Mean yields model unchanged, nor recombination fluctuations / skewness. (Matthew and Greg R., UAlbany/LZ)