Package: paceENSDF
ThepaceENSDF(Python Archive of Coincident Emissions from ENSDF) project[HUR2023]is a Python package enabling access, manipulation, analysis, and visualization of the radioactive decay data from the Evaluated Nuclear Structure Data File (ENSDF) library[TUL2001].  A total of 3254 data sets encompassing\(\alpha\)(834),\(\beta-\)(1141), and\(\epsilon\)/\(\beta+\)(1279) have been extracted from the ENSDF archive[TUL2001], parsed and translated into a representative JavaScript Object Notation (JSON) format (descibed below).  The JSON-formatted data sets constitute a total of 92,264 deexcitation\(\gamma\)rays associated with 41,094 levels.  Additionally, we also provide a Reference Input Parameter Library[CAP2008]RIPL-translated format of the corresponding decay-scheme data.  These data sets are bundled together with the analysis toolkit.  A schematic illustrating the portion of the nuclear chart of relevance to the aforementioned decay data from ENSDF is shown in the figure below.ThepaceENSDFpackage provides users with a convenient means to access and manipulate the decay data from ENSDF with various methods to return all associated nuclear structure decay-scheme data including levels, spins, parities,\(\gamma-\)ray information, etc.  An overview of the available methods is provided inJupyter Notebooksdistributed with this package (inside thenotebookfolder).All ENSDF decay-scheme data sets containing\(\gamma\)-ray information have also been used to generate coincidence\(\gamma\)-\(\gamma\)and\(\gamma\)-X-ray JSON data structures from the corresponding decay data set[HUR2023].  However, not every decay dataset in ENSDF contains\(\gamma\)-ray data.  Of the total decay datasets only 2394 have the\(\gamma\)-ray information needed to derive these coincidence datasets.  This number represents around 73.6% of the ENSDF archive (version: September 2023) and these decay datasets are summarized in the Figure below.  From this schematic it is clear that the\(\alpha\)-decay datasets are most heavily impacted by the\(\gamma\)-ray condition.In addition to the coincidence energies and absolute intensities, together with associated uncertainties, these data structures contain additional meta data parsed from the original ENSDF data structure allowing users to search for single energies (both\(\gamma\)andX-ray) as well as coincidence pairs.  Refer to the correspondingJupyter Notebookprovided with this project to see example use cases.Notes on ENSDF quantitiesAlthough most quantities in ENSDF are normally-distributed symmetrical quantities associated with the equality=operator, the following exceptions (frequent in many cases) are also accounted for:All asymmetric quantities parsed in the original ENSDF dataset are symmetrized and their associated median-symmertized values and uncertainties are reported in the derived JSON data structures.All approximateAPvalues parsed in the original ENSDF dataset are reported with an assumed 50% uncertainty.All values parsed as limits (i.e.,LT,GT,GE,GE) in the original ENSDF dataset are reported with an assumed 100% uncertainty.Building, installation, and testingThepaceENSDFproject can be conveniently built and installed using thepipcommand in a Unix terminal:$pipinstallpaceENSDFAlternatively, because this project is also maintained onGitHub, it can be installed by cloning the repository and executing the installation script provide as described in theREADME.mddocumentation on the landing page:https://github.com/AaronMHurst/pace_ensdfA suite of Python modules containing 283 unit tests is also bundled with the software.  Instructions for running the test script are also provided on theGitHublanding page.  This project has been successfully built and tested against multiple virtual Python environments fromPython-3.5toPython-3.10.Running paceENSDFFollowing installation, thepaceENSDFscripts can be ran from any location by importing the package and making an instance of theENSDFclass:$pythonimportpaceENSDFaspee=pe.ENSDF()Most methods also require passing theJSON-formatted ENSDF source datasets or theJSON-formatted coincidence datasets as a list-object argument which first needs to be created accordingly:edata=e.load_ensdf()# ENSDF datacdata=e.load_pace()# Coincidence dataThe utility of thepaceENSDFmethods illustrating examples concerning access, manipulation, analysis, and visualization of the ENSDF data is demonstrated in theJupyter Notebooksprovided onGitHub.  These notebooks also have amatplotlibPython-package dependency and utilize inline-plotting methods and builtinJupyter Notebookmagic commands.DocstringsAllpaceENSDFclasses and functions have supporting docstrings.  Please refer to the individual dosctrings for more information on any particular function including how to use it.  The dosctrings for each method generally have the following structure:A short explanation of the function.A list and description of arguments that need to be passed to the function.The return value of the function.An example(s) invoking use of the function.To retrieve the method resolution order and a list of the available methods inherited from the individual classes contained in the modules simply execute the following command in a Python interpreter:$pythonhelp(e)Or, to retrieve the docstring for a particular method, e.g., the callableget_gg:help(e.get_gg)RIPL formatBecause many nuclear reaction codes source decay-scheme information in a particular Reference Input Parameter Library (RIPL)[CAP2008]format, representative RIPL-translated datasets have also been generated for each corresponding ENSDF-decay dataset and these files are also bundled with the software.  See theGitHublanding page for more information.JSON formatAll original ENSDF radioactive-decay datasets have been translated into a representative JavaScript Object Notation (JSON) format using an intuitive syntax to describe the quantities sourced from the primary and continuation records of the ENSDF-formatted data sets[TUL2001].  The corresponding JSON-formatted radioative-decay datasets are bundled with this software package together with JSON-formatted coincidence\(\gamma-\)\(\gamma\)and\(\gamma-\)X-ray data sets derived from the respective decay-scheme information in the original ENSDF library.  The JSON data structures support the following data types:stringnumberbooleannullobject(JSON object)arrayThe JSON-formatted schemas are explained in detail on theGitHublanding page.References[HUR2023](1,2)A.M. Hurst, B.D. Pierson, B.C. Archambault, L.A. Bernstein, S.M. Tannous,“A decay datababase of coincident\(\gamma\)-\(\gamma\)and\(\gamma\)-X-ray branching ratios for in-field spectroscopy applications”, Eur. Phys. J. (Web of Conf.)284, 18002 (2023);https://doi.org/10.1051/epjconf/202328418002[TUL2001](1,2,3)J.K. Tuli,“Evaluated Nuclear Structure Data File”, BNL-NCS-51655-01/02-Rev (2001);https://www.nndc.bnl.gov/ensdf/[CAP2008](1,2)R.Capoteet al.,“RIPL - Reference Input Parameter Library for Calculation of Nuclear Reactions and Nuclear Data Evaluations”, Nucl. Data Sheets110, 3107 (2009).