mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-21 14:35:27 -04:00
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
import numpy as np
|
|
import openmc
|
|
import pytest
|
|
|
|
from tests.testing_harness import PyAPITestHarness
|
|
|
|
@pytest.fixture
|
|
def model():
|
|
model = openmc.model.Model()
|
|
|
|
zn = openmc.Material()
|
|
zn.set_density('g/cm3', 7.14)
|
|
zn.add_nuclide('Zn64', 1.0)
|
|
model.materials.append(zn)
|
|
|
|
radii = np.linspace(1.0, 100.0)
|
|
surfs = [openmc.Sphere(r=r) for r in radii]
|
|
surfs[-1].boundary_type = 'vacuum'
|
|
cells = [openmc.Cell(fill=(zn if i % 2 == 0 else None), region=region)
|
|
for i, region in enumerate(openmc.model.subdivide(surfs))]
|
|
model.geometry = openmc.Geometry(cells)
|
|
|
|
model.settings.run_mode = 'fixed source'
|
|
model.settings.batches = 3
|
|
model.settings.particles = 1000
|
|
model.settings.source = openmc.IndependentSource(space=openmc.stats.Point())
|
|
|
|
cell_filter = openmc.CellFilter(cells)
|
|
tally = openmc.Tally()
|
|
tally.filters = [cell_filter]
|
|
tally.scores = ['total']
|
|
model.tallies.append(tally)
|
|
|
|
return model
|
|
|
|
|
|
def test_void(model):
|
|
harness = PyAPITestHarness('statepoint.3.h5', model)
|
|
harness.main()
|