Gamma Spectroscopy analysis in PYthon
Project description
GammaSPY: Gamma Spectroscopy analysis in PYthon
Warning This package is in active development and may introduce breaking changes.
A suite of open-source tools for automated γ-ray spectroscopy analysis of fast neutron-induced nuclear reactions, developed for data collected with the EXOGAM clover detector array, but can be use for any HPGe detector arrays.
Overview
This repository contains the analysis framework developed for processing and interpreting γ–γ coincidence data from the EXOGAM detector array at GANIL. The tools integrate experimental data processing, nuclear database cross-referencing, and reaction simulation predictions into a unified automated workflow.
The suite currently includes:
- 2D background subtraction — Native ROOT implementation of the Palameta–Waddington background subtraction algorithm for γ–γ matrices, eliminating the need to convert to legacy RadWare formats
Planned features include:
- Coincident γ finder — Automated coincidence identification tool with recursive cascade mapping against ENSDF and XUNDL databases, to arbitrary cascade order
- Expected spectrum plotter — Quantitative prediction of gated γ-ray spectra based on TALYS cross-sections, detector efficiency, and experimental geometry
- DCO and polarization asymmetry extraction — Angular correlation analysis tools for spin-parity assignments from oriented nuclear ensembles
- Custom TALYS modifications — Source code patches extending discrete level tracking, memory allocation, and output formatting in TALYS for level-by-level population cross-sections
Installation
GammaSPY requires ROOT with PyROOT bindings. If you already have a setup with that, you can install simply with:
pip install gammaspy
Other wise using pixi
(installation instructions) is
highly recommended since it can also install root. Then simply:
git clone https://gitlab.com/Hemantika1122/GammaSPY.git
pixi install
Databases
The tools query ENSDF and XUNDL locally. Database files should be placed in
data/ensdf/ and data/xundl/ respectively. See data/README.md for
formatting instructions.
Quick Start
Get projection with background subtraction
If running in jupyter notebook use %jsroot for interactable TCanvases
from gammaspy.hist2d import Hist2D
hgg = Hist2D("output_gg_addback.root", "hgg")
canvas = hgg.draw_projection(gate_energy=1454, gate_width=3, subtract_backgrouns=True)
Add coincidence finder
from gammaspy.nudat import LevelSchemes
level_schemes = LevelSchemes(
isotopes=["57Ni", "58Ni", "56Co", "57Co"],
databases=["ENSDF", "XUNDL"],
)
canvas = hgg.draw_projection(
gate_energy=1454, gate_width=3, level_schemes=level_schemes, coincidence_order=2
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gammaspy-0.1.0.tar.gz.
File metadata
- Download URL: gammaspy-0.1.0.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a057927199226f4f0e76033feb67715a34cafd6f5b1b628e7ebab47f59f8ef49
|
|
| MD5 |
89d81e5589c49ebb6c7955e2c418a8ae
|
|
| BLAKE2b-256 |
48efc3db65f9f1e3668625fcf0b54af8cb2a82f49d6e644a0c0b8074f83aa686
|
Provenance
The following attestation bundles were made for gammaspy-0.1.0.tar.gz:
Publisher:
cd.yml on Hemantika1122/GammaSPY
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gammaspy-0.1.0.tar.gz -
Subject digest:
a057927199226f4f0e76033feb67715a34cafd6f5b1b628e7ebab47f59f8ef49 - Sigstore transparency entry: 1059722629
- Sigstore integration time:
-
Permalink:
Hemantika1122/GammaSPY@1107468085185ff1ba5bc33d5384dbb2b91e3fcd -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Hemantika1122
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@1107468085185ff1ba5bc33d5384dbb2b91e3fcd -
Trigger Event:
release
-
Statement type:
File details
Details for the file gammaspy-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gammaspy-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7bc101960c79c0560363fbf621499a67a29892ebb2c7f8268317ee61f15ff621
|
|
| MD5 |
8fb602e6dbe4636eb7db1a709d8a37e3
|
|
| BLAKE2b-256 |
be5d25aa8d15f401b972646057170cc46568d719279babccb9863700b4e30aa0
|
Provenance
The following attestation bundles were made for gammaspy-0.1.0-py3-none-any.whl:
Publisher:
cd.yml on Hemantika1122/GammaSPY
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gammaspy-0.1.0-py3-none-any.whl -
Subject digest:
7bc101960c79c0560363fbf621499a67a29892ebb2c7f8268317ee61f15ff621 - Sigstore transparency entry: 1059722630
- Sigstore integration time:
-
Permalink:
Hemantika1122/GammaSPY@1107468085185ff1ba5bc33d5384dbb2b91e3fcd -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Hemantika1122
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@1107468085185ff1ba5bc33d5384dbb2b91e3fcd -
Trigger Event:
release
-
Statement type: