Abstract
Cryogenic solid state detectors are widely used in dark matter and neutrino experiments, and require a sensible raw data analysis. For this purpose, we present Cait, an open source Python package with all essential methods for the analysis of detector modules fully integrable with the Python ecosystem for scientific computing and machine learning. It comes with methods for triggering of events from continuously sampled streams, identification of particle recoils and artifacts in a low signal-to-noise ratio environment, the reconstruction of deposited energies, and the simulation of a variety of typical event types. Furthermore, by connecting Cait with existing machine learning frameworks we introduce novel methods for better automation in data cleaning and background rejection.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Data Availability Statement
This manuscript has associated data in a data repository. [Authors’ comment: The datasets generated during and/or analysed during the current study are available from the corresponding author on reasonable request].
References
Goodman MW, Witten E (1985) Detectability of certain dark-matter candidates. Phys Rev D 31:3059–3063
Akimov D et al (2017) Observation of coherent elastic neutrino-nucleus scattering. Science 357(6356):1123–1126
Pröbst F et al (1995) Model for cryogenic particle detectors with superconducting phase transition thermometers. J Low Temp Phys 100(1):69–104
Van Rossum G, Drake FL (2009) Python 3 reference manual. CreateSpace, Scotts Valley
Armengaud E et al (2016) Constraints on low-mass WIMPs from the EDELWEISS-III dark matter search. J Cosmol Astropart Phys 2016(05):019
Arnaud Q et al (2018) First results from the NEWS-G direct dark matter search experiment at the LSM. Astropart Phys 97:54–62
Coarasa I et al (2021) Machine-learning techniques applied to three-year exposure of ANAIS–112. J Phys: Conf Ser 2156(1):012036
Golovatiuk A et al (2022) Deep Learning for direct Dark Matter search with nuclear emulsions. Comput Phys Commun 275:108312
Khosa CK et al (2020) Convolutional neural networks for direct detection of dark matter. J Phys G: Nucl Particle Phys 47(9):095201
LUX Collaboration et al (2022) Fast and flexible analysis of direct Dark Matter search data with Machine Learning
Paszke A et al (2019) PyTorch: an imperative style, high-performance deep learning library. In: Wallach H et al (eds) Advances in neural information processing systems, vol 32. Curran Associates, Inc, pp. 8024–8035.
Falcon W et al (2019) PyTorch Lightning. GitHub. Note: https://github.com/PyTorchLightning/pytorch-lightning, 3
Abdelhameed AH et al (2019) First results from the CRESST-III low-mass dark matter program. Phys Rev D 100:102002
COSINUS Collaboration et al (2021) First measurements of remoTES cryogenic calorimeters: easy-to-fabricate particle detectors for a wide choice of target materials
F. W. et al (2021) Cryogenic Artificial Intelligence Tools - A Python package for the raw data analysis of cryogenic particle detectors with machine learning. https://github.com/fewagner/cait
Python Package Index - PyPI. https://pypi.org/
Wagner F et al (March 2022) fewagner/cait: v1.1.1. https://doi.org/10.5281/zenodo.6359433
Virtanen P et al (2020) SciPy 1.0: fundamental algorithms for scientific computing in python. Nat Methods 17:261–272
Harris CR et al (2020) Array programming with NumPy. Nature 585(7825):357–362
Lam SK et al (2015) Numba: A LLVM-based python JIT compiler. In: Proceedings of the second workshop on the LLVM compiler infrastructure in HPC, LLVM ’15, New York. Association for Computing Machinery
McKinney W et al (2010) Data structures for statistical computing in python. In: Proceedings of the 9th python in science conference, vol 445, pp 51–56. Austin
Hunter JD (2007) Matplotlib: a 2D graphics environment. Comput Sci Eng 9(3):90–95
P. T. Inc. Collaborative data science (2015)
Pérez F, Granger BE (2007) IPython: a system for interactive scientific computing. Comput Sci Eng 9(3):21–29
widgets community J (2015) ipywidgets, a GitHub repository. Retrieved from https://github.com/jupyter-widgets/ipywidgets
da Costa-Luis CO (September 2019) tqdm: A fast, Extensible Progress Bar for Python and CLI. https://doi.org/10.5281/zenodo.3435774
Strauss R et al (2017) Gram-scale cryogenic calorimeters for rare-event searches. Phys Rev D 96:022009
Billard J et al (2022) Direct detection of dark matter—APPEC committee report. Reports Progr Phys 85(5):056201
Agnese R et al (2017) Projected sensitivity of the SuperCDMS SNOLAB experiment. Phys Rev D 95:082002
Undagoitia TM, Rauch L (2015) Dark matter direct-detection experiments. J Phys G: Nucl Particle Phys 43(1):013001
The HDF Group. Hierarchical Data Format, version 5, 1997-NNNN. https://www.hdfgroup.org/HDF5/
Collette A (2013) Python and HDF5. O’Reilly
Alduino C et al (2017) Low energy analysis techniques for CUORE. Eur Phys J C 77(12):857
Mancuso M et al (2019) A method to define the energy threshold depending on noise level for rare event searches. Nucl Instrum Methods Phys Res Sect A: Accel Spectrom Detect Assoc Equip 940:492–496
Carrettoni M, Cremonesi O (2010) Generation of noise time series with arbitrary power spectrum. Comput Phys Commun 181(12):1982–1985
Lecun Y et al (1998) Gradient-based learning applied to document recognition. Proc IEEE 86(11):2278–2324
Kingma DP, Ba J (2015) Adam: a method for stochastic optimization. In: Bengio Y, LeCun Y (eds) ICLR (Poster)
Kluyver T et al (2016) Jupyter Notebooks—a publishing format for reproducible computational workflows. In: Loizides F, Schmidt B (eds) Positioning and power in academic publishing: players, agents and agendas. IOS Press, pp 87–90
F. W. et al (2021) Cait (Cryogenic Artificial Intelligence Tools) - Documentation. https://cait.readthedocs.io/
Acknowledgements
We thank the CRESST and COSINUS collaborations for many discussions, especially Franz Pröbst, Martin Stahlberg, Nahuel Ferreiro Iachellini, Daniel Schmiedmayer and Christian Strandhagen. We are grateful for all early users, among them especially Rituparna Maji, who provided crucial feedback to the project. The computational results presented were obtained using the Vienna CLIP cluster. FW was supported by the Austrian Research Promotion Agency (FFG), project ML4CPD.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
On behalf of all authors, the corresponding author states that there is no conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Daniel Bartolot, Damir Rizvanovic, Florian Reindl, Jochen Schieck, and Wolfgang Waltenberger are contributing authors.
Appendix A: Code to simulate a mock data stream
Appendix A: Code to simulate a mock data stream
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Wagner, F., Bartolot, D., Rizvanovic, D. et al. Cait: Analysis Toolkit for Cryogenic Particle Detectors in Python. Comput Softw Big Sci 6, 19 (2022). https://doi.org/10.1007/s41781-022-00092-4
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s41781-022-00092-4