You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SaltProc requires the fuel material file to have all burnable materials present in order to simulate online reprocessing and refueling. This means that any differences in notation to refer to a specific nuclide between cross section libraries would force the fuel material file to only be usable with a particular cross section library.
I encountered this exact behavior during investigation into #72. In short, the integration tests and examples use material files hardcoded specifically for a non-public version JEFF 3.1.2 cross section library. This version denotes metastable nuclides as xx3xx.xxc. For example, Ag-47at 900K is 47310.09c in the material file for the integration tests. This differs from the publicly available JEFF 3.1.2 library, which does not change the first digit in the mass number (Ag-47 at 900K would be denoted 47110.09c). My attempt to convert the material files used by the integration tests did not succeed, and required a nontrivial amount of processing on my end to get all the files in a form that Serpent could use.
Since the JEFF 3.1.2 library on our group Box folder uses the correct notation for the integration tests, I discussed with @munkm the possibility of allowing users to download it in #76, but we both ended up agreeing that this could get us into trouble.
Description of idea
We need to do something that enables our users to run the integration tests and examples with a cross section library that they can download themselves. Ideally, they won't have to do any processing either.
Modifying the material files for the integration tests to work with a publicly available cross section library that doesn't require processing by the user may be the best way to do this.
Additionally, we would need to add any nuclides present in the publicly available cross section library that are not present in our private version of JEFF 3.1.2 to the material files for the integration tests and examples.
We would also need to remove any nuclides present in our private version of JEFF 3.1.2 that are not present in the publicly available cross section library from the material files for the integration tests and examples.
Potential snags
Changing the notation of the metastable nuclides in the material files may also require changing the strings used to reference these nuclides in assert or similar statements in the source code for the integration tests.
Adding and removing nuclides from the material files could completely break the integration tests. If this is the case, we would need to use the publicly available version of JEFF 3.1.2 (linked above), and write a guide on how to process the .dir files and organize the .ACE files. Most likely this would require the user running scripts we provide to them (I wrote some when I was working on #72, so that part is mostly solved).
Honestly, the quickest and easiest thing do do would be to provide our version of JEFF 3.1.2 file directly to users, but again we could get in trouble for doing that.
It seems that denoting the first digit of A for metastable isotopes is assumed by Serpent 2:
The script assumes that nuclides in isomeric states are identified by setting the third digit in the ZA to 3 (e.g. 61348 for Pm-148m or 95342 for Am-242m). If other convention is used, the isomeric state number (5. entry) must be set manually.
I know that @andrewryh did processing on the publicly available JEFF 3.1.2 library in order to get it working in Serpent. If we cannot host this library, I think what we should write a guide on the necessary steps to process the publicly available library and provide scripts that automate this task.
I have written a script that will download the JEFF library, collect all the .dir files, and change the ZAI notation of metastable isotopes to the Serpent2 format. I just ran the integration tests with it and they both passed! I will be including this script, along with a brief guide on its purpose and usage, in PR #90
Background
SaltProc requires the fuel material file to have all burnable materials present in order to simulate online reprocessing and refueling. This means that any differences in notation to refer to a specific nuclide between cross section libraries would force the fuel material file to only be usable with a particular cross section library.
I encountered this exact behavior during investigation into #72. In short, the integration tests and examples use material files hardcoded specifically for a non-public version JEFF 3.1.2 cross section library. This version denotes metastable nuclides as
xx3xx.xxc
. For example, Ag-47at 900K is47310.09c
in the material file for the integration tests. This differs from the publicly available JEFF 3.1.2 library, which does not change the first digit in the mass number (Ag-47 at 900K would be denoted47110.09c
). My attempt to convert the material files used by the integration tests did not succeed, and required a nontrivial amount of processing on my end to get all the files in a form that Serpent could use.Since the JEFF 3.1.2 library on our group Box folder uses the correct notation for the integration tests, I discussed with @munkm the possibility of allowing users to download it in #76, but we both ended up agreeing that this could get us into trouble.
Description of idea
We need to do something that enables our users to run the integration tests and examples with a cross section library that they can download themselves. Ideally, they won't have to do any processing either.
Modifying the material files for the integration tests to work with a publicly available cross section library that doesn't require processing by the user may be the best way to do this.
Additionally, we would need to add any nuclides present in the publicly available cross section library that are not present in our private version of JEFF 3.1.2 to the material files for the integration tests and examples.
We would also need to remove any nuclides present in our private version of JEFF 3.1.2 that are not present in the publicly available cross section library from the material files for the integration tests and examples.
Potential snags
Changing the notation of the metastable nuclides in the material files may also require changing the strings used to reference these nuclides in
assert
or similar statements in the source code for the integration tests.Adding and removing nuclides from the material files could completely break the integration tests. If this is the case, we would need to use the publicly available version of JEFF 3.1.2 (linked above), and write a guide on how to process the
.dir
files and organize the.ACE
files. Most likely this would require the user running scripts we provide to them (I wrote some when I was working on #72, so that part is mostly solved).Honestly, the quickest and easiest thing do do would be to provide our version of JEFF 3.1.2 file directly to users, but again we could get in trouble for doing that.
If anyone has any bright ideas, they'd be much appreciated. @munkm @LukeSeifert @smpark7 @ZoeRichter @gwenchee @lkissin2 @abachma2
The text was updated successfully, but these errors were encountered: