"""Regression tests for openmc.deplete.Results.transfer_volumes method.""" from pytest import approx import openmc from openmc.deplete import PredictorIntegrator, Results from tests import dummy_operator def test_transfer_volumes(run_in_tmpdir): """Unit test of volume transfer in restart calculations.""" op = dummy_operator.DummyOperator() op.output_dir = "test_transfer_volumes" # Perform simulation using the predictor algorithm dt = [0.75] power = 1.0 PredictorIntegrator(op, dt, power).integrate() # Load the files res = openmc.deplete.Results(op.output_dir / "depletion_results.h5") # Create a dictionary of volumes to transfer res[0].volume['1'] = 1.5 res[0].volume['2'] = 2.5 # Create dummy geometry mat1 = openmc.Material(material_id=1) mat1.depletable = True mat2 = openmc.Material(material_id=2) cell = openmc.Cell() cell.fill = [mat1, mat2] root = openmc.Universe() root.add_cell(cell) geometry = openmc.Geometry(root) # Transfer volumes res[0].transfer_volumes(openmc.Model(geometry)) assert mat1.volume == 1.5 assert mat2.volume is None