Opening capabilities for UKDD decay library processing#271
Opening capabilities for UKDD decay library processing#271eitan-weinstein wants to merge 13 commits into
Conversation
|
I've moved this PR back to being a draft because I ran into an issue of certain radionuclides being reported as stable in inventories calculated with ALARA binary libraries produced from
For the first issue, this relates back to the conversations from #204 , but our course of action was predicated on the assumption that we would only have this kind of mismatch for isomeric daughters. Importantly, this issue is not new to the changes introduced here, but I only noticed it now because the number densities of these exotic radionuclides were generally small enough to not make meaningful contributions in the aggregate results and slipped under the radar in the various analyses I've been conducting. However, for the "Activation Handbook" irradiation of tungsten, which is the case that first alerted me to these issues now, there were 4 radionuclides present in the inventory with reported half-lives of For the second issue, I am still working to identify where under-the-hood in ALARA these other half-lives are being either lost or overwritten. I am confident that this is not an issue with ALARA's source code but rather with the UKDD processing introduced in this PR because these nuclides (177mLu, 177mHf, 177nHf, 178nHf, 179nHf, 182nTa, and 191nIr for the W "Activation Handbook" irradiation) all have the correct half-lives in the old ALARAJOY ALARA binary library that used EAF decay data. I know that |
|
My suspicion that this second false-stability error source was only present for isomers appears to be correct, with the following being the total list of UKDD-2020 isomers causing this issue, many of whom appeared in the tungsten results:
Tellingly, I was able to identify these nuclides as the culprits as they all have two entries in the ALARA library index, one containing all of the activation reaction pathways and one with the decay pathways, when in reality they should be singular. Between these, the latter listed the correct half-lives, while the former labeled them as stable. Knowing this, I should be able to identify -- and hopefully resolve relatively painlessly -- the source of this duplication within the original UKDD files where their decay data is contained. |
|
Interestingly, for all of the above-listed isomers, when |
|
Ok it looks like I've resolved this isomer issue! In my previous processing before my most recent commit ( While this outcome is not entirely satisfying because it does not explain why this issue was only popping up for these 20 isomers and no other nuclides, given that the Nevertheless, I'm re-opening this PR now and will move forward with the reproduction of my analysis plots for the FNS and "Activation Handbook" studies. |
041d3b5 to
c53de08
Compare
gonuke
left a comment
There was a problem hiding this comment.
Sorry for the delay in getting to this. A few questions to make this a little cleaner, I hope.
| int len = (int)strlen(buffer); | ||
| if (len < 75) { MT = 0; continue; } | ||
| char mtField[4] = {0}; | ||
| strncpy(mtField, buffer + 72, 3); | ||
| MT = atoi(mtField); |
There was a problem hiding this comment.
See above about a new private function for this
| def ensure_line_length_compliance(compiled_file): | ||
| """ | ||
| Split lines that may have been joined together without a newline separator | ||
| during file compilation. |
There was a problem hiding this comment.
Can't we just avoid introducing this in the first place?
gonuke
left a comment
There was a problem hiding this comment.
Found another question about the logic/flow.
|
Now that I'm no longer relying on On top of minimizing dependencies, it seems that extracting the KZA with |
gonuke
left a comment
There was a problem hiding this comment.
A couple of additional comments while you're in the flow...
5c7f27f to
30675ea
Compare

Closes #260 (after reopening it too).
)
This PR expands ALARAJOYWrapper's ability to handle decay libraries beyond EAF distributions to UKDD (i.e.
decay_2020) decay libraries. This follows the long-standing discussions between @gonuke, @bohmt, and myself and I finally was able to figure out how to get this workable. This will not only allow for better comparisons against FISPACT-II for our forthcoming paper, but will also allow for ALARAJOYWrapper to more closely follow the data recommendations in FENDL3.2x, which specify the use ofdecay_2020as the preferred decay library.The key issues with
decay_2020that prevent it from being immediately applicable to ALARAJOY are that it is distributed in files for individual nuclides which need to be compiled (minor) and that many of these files have distinct formatting issues (more major) that prevented them from being readable byEAFLib.C, which should be able to read any properly formatted ENDF/B file. I made use of the NEA toolendf-parserpyand it's custom errors to diagnose the issues with any individual UKDD file, which are patched and then compiled to a single decay library file that is readable by ALARAJOYWrapper andEAFLib.Cwith only minor changes to the latter.