From 596359339894f01f5be56bc2f28715d129d3dbbd Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 7 Jul 2022 15:12:38 -0500 Subject: [PATCH] created regression test for FluxDepleteOperator - new data file: tests/micro_xs_simple.csv - created regression test based on pincell example - moved old depletion regression test to new folder: tests/regression_tests/deplete/transport_deplete --- tests/micro_xs_simple.csv | 20 ++-- .../deplete/no_transport_deplete/test.py | 106 ++++++++++++++++++ .../deplete/test_reference.h5 | Bin 166224 -> 0 bytes .../example_geometry.py | 0 .../last_step_reference_materials.xml | 0 .../deplete/{ => transport_deplete}/test.py | 2 +- 6 files changed, 114 insertions(+), 14 deletions(-) create mode 100644 tests/regression_tests/deplete/no_transport_deplete/test.py delete mode 100644 tests/regression_tests/deplete/test_reference.h5 rename tests/regression_tests/deplete/{ => transport_deplete}/example_geometry.py (100%) rename tests/regression_tests/deplete/{ => transport_deplete}/last_step_reference_materials.xml (100%) rename tests/regression_tests/deplete/{ => transport_deplete}/test.py (98%) diff --git a/tests/micro_xs_simple.csv b/tests/micro_xs_simple.csv index 40142f5438..bc43600ba9 100644 --- a/tests/micro_xs_simple.csv +++ b/tests/micro_xs_simple.csv @@ -1,13 +1,7 @@ -,fission,"(n,gamma)" -U234,0.1,0.0 -U235,0.1,0.0 -U238,0.9,0.0 -U236,0.4,0.0 -O16,0.0,0.0 -O17,0.0,0.0 -I135,0.0,0.1 -Xe135,0.0,0.9 -Xe136,0.0,0.0 -Cs135,0.0,0.0 -Gd157,0.0,0.1 -Gd156,0.0,0.1 +nuclide,"(n,gamma)",fission +U234,23.518634203050645,0.49531930067650976 +U235,10.621118186344665,49.10955932965905 +U238,0.8652742788116043,0.10579281644765708 +U236,9.095623870006154,0.32315392339237936 +O16,0.0029535689693132015,0.0 +O17,0.05980775766572907,0.0 diff --git a/tests/regression_tests/deplete/no_transport_deplete/test.py b/tests/regression_tests/deplete/no_transport_deplete/test.py new file mode 100644 index 0000000000..3fb2bf7f21 --- /dev/null +++ b/tests/regression_tests/deplete/no_transport_deplete/test.py @@ -0,0 +1,106 @@ +""" Full system test suite. """ + +from math import floor +import shutil +from pathlib import Path + +from difflib import unified_diff +import numpy as np +import pytest +import openmc +from openmc.data import JOULE_PER_EV +import openmc.deplete +from openmc.deplete import FluxDepletionOperator + + +from tests.regression_tests import config + + +@pytest.fixture(scope="module") +def vol_nuc(): + fuel = openmc.Material(name="uo2") + fuel.add_element("U", 1, percent_type="ao", enrichment=4.25) + fuel.add_element("O", 2) + fuel.set_density("g/cc", 10.4) + + fuel.volume = np.pi * 0.42 ** 2 + + nuclides = {} + for nuc, t in fuel.get_nuclide_atom_densities().items(): + nuclides[nuc] = t[1] * 1e24 + + # Load geometry from example + return (fuel.volume, nuclides) + + +@pytest.mark.parametrize("multiproc", [True, False]) +def test_full(run_in_tmpdir, vol_nuc, multiproc): + """Full system test suite. + + Runs an OpenMC depletion calculation and verifies + that the outputs match a reference file. Sensitive to changes in + OpenMC. + + """ + + # Create operator + micro_xs_file = Path(__file__).parents[3] / 'micro_xs_simple.csv' + micro_xs = FluxDepletionOperator.create_micro_xs_from_csv(micro_xs_file) + chain_file = Path(__file__).parents[3] / 'chain_simple.xml' + flux = 1164719970082145.0 # flux from pincell example + op = FluxDepletionOperator(vol_nuc[0], vol_nuc[1], micro_xs, flux, chain_file, dilute_initial=0.0) + + # Power and timesteps + dt = [30] # single step + power = 174 # W/cm + + # Perform simulation using the predictor algorithm + openmc.deplete.pool.USE_MULTIPROCESSING = multiproc + openmc.deplete.PredictorIntegrator(op, dt, power, timestep_units='d').integrate() + + # Get path to test and reference results + path_test = op.output_dir / 'depletion_results.h5' + path_reference = Path(__file__).with_name('test_reference.h5') + + # If updating results, do so and return + if config['update']: + shutil.copyfile(str(path_test), str(path_reference)) + return + + # Load the reference/test results + res_test = openmc.deplete.Results(path_test) + res_ref = openmc.deplete.Results(path_reference) + + # Assert same mats + for mat in res_ref[0].mat_to_ind: + assert mat in res_test[0].mat_to_ind, \ + "Material {} not in new results.".format(mat) + for nuc in res_ref[0].nuc_to_ind: + assert nuc in res_test[0].nuc_to_ind, \ + "Nuclide {} not in new results.".format(nuc) + + for mat in res_test[0].mat_to_ind: + assert mat in res_ref[0].mat_to_ind, \ + "Material {} not in old results.".format(mat) + for nuc in res_test[0].nuc_to_ind: + assert nuc in res_ref[0].nuc_to_ind, \ + "Nuclide {} not in old results.".format(nuc) + + tol = 1.0e-6 + for mat in res_test[0].mat_to_ind: + for nuc in res_test[0].nuc_to_ind: + _, y_test = res_test.get_atoms(mat, nuc) + _, y_old = res_ref.get_atoms(mat, nuc) + + # Test each point + correct = True + for i, ref in enumerate(y_old): + if ref != y_test[i]: + if ref != 0.0: + correct = np.abs(y_test[i] - ref) / ref <= tol + else: + correct = False + + assert correct, "Discrepancy in mat {} and nuc {}\n{}\n{}".format( + mat, nuc, y_old, y_test) + diff --git a/tests/regression_tests/deplete/test_reference.h5 b/tests/regression_tests/deplete/test_reference.h5 deleted file mode 100644 index d478d628ef662ac0ccb996ac9aa26a241df084e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166224 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≫yzV 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