I am trying to use the njoy.make_ace_thermal
method to create thermal scattering data in ACE format for graphite at 900K. I am sourcing my ENDF files from NNDC.
Here is my input
openmc.data.njoy.make_ace_thermal('endfb71_ace/neutrons/n-006_C_000.endf',
'endfb71_ace/thermal_scatt/tsl-graphite.endf',
temperatures=[900],
stdout=True)
When running this command, I get the following output:
njoy 2016.67 26May22 09/27/22 12:22:05
*****************************************************************************
reconr... 0.0s
broadr... 0.1s
thermr... 0.1s
wrote thermal data for temp = 9.0000E+02 2.6s
thermr... 2.6s
***error in calcem***desired temperature not found.
STOP 77
I did some digging and reconstructed the NJOY command file:
reconr / %%%%%%%%%%%%%%%%%%% Reconstruct XS for neutrons %%%%%%%%%%%%%%%%%%%%%%%
20 22
'ENDF/B-7.1 PENDF for 6-C - 0 '
600 2
0.001/ err
'ENDF/B-7.1: 6-C - 0 '/\n'Processed by NJOY'
0
broadr / %%%%%%%%%%%%%%%%%%%%%%% Doppler broaden XS %%%%%%%%%%%%%%%%%%%%%%%%%%%%
20 22 23
600 1 0 0 0. 0.001/ errthn
900
0
thermr / %%%%%%%%%%%%%%%% Add thermal scattering data (free gas) %%%%%%%%%%%%%%%
0 23 24
0 600 12 1 1 0 0 1 221 1
900
0.001 2.024
thermr / %%%%%%%%%%%%%%%% Add thermal scattering data (bound) %%%%%%%%%%%%%%%%%%
21 24 25
31 600 16 1 2 1 0 1 222 1
900
0.001 2.024
acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 26 27
2 0 1 .01
'ENDF/B-7.1: graphite processed by NJOY'
600 900 'graph' 3
6000 6012 6013
222 64 223 0 1 2.024 2
stop
20 refers to n-006_C_000.endf
, and 21 refers to tsl-graphite.endf
. 600 refers to the material in n-006_C_000.endf
.
According to the NJOY manual, this error is raised when the the temperature requested in THERMR is not found in the input PENDF tape. But according to the NJOY commands, we create PENDF tape 23 at a temperature of 900K, and 23 is the input PENDF to THERMR, so there shouldn’t be any problem.
Any idea what could be going on here? I’m not super familiar with NJOY.