radioactivedecay / radioactivedecay

A Python package for radioactive decay modelling that supports 1252 radionuclides, decay chains, branching, and metastable states.
https://pypi.org/project/radioactivedecay/
MIT License
87 stars 21 forks source link

Missing nuclides in version 0.4.13 #80

Closed exaos closed 2 years ago

exaos commented 2 years ago

A bundle of nulclides are missing

When I try to import my inventory generated by simulation code, a bundle of nuclides are missing. Please see the attached file. I looped over rd.DEFAULTDATA.nuclides and asure that they are not included, e.g. Th-225, Pa-226, etc. The length of rd.DEFAULTDATA.nuclides is only 1512 which is less than nuclides in NUBASE2020.

The attached file is generated by the following lines:

# find isotopes not in 'radioactivedecay'
lst_iso_not_found = []
for i in lst_inv.keys():
    if i not in rd.DEFAULTDATA.nuclide_dict:
        lst_iso_not_found.append(i)

Environment

OS version: Windows 11 Python version: 3.10.4 radioactivedecay version: 0.4.13 Installed via: pip

Additional context

Th_EOB2_iso_not_in_rd.csv

alexmalins commented 2 years ago

Hi @exaos

This isn't a code issue, more an issue about how we named the default dataset as icrp107_ame2020_nubase2020. The default dataset only contains the 1252 radionuclides that are part of the ICRP-107 decay dataset. Then there are data for an additional 260 stable nuclides that are formed at the end of the ICRP-107 decay chains, thus totally 1512 nuclides.

Because ICRP-107 didn't have atomic mass for the 260 stable nuclides, we took that data from AME2020/NUBASE2020. But this doesn't mean the default dataset contains the rest of the nuclides in NUBASE2020. So I am sorry, this is the reason all the nuclides you found which are missing - they are not contained in this package's default dataset.

If you need to decay those missing nuclides, I can only suggest waiting for us to create a more comprehensive dataset (e.g. using ENDF or ENSDF data), or looking at using other decay software for your calculation. We have been planning to create another dataset, but cannot give a timescale for when it will be ready.

One other point to note is I saw in your csv file you use m2 notation for the second metastable state of some nuclides. We currently don't support that notation, but use m, n, p, q... to denote metastable states as per AME2020/NUBASE2020. So you'd need to rename those nuclides before supplying them to radioactivedecay (e.g. Sb-124m2 does exist in the default dataset, but you'd have to use Sb-124n to set it up).

exaos commented 2 years ago

Thanks a lot, @alexmalins ! I understood now. So this issue can be closed now.

I will try another software for calculating the decay of the missing nuclides. And I will wait for you to create a more comprehensive dataset. If possible, could you provide a short introduction on how to prepare a new dataset? I would like to commit to this work if I have spare time. Or, I might prepare a new dataset which is just the default dataset plus the missing nuclides for my own purpose.