mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-27 21:55:41 -04:00
fix capi: make sure capi.nuclides works after calling capi.load_nuclide
This commit is contained in:
parent
6935433737
commit
0adad96bf0
2 changed files with 11 additions and 0 deletions
|
|
@ -893,6 +893,8 @@ void check_data_version(hid_t file_id)
|
|||
//==============================================================================
|
||||
|
||||
extern "C" void extend_nuclides();
|
||||
extern "C" void nuclide_from_hdf5(hid_t group, const Nuclide* ptr,
|
||||
const double* temps, int n, int n_nuclide);
|
||||
|
||||
extern "C" int openmc_load_nuclide(const char* name)
|
||||
{
|
||||
|
|
@ -917,6 +919,11 @@ extern "C" int openmc_load_nuclide(const char* name)
|
|||
int i_nuclide = data::nuclides.size();
|
||||
data::nuclides.push_back(std::make_unique<Nuclide>(
|
||||
group, temperature, i_nuclide));
|
||||
|
||||
// Read from Fortran too
|
||||
nuclide_from_hdf5(group, data::nuclides.back().get(),
|
||||
&temperature.front(), temperature.size(), i_nuclide + 1);
|
||||
|
||||
close_group(group);
|
||||
file_close(file_id);
|
||||
|
||||
|
|
|
|||
|
|
@ -390,7 +390,11 @@ def test_restart(capi_init):
|
|||
|
||||
|
||||
def test_load_nuclide(capi_init):
|
||||
# load multiple nuclides
|
||||
openmc.capi.load_nuclide('H3')
|
||||
assert 'H3' in openmc.capi.nuclides
|
||||
openmc.capi.load_nuclide('Pu239')
|
||||
assert 'Pu239' in openmc.capi.nuclides
|
||||
# load non-existent nuclide
|
||||
with pytest.raises(exc.DataError):
|
||||
openmc.capi.load_nuclide('Pu3')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue