diff --git a/tests/test_mg_tallies/inputs_true.dat b/tests/test_mg_tallies/inputs_true.dat
index 244d92b06..8120c8681 100644
--- a/tests/test_mg_tallies/inputs_true.dat
+++ b/tests/test_mg_tallies/inputs_true.dat
@@ -137,43 +137,95 @@
scatter nu-scatter nu-fission
+
+
+ total absorption flux fission nu-fission scatter nu-scatter
+ analog
+
+
+
+
+ total absorption flux fission nu-fission
+ collision
+
+
+
+
+ total absorption flux fission nu-fission
+ tracklength
+
+
+
+
+
+ scatter nu-scatter nu-fission
+
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
total absorption fission nu-fission
analog
-
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
total absorption fission nu-fission
tracklength
-
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
total absorption fission nu-fission scatter nu-scatter
analog
-
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
total absorption fission nu-fission
collision
-
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
total absorption fission nu-fission
tracklength
-
+
uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
scatter nu-scatter nu-fission
+
+
+
+ uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
+ total absorption fission nu-fission scatter nu-scatter
+ analog
+
+
+
+
+ uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
+ total absorption fission nu-fission
+ collision
+
+
+
+
+ uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
+ total absorption fission nu-fission
+ tracklength
+
+
+
+
+
+ uo2_ang uo2_ang_mu uo2_iso uo2_iso_mu clad_ang clad_ang_mu clad_iso clad_iso_mu lwtr_ang lwtr_ang_mu lwtr_iso lwtr_iso_mu
+ scatter nu-scatter nu-fission
+
diff --git a/tests/test_mg_tallies/results_true.dat b/tests/test_mg_tallies/results_true.dat
index af328ff8a..87470bdf4 100644
--- a/tests/test_mg_tallies/results_true.dat
+++ b/tests/test_mg_tallies/results_true.dat
@@ -1 +1 @@
-1817642a0d20d8ef437c7970cae2e77c265a566ef9843ac1b7cd33f76af09365dc8bd5c045f4297360b38d509864bd629b06dfc4d043b4b1ae7d8a5e2e93fae3
\ No newline at end of file
+9183f8b191f2e62334f992acd865d29e3f4e3f871a6df498e280fc4e2d91f2d2d20c732fbd75fa88e2e8c576f86e744f7655af6bb9da66e9b28b1009c8742899
\ No newline at end of file
diff --git a/tests/test_mg_tallies/test_mg_tallies.py b/tests/test_mg_tallies/test_mg_tallies.py
index 257accb60..580eb60c3 100644
--- a/tests/test_mg_tallies/test_mg_tallies.py
+++ b/tests/test_mg_tallies/test_mg_tallies.py
@@ -23,6 +23,12 @@ class MGTalliesTestHarness(HashedPyAPITestHarness):
# Instantiate some tally filters
energy_filter = openmc.EnergyFilter([0.0, 20.0e6])
energyout_filter = openmc.EnergyoutFilter([0.0, 20.0e6])
+ matching_energy_filter = openmc.EnergyFilter([1e-5, 0.0635, 10.0,
+ 1.0e2, 1.0e3, 0.5e6,
+ 1.0e6, 20.0e6])
+ matching_eout_filter = openmc.EnergyoutFilter([1e-5, 0.0635, 10.0,
+ 1.0e2, 1.0e3, 0.5e6,
+ 1.0e6, 20.0e6])
mesh_filter = openmc.MeshFilter(mesh)
mat_ids = [mat.id for mat in self._input_set.materials]
@@ -34,6 +40,7 @@ class MGTalliesTestHarness(HashedPyAPITestHarness):
True: ['total', 'absorption', 'fission', 'nu-fission']}
tallies = []
+
for do_nuclides in [False, True]:
tallies.append(openmc.Tally())
tallies[-1].filters = [mesh_filter]
@@ -49,34 +56,43 @@ class MGTalliesTestHarness(HashedPyAPITestHarness):
if do_nuclides:
tallies[-1].nuclides = nuclides
- tallies.append(openmc.Tally())
- tallies[-1].filters = [mat_filter, energy_filter]
- tallies[-1].estimator = 'analog'
- tallies[-1].scores = scores[do_nuclides] + ['scatter',
- 'nu-scatter']
- if do_nuclides:
- tallies[-1].nuclides = nuclides
+ # Impose energy bins that dont match the MG structure and those
+ # that do
+ for match_energy_bins in [False, True]:
+ if match_energy_bins:
+ e_filter = matching_energy_filter
+ eout_filter = matching_eout_filter
+ else:
+ e_filter = energy_filter
+ eout_filter = energyout_filter
- tallies.append(openmc.Tally())
- tallies[-1].filters = [mat_filter, energy_filter]
- tallies[-1].estimator = 'collision'
- tallies[-1].scores = scores[do_nuclides]
- if do_nuclides:
- tallies[-1].nuclides = nuclides
+ tallies.append(openmc.Tally())
+ tallies[-1].filters = [mat_filter, e_filter]
+ tallies[-1].estimator = 'analog'
+ tallies[-1].scores = scores[do_nuclides] + ['scatter',
+ 'nu-scatter']
+ if do_nuclides:
+ tallies[-1].nuclides = nuclides
- tallies.append(openmc.Tally())
- tallies[-1].filters = [mat_filter, energy_filter]
- tallies[-1].estimator = 'tracklength'
- tallies[-1].scores = scores[do_nuclides]
- if do_nuclides:
- tallies[-1].nuclides = nuclides
+ tallies.append(openmc.Tally())
+ tallies[-1].filters = [mat_filter, e_filter]
+ tallies[-1].estimator = 'collision'
+ tallies[-1].scores = scores[do_nuclides]
+ if do_nuclides:
+ tallies[-1].nuclides = nuclides
- tallies.append(openmc.Tally())
- tallies[-1].filters = [mat_filter, energy_filter,
- energyout_filter]
- tallies[-1].scores = ['scatter', 'nu-scatter', 'nu-fission']
- if do_nuclides:
- tallies[-1].nuclides = nuclides
+ tallies.append(openmc.Tally())
+ tallies[-1].filters = [mat_filter, e_filter]
+ tallies[-1].estimator = 'tracklength'
+ tallies[-1].scores = scores[do_nuclides]
+ if do_nuclides:
+ tallies[-1].nuclides = nuclides
+
+ tallies.append(openmc.Tally())
+ tallies[-1].filters = [mat_filter, e_filter, eout_filter]
+ tallies[-1].scores = ['scatter', 'nu-scatter', 'nu-fission']
+ if do_nuclides:
+ tallies[-1].nuclides = nuclides
self._input_set.tallies = openmc.Tallies(tallies)