OpenMC 0.15.3 segmentation fault with FENDL photoatomic data

Hi everyone,

When running version 0.15.3 of OpenMC and trying to use the FENDL 3.2c photoatomic HDF5 nuclear data (generated with the function convert_fendl from Jonathan Shimwell’s repository https://github.com/openmc-data-storage/openmc_data), a segmentation error occurs:

===============> FIXED SOURCE TRANSPORT SIMULATION <===============

Simulating batch 1
 *** Process received signal ***
 Signal: Segmentation fault (11)
 Signal code: Address not mapped (1)
 Failing at address: (nil)
 [ 0] /lib64/libc.so.6(+0x3fc30)[0x7f147083fc30]
 [ 1] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(_ZN6openmc22sample_photon_reactionERNS_8ParticleE+0x4e9)[0x7f14715893b9]
 [ 2] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(_ZN6openmc9collisionERNS_8ParticleE+0x50)
 [ 3] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(_ZN6openmc8Particle13event_collideEv+0x56)[0x7f1471576086]
 [ 4] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(_ZN6openmc39transport_history_based_single_particleERNS_8ParticleE+0x96)[0x7f14715ec076]
 [ 5] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(+0x1ec133)[0x7f14715ec133]
 [ 6] /.conda/envs/openmc-test2/bin/../lib/./libgomp.so.1(GOMP_parallel+0x46)[0x7f1470f4ea66]
 [ 7] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(openmc_next_batch+0x8d)[0x7f14715edc7d]
 [ 8] /.conda/envs/openmc-test2/bin/../lib/libopenmc.so(openmc_run+0x89)[0x7f14715edd99]
 [ 9] openmc(+0x2104)[0x5631f6f23104]
 [10] Segmentation fault (core dumped)

When running the same case with just neutron transport (deactivating photon transport), everything runs smoothly. We have also tested this same model and nuclear data with OpenMC 0.15.0 and OpenMC 0.15.2 and it seems to work correctly. Additionally, when using OpenMC 0.15.3 and changing the nuclear data library to ENDF/B-VIII.0 (downloaded from Cross sections - OpenMC ), we have no issues.

Therefore, doing these tests combining different OpenMC versions and nuclear data libraries, we were able to trace back the incompatibility to the use of OpenMC 0.15.3 and FENDL photon nuclear data (also other versions of FENDL, even with the one distributed at: FENDL-3.2d-T1 ) together.

We have gone through the release notes of OpenMC 0.15.3 to understand what could have changed with respect to OpenMC 0.15.2 and we have come across pull request #3392, which we believe is causing the segmentation fault in our case.

Since the error we get is related to atomic relaxation not being present in the FENDL photoatomic data, we would like to understand better whether the use of atomic relaxation in absolutely necessary to run the latest release of OpenMC (since it wasn’t in the previous releases).

Any insight on this topic would be greatly appreciated.

Thank you in advance!

Thank you @mcampos for starting this thread. We would really appreciate any support on this!

Regards, Aljaz

Howdy,
I have confirmed the errant behaviour as you described on my side.

You should open an issue:
https://github.com/openmc-dev/openmc/issues
https://github.com/openmc-dev/data/issues

Llama TLDR:

ENDF/B HDF5 generation includes an atomic-relaxation sublibrary; the FENDL conversion scripts generate photon HDF5 from the FENDL atom ENDF files without adding a corresponding relaxation sublibrary. OpenMC 0.15.3 now has a code path that assumes such relaxation data may be present once Compton profiles sample a shell.

Thank you for the response @yrrepy
Issue opened on OpenMC’s repo: OpenMC 0.15.3 segmentation fault with FENDL photoatomic data · Issue #3992 · openmc-dev/openmc · GitHub