import openmc import pytest from tests.testing_harness import PyAPITestHarness @pytest.fixture def time_model(): model = openmc.Model() time_cutoff = 1e-7 # A single sphere s1 = openmc.Sphere(r=200, boundary_type='vacuum') sphere = openmc.Cell() sphere.region = -s1 model.geometry = openmc.Geometry([sphere]) # Set the running parameters settings_file = openmc.Settings() settings_file.run_mode = 'fixed source' settings_file.batches = 10 settings_file.particles = 100 settings_file.cutoff = {'time_neutron': time_cutoff} settings_file.source = openmc.IndependentSource( space=openmc.stats.Point(), energy=openmc.stats.Discrete([1e4], [1])) model.settings = settings_file # Tally flux under time cutoff tallies = openmc.Tallies() tally = openmc.Tally() tally.scores = ['flux'] time_filter = openmc.TimeFilter([0, time_cutoff, 2*time_cutoff]) tally.filters = [time_filter] tallies.append(tally) model.tallies = tallies return model def test_time_cutoff(time_model): harness = PyAPITestHarness('statepoint.10.h5', time_model) harness.main()