From 469c7ff38ef09f3017825120091e4b7e895fecd9 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Fri, 5 Aug 2016 08:37:57 -0400 Subject: [PATCH] added mdgxs tallies to mgxs tests and addressed other PR comments --- openmc/mgxs/groups.py | 12 +- openmc/mgxs/library.py | 7 +- src/cmfd_data.F90 | 2 +- .../inputs_true.dat | 2 +- .../results_true.dat | 63 ++++++++++ .../test_mgxs_library_condense.py | 8 +- .../inputs_true.dat | 2 +- .../results_true.dat | 105 +++++++++------- .../test_mgxs_library_distribcell.py | 16 ++- tests/test_mgxs_library_hdf5/inputs_true.dat | 2 +- tests/test_mgxs_library_hdf5/results_true.dat | 117 ++++++++++++++++++ .../test_mgxs_library_hdf5.py | 8 +- tests/test_mgxs_library_mesh/inputs_true.dat | 2 +- tests/test_mgxs_library_mesh/results_true.dat | 78 ++++++++++++ .../test_mgxs_library_mesh.py | 7 +- .../inputs_true.dat | 2 +- .../results_true.dat | 117 ++++++++++++++++++ .../test_mgxs_library_no_nuclides.py | 8 +- tests/test_score_current/results_true.dat | 2 +- 19 files changed, 493 insertions(+), 67 deletions(-) diff --git a/openmc/mgxs/groups.py b/openmc/mgxs/groups.py index 881597c7b2..c0eaa27c17 100644 --- a/openmc/mgxs/groups.py +++ b/openmc/mgxs/groups.py @@ -376,9 +376,10 @@ class DelayedGroups(object): # Check that the groups are within [1, MAX_DELAYED_GROUPS] for group in groups: cv.check_greater_than('delayed group', group, 0) - cv.check_less_than('delayed group', group, MAX_DELAYED_GROUPS + 1) + cv.check_less_than('delayed group', group, MAX_DELAYED_GROUPS, + equality=True) - self._groups = np.array(groups, dtype=int) + self._groups = np.asarray(groups, dtype=int) def can_merge(self, other): """Determine if delayed groups can be merged with another. @@ -395,10 +396,7 @@ class DelayedGroups(object): """ - if not isinstance(other, DelayedGroups): - return False - else: - return True + return isinstance(other, DelayedGroups) def merge(self, other): """Merge this delayed groups with another. @@ -424,7 +422,7 @@ class DelayedGroups(object): # Merge unique filter bins groups = np.concatenate((self.groups, other.groups)) groups = np.unique(groups) - groups = sorted(groups) + groups.sort() # Assign groups to merged groups merged_groups.groups = list(groups) diff --git a/openmc/mgxs/library.py b/openmc/mgxs/library.py index 56399ee2f0..5a4e2c94d4 100644 --- a/openmc/mgxs/library.py +++ b/openmc/mgxs/library.py @@ -255,8 +255,7 @@ class Library(object): @mgxs_types.setter def mgxs_types(self, mgxs_types): - all_mgxs_types = np.append(openmc.mgxs.MGXS_TYPES, - openmc.mgxs.MDGXS_TYPES) + all_mgxs_types = openmc.mgxs.MGXS_TYPES + openmc.mgxs.MDGXS_TYPES if mgxs_types == 'all': self._mgxs_types = all_mgxs_types else: @@ -270,7 +269,7 @@ class Library(object): cv.check_type('by_nuclide', by_nuclide, bool) if by_nuclide == True and self.domain_type == 'mesh': - raise ValueError('Unable to create MGXS library by nuclide with ' + + raise ValueError('Unable to create MGXS library by nuclide with ' 'mesh domain') self._by_nuclide = by_nuclide @@ -280,7 +279,7 @@ class Library(object): cv.check_value('domain type', domain_type, openmc.mgxs.DOMAIN_TYPES) if self.by_nuclide == True and domain_type == 'mesh': - raise ValueError('Unable to create MGXS library by nuclide with ' + + raise ValueError('Unable to create MGXS library by nuclide with ' 'mesh domain') self._domain_type = domain_type diff --git a/src/cmfd_data.F90 b/src/cmfd_data.F90 index bda12f27b4..d74c1b17e0 100644 --- a/src/cmfd_data.F90 +++ b/src/cmfd_data.F90 @@ -254,7 +254,7 @@ contains ! Right surface if (i < nx) then matching_bins(i_filter_mesh) = mesh_indices_to_bin(m, & - (/ i+1, j, k /) ) + (/ i+1, j, k /) ) matching_bins(i_filter_surf) = OUT_LEFT score_index = sum((matching_bins(1:size(t % filters)) - 1) & * t % stride) + 1 ! incoming diff --git a/tests/test_mgxs_library_condense/inputs_true.dat b/tests/test_mgxs_library_condense/inputs_true.dat index 0c648376e8..e58015868a 100644 --- a/tests/test_mgxs_library_condense/inputs_true.dat +++ b/tests/test_mgxs_library_condense/inputs_true.dat @@ -1 +1 @@ -e2cdca7ea5b3532050af5b12fac26d7ef212d2696bb1b73cdd00929b2243c40d100ad02438c7b090555b49815d0de6c48cf1b4ebf437a48bc80c2d2b4bad292e \ No newline at end of file +08c5f1c783dd88c5fed51c054718ca09fc4e99aa4560a6f928b3902991948f3a878d055ac46c07548904285c2c5f22dc2a3d8c1bb82b8e73d76dd790820117df \ No newline at end of file diff --git a/tests/test_mgxs_library_condense/results_true.dat b/tests/test_mgxs_library_condense/results_true.dat index ae768cbe67..d1a964a860 100644 --- a/tests/test_mgxs_library_condense/results_true.dat +++ b/tests/test_mgxs_library_condense/results_true.dat @@ -40,6 +40,27 @@ 0 10000 1 total 4.996730e-07 3.650635e-08 material group in nuclide mean std. dev. 0 10000 1 total 0.090004 0.006367 + material delayedgroup group in nuclide mean std. dev. +0 10000 1 1 total 0.000021 0.000001 +1 10000 2 1 total 0.000110 0.000008 +2 10000 3 1 total 0.000107 0.000007 +3 10000 4 1 total 0.000249 0.000017 +4 10000 5 1 total 0.000112 0.000007 +5 10000 6 1 total 0.000046 0.000003 + material delayedgroup group out nuclide mean std. dev. +0 10000 1 1 total 0.0 0.000000 +1 10000 2 1 total 1.0 0.869128 +2 10000 3 1 total 1.0 1.414214 +3 10000 4 1 total 1.0 0.360359 +4 10000 5 1 total 0.0 0.000000 +5 10000 6 1 total 0.0 0.000000 + material delayedgroup group in nuclide mean std. dev. +0 10000 1 1 total 0.000227 0.000020 +1 10000 2 1 total 0.001214 0.000108 +2 10000 3 1 total 0.001184 0.000104 +3 10000 4 1 total 0.002752 0.000240 +4 10000 5 1 total 0.001231 0.000105 +5 10000 6 1 total 0.000512 0.000044 material group in nuclide mean std. dev. 0 10001 1 total 0.311594 0.013793 material group in nuclide mean std. dev. @@ -82,6 +103,27 @@ 0 10001 1 total 5.454760e-07 4.949800e-08 material group in nuclide mean std. dev. 0 10001 1 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +0 10001 1 1 total 0.0 0.0 +1 10001 2 1 total 0.0 0.0 +2 10001 3 1 total 0.0 0.0 +3 10001 4 1 total 0.0 0.0 +4 10001 5 1 total 0.0 0.0 +5 10001 6 1 total 0.0 0.0 + material delayedgroup group out nuclide mean std. dev. +0 10001 1 1 total 0.0 0.0 +1 10001 2 1 total 0.0 0.0 +2 10001 3 1 total 0.0 0.0 +3 10001 4 1 total 0.0 0.0 +4 10001 5 1 total 0.0 0.0 +5 10001 6 1 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +0 10001 1 1 total 0.0 0.0 +1 10001 2 1 total 0.0 0.0 +2 10001 3 1 total 0.0 0.0 +3 10001 4 1 total 0.0 0.0 +4 10001 5 1 total 0.0 0.0 +5 10001 6 1 total 0.0 0.0 material group in nuclide mean std. dev. 0 10002 1 total 0.904999 0.043964 material group in nuclide mean std. dev. @@ -124,3 +166,24 @@ 0 10002 1 total 5.773006e-07 5.322132e-08 material group in nuclide mean std. dev. 0 10002 1 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +0 10002 1 1 total 0.0 0.0 +1 10002 2 1 total 0.0 0.0 +2 10002 3 1 total 0.0 0.0 +3 10002 4 1 total 0.0 0.0 +4 10002 5 1 total 0.0 0.0 +5 10002 6 1 total 0.0 0.0 + material delayedgroup group out nuclide mean std. dev. +0 10002 1 1 total 0.0 0.0 +1 10002 2 1 total 0.0 0.0 +2 10002 3 1 total 0.0 0.0 +3 10002 4 1 total 0.0 0.0 +4 10002 5 1 total 0.0 0.0 +5 10002 6 1 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +0 10002 1 1 total 0.0 0.0 +1 10002 2 1 total 0.0 0.0 +2 10002 3 1 total 0.0 0.0 +3 10002 4 1 total 0.0 0.0 +4 10002 5 1 total 0.0 0.0 +5 10002 6 1 total 0.0 0.0 diff --git a/tests/test_mgxs_library_condense/test_mgxs_library_condense.py b/tests/test_mgxs_library_condense/test_mgxs_library_condense.py index 5571b59f2e..b849391690 100644 --- a/tests/test_mgxs_library_condense/test_mgxs_library_condense.py +++ b/tests/test_mgxs_library_condense/test_mgxs_library_condense.py @@ -23,12 +23,18 @@ class MGXSTestHarness(PyAPITestHarness): energy_groups = openmc.mgxs.EnergyGroups(group_edges=[0, 0.625e-6, 20.]) + # Initialize a six-delayed-group structure + delayed_groups = openmc.mgxs.DelayedGroups(range(1,7)) + # Initialize MGXS Library for a few cross section types self.mgxs_lib = openmc.mgxs.Library(self._input_set.geometry) self.mgxs_lib.by_nuclide = False + # Test all MGXS types - self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + \ + openmc.mgxs.MDGXS_TYPES self.mgxs_lib.energy_groups = energy_groups + self.mgxs_lib.delayed_groups = delayed_groups self.mgxs_lib.legendre_order = 3 self.mgxs_lib.domain_type = 'material' self.mgxs_lib.build_library() diff --git a/tests/test_mgxs_library_distribcell/inputs_true.dat b/tests/test_mgxs_library_distribcell/inputs_true.dat index 055ce35a57..64cd6b748d 100644 --- a/tests/test_mgxs_library_distribcell/inputs_true.dat +++ b/tests/test_mgxs_library_distribcell/inputs_true.dat @@ -1 +1 @@ -2d948f3b12293294eaeca231a3df9d51195379e8bb38dd3e68d3bc512a7d08ed52a1109054ca381684ec127268710f6d6e9210ac8154c9b379608e996627624a \ No newline at end of file +5e4bd179eeb955f61e01dc2a486e3fefd2cef7859390f12a817cd5412359766d7bfe0bf3f8553e8d28af0844ee04a4ebaad6510ec6157ee836d631a2a2b3baec \ No newline at end of file diff --git a/tests/test_mgxs_library_distribcell/results_true.dat b/tests/test_mgxs_library_distribcell/results_true.dat index c21ca09e99..fb301be61f 100644 --- a/tests/test_mgxs_library_distribcell/results_true.dat +++ b/tests/test_mgxs_library_distribcell/results_true.dat @@ -1,42 +1,63 @@ - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 1.145934 0.553822 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.718919 0.520644 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.718919 0.520644 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.019762 0.010629 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.019762 0.010629 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 1.126172 0.54344 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 1.142547 0.570131 - avg(distribcell) group in group out nuclide moment mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P0 1.142547 0.570131 -1 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P1 0.447381 0.216322 -2 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P2 0.141202 0.066504 -3 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P3 0.039228 0.024621 - avg(distribcell) group in group out nuclide moment mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P0 1.142547 0.570131 -1 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P1 0.447381 0.216322 -2 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P2 0.141202 0.066504 -3 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total P3 0.039228 0.024621 - avg(distribcell) group in group out nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total 1.0 0.529717 - avg(distribcell) group in group out nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 1 total 0.0 0.0 - avg(distribcell) group out nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 - avg(distribcell) group out nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.000001 6.946255e-07 - avg(distribcell) group in nuclide mean std. dev. -0 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,... 1 total 0.0 0.0 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.453624 0.02261 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.400852 0.024589 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.400852 0.024589 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.064903 0.004684 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.028048 0.004982 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.036855 0.002749 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.090649 0.006763 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 7.137955 0.532092 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.388721 0.018415 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.389304 0.023619 + avg(distribcell) group in group out nuclide moment mean std. dev. +0 (0,) 1 1 total P0 0.389304 0.023619 +1 (0,) 1 1 total P1 0.046224 0.005672 +2 (0,) 1 1 total P2 0.017984 0.002178 +3 (0,) 1 1 total P3 0.006628 0.001620 + avg(distribcell) group in group out nuclide moment mean std. dev. +0 (0,) 1 1 total P0 0.389304 0.023619 +1 (0,) 1 1 total P1 0.046224 0.005672 +2 (0,) 1 1 total P2 0.017984 0.002178 +3 (0,) 1 1 total P3 0.006628 0.001620 + avg(distribcell) group in group out nuclide mean std. dev. +0 (0,) 1 1 total 1.0 0.066327 + avg(distribcell) group in group out nuclide mean std. dev. +0 (0,) 1 1 total 0.085835 0.004328 + avg(distribcell) group out nuclide mean std. dev. +0 (0,) 1 total 1.0 0.046071 + avg(distribcell) group out nuclide mean std. dev. +0 (0,) 1 total 1.0 0.051471 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 4.996730e-07 3.741595e-08 + avg(distribcell) group in nuclide mean std. dev. +0 (0,) 1 total 0.090004 0.006717 + avg(distribcell) delayedgroup group in nuclide mean std. dev. +0 (0,) 1 1 total 0.000021 0.000002 +1 (0,) 2 1 total 0.000110 0.000008 +2 (0,) 3 1 total 0.000107 0.000008 +3 (0,) 4 1 total 0.000249 0.000018 +4 (0,) 5 1 total 0.000112 0.000008 +5 (0,) 6 1 total 0.000046 0.000003 + avg(distribcell) delayedgroup group out nuclide mean std. dev. +0 (0,) 1 1 total 0.0 0.000000 +1 (0,) 2 1 total 1.0 0.869128 +2 (0,) 3 1 total 1.0 1.414214 +3 (0,) 4 1 total 1.0 0.360359 +4 (0,) 5 1 total 0.0 0.000000 +5 (0,) 6 1 total 0.0 0.000000 + avg(distribcell) delayedgroup group in nuclide mean std. dev. +0 (0,) 1 1 total 0.000227 0.000022 +1 (0,) 2 1 total 0.001214 0.000115 +2 (0,) 3 1 total 0.001184 0.000111 +3 (0,) 4 1 total 0.002752 0.000257 +4 (0,) 5 1 total 0.001231 0.000113 +5 (0,) 6 1 total 0.000512 0.000047 diff --git a/tests/test_mgxs_library_distribcell/test_mgxs_library_distribcell.py b/tests/test_mgxs_library_distribcell/test_mgxs_library_distribcell.py index 30593e54b5..d03f003134 100644 --- a/tests/test_mgxs_library_distribcell/test_mgxs_library_distribcell.py +++ b/tests/test_mgxs_library_distribcell/test_mgxs_library_distribcell.py @@ -6,29 +6,39 @@ import glob import hashlib sys.path.insert(0, os.pardir) from testing_harness import PyAPITestHarness +from input_set import PinCellInputSet import openmc import openmc.mgxs class MGXSTestHarness(PyAPITestHarness): def _build_inputs(self): + # Set the input set to use the pincell model + self._input_set = PinCellInputSet() + # Generate inputs using parent class routine super(MGXSTestHarness, self)._build_inputs() # Initialize a one-group structure energy_groups = openmc.mgxs.EnergyGroups(group_edges=[0, 20.]) + # Initialize a six-delayed-group structure + delayed_groups = openmc.mgxs.DelayedGroups(range(1,7)) + # Initialize MGXS Library for a few cross section types # for one material-filled cell in the geometry self.mgxs_lib = openmc.mgxs.Library(self._input_set.geometry) self.mgxs_lib.by_nuclide = False + # Test all MGXS types - self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + \ + openmc.mgxs.MDGXS_TYPES self.mgxs_lib.energy_groups = energy_groups + self.mgxs_lib.delayed_groups = delayed_groups self.mgxs_lib.legendre_order = 3 self.mgxs_lib.domain_type = 'distribcell' - material_cells = self.mgxs_lib.openmc_geometry.get_all_material_cells() - self.mgxs_lib.domains = [material_cells[-1]] + cells = self.mgxs_lib.openmc_geometry.get_all_material_cells() + self.mgxs_lib.domains = [c for c in cells if c.name == 'cell 1'] self.mgxs_lib.build_library() # Initialize a tallies file diff --git a/tests/test_mgxs_library_hdf5/inputs_true.dat b/tests/test_mgxs_library_hdf5/inputs_true.dat index 0c648376e8..e58015868a 100644 --- a/tests/test_mgxs_library_hdf5/inputs_true.dat +++ b/tests/test_mgxs_library_hdf5/inputs_true.dat @@ -1 +1 @@ -e2cdca7ea5b3532050af5b12fac26d7ef212d2696bb1b73cdd00929b2243c40d100ad02438c7b090555b49815d0de6c48cf1b4ebf437a48bc80c2d2b4bad292e \ No newline at end of file +08c5f1c783dd88c5fed51c054718ca09fc4e99aa4560a6f928b3902991948f3a878d055ac46c07548904285c2c5f22dc2a3d8c1bb82b8e73d76dd790820117df \ No newline at end of file diff --git a/tests/test_mgxs_library_hdf5/results_true.dat b/tests/test_mgxs_library_hdf5/results_true.dat index b2bd28f279..3108573b35 100644 --- a/tests/test_mgxs_library_hdf5/results_true.dat +++ b/tests/test_mgxs_library_hdf5/results_true.dat @@ -72,6 +72,45 @@ domain=10000 type=inverse-velocity domain=10000 type=prompt-nu-fission [ 0.01923922 0.46671903] [ 0.00130951 0.04141087] +domain=10000 type=delayed-nu-fission +[[ 2.29808234e-05 1.06974158e-04] + [ 1.43606337e-04 5.52167907e-04] + [ 1.51382216e-04 5.27147681e-04] + [ 7.42603178e-05 2.22018043e-04] + [ 4.14908454e-05 9.10244403e-05] + [ 1.70016000e-05 3.81298119e-05]] +[[ 1.66363133e-06 9.49156242e-06] + [ 1.05907806e-05 4.89925426e-05] + [ 1.12671238e-05 4.67725567e-05] + [ 5.22610273e-06 1.87563195e-05] + [ 2.99830766e-06 7.68984041e-06] + [ 1.22654684e-06 3.22124663e-06]] +domain=10000 type=chi-delayed +[[ 0. 0.] + [ 1. 0.] + [ 1. 0.] + [ 1. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0. ] + [ 0.86912776 0. ] + [ 1.41421356 0. ] + [ 0.36035904 0. ] + [ 0. 0. ] + [ 0. 0. ]] +domain=10000 type=beta +[[ 4.89188107e-05 2.27713711e-04] + [ 3.05691886e-04 1.17538858e-03] + [ 3.22244241e-04 1.12212853e-03] + [ 3.82159891e-03 1.14255357e-02] + [ 2.13520995e-03 4.68431744e-03] + [ 8.74939644e-04 1.96224379e-03]] +[[ 4.67388620e-06 2.46946810e-05] + [ 2.95223877e-05 1.27466393e-04] + [ 3.12885004e-05 1.21690543e-04] + [ 3.21434855e-04 1.09939816e-03] + [ 1.82980497e-04 4.50738567e-04] + [ 7.48899920e-05 1.88812772e-04]] domain=10001 type=total [ 0.31373767 0.3008214 ] [ 0.0155819 0.02805245] @@ -146,6 +185,45 @@ domain=10001 type=inverse-velocity domain=10001 type=prompt-nu-fission [ 0. 0.] [ 0. 0.] +domain=10001 type=delayed-nu-fission +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +domain=10001 type=chi-delayed +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +domain=10001 type=beta +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] domain=10002 type=total [ 0.66457226 2.05238401] [ 0.03121475 0.22434291] @@ -220,3 +298,42 @@ domain=10002 type=inverse-velocity domain=10002 type=prompt-nu-fission [ 0. 0.] [ 0. 0.] +domain=10002 type=delayed-nu-fission +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +domain=10002 type=chi-delayed +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +domain=10002 type=beta +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] +[[ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.] + [ 0. 0.]] diff --git a/tests/test_mgxs_library_hdf5/test_mgxs_library_hdf5.py b/tests/test_mgxs_library_hdf5/test_mgxs_library_hdf5.py index 000a1f8cb9..a9d4210479 100644 --- a/tests/test_mgxs_library_hdf5/test_mgxs_library_hdf5.py +++ b/tests/test_mgxs_library_hdf5/test_mgxs_library_hdf5.py @@ -24,12 +24,18 @@ class MGXSTestHarness(PyAPITestHarness): energy_groups = openmc.mgxs.EnergyGroups(group_edges=[0, 0.625e-6, 20.]) + # Initialize a six-delayed-group structure + delayed_groups = openmc.mgxs.DelayedGroups(range(1,7)) + # Initialize MGXS Library for a few cross section types self.mgxs_lib = openmc.mgxs.Library(self._input_set.geometry) self.mgxs_lib.by_nuclide = False + # Test all MGXS types - self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + \ + openmc.mgxs.MDGXS_TYPES self.mgxs_lib.energy_groups = energy_groups + self.mgxs_lib.delayed_groups = delayed_groups self.mgxs_lib.legendre_order = 3 self.mgxs_lib.domain_type = 'material' self.mgxs_lib.build_library() diff --git a/tests/test_mgxs_library_mesh/inputs_true.dat b/tests/test_mgxs_library_mesh/inputs_true.dat index e036b49a26..f62e0aa05e 100644 --- a/tests/test_mgxs_library_mesh/inputs_true.dat +++ b/tests/test_mgxs_library_mesh/inputs_true.dat @@ -1 +1 @@ -a4cd030bea212e45fdb159e75a7fb3d1947e9bf3d0384ac5d37a72298d67dcfdd1b9eb5c6af8ac6e5983bd5b47de9c17a2ea472b467b7222a4909ee070bf1ca3 \ No newline at end of file +5f167bdd4d6ae5873d48483e85aceaec8a934239ed5a50ef6f6500ce204f5851ae330621a5007f3b3d6bdab49f2cd627d011c1f6e6983fec958a6984eb9cb7ca \ No newline at end of file diff --git a/tests/test_mgxs_library_mesh/results_true.dat b/tests/test_mgxs_library_mesh/results_true.dat index 03019cfd3d..2d641cc952 100644 --- a/tests/test_mgxs_library_mesh/results_true.dat +++ b/tests/test_mgxs_library_mesh/results_true.dat @@ -130,3 +130,81 @@ 1 1 2 1 1 total 0.028922 0.006394 2 2 1 1 1 total 0.022467 0.004039 3 2 2 1 1 total 0.024923 0.009632 + mesh 1 delayedgroup group in nuclide mean std. dev. + x y z +0 1 1 1 1 1 total 0.000004 4.432732e-07 +1 1 1 1 2 1 total 0.000026 2.653319e-06 +2 1 1 1 3 1 total 0.000024 2.402270e-06 +3 1 1 1 4 1 total 0.000054 5.464055e-06 +4 1 1 1 5 1 total 0.000026 2.663025e-06 +5 1 1 1 6 1 total 0.000010 1.038005e-06 +6 1 2 1 1 1 total 0.000005 1.098837e-06 +7 1 2 1 2 1 total 0.000029 6.436855e-06 +8 1 2 1 3 1 total 0.000027 5.926286e-06 +9 1 2 1 4 1 total 0.000061 1.359391e-05 +10 1 2 1 5 1 total 0.000029 6.489015e-06 +11 1 2 1 6 1 total 0.000011 2.574270e-06 +12 2 1 1 1 1 total 0.000004 6.987770e-07 +13 2 1 1 2 1 total 0.000023 4.115234e-06 +14 2 1 1 3 1 total 0.000021 3.816392e-06 +15 2 1 1 4 1 total 0.000049 8.885822e-06 +16 2 1 1 5 1 total 0.000024 4.378290e-06 +17 2 1 1 6 1 total 0.000009 1.745695e-06 +18 2 2 1 1 1 total 0.000004 1.660497e-06 +19 2 2 1 2 1 total 0.000025 9.701974e-06 +20 2 2 1 3 1 total 0.000023 9.005217e-06 +21 2 2 1 4 1 total 0.000054 2.084107e-05 +22 2 2 1 5 1 total 0.000026 9.981045e-06 +23 2 2 1 6 1 total 0.000010 3.987979e-06 + mesh 1 delayedgroup group out nuclide mean std. dev. + x y z +0 1 1 1 1 1 total 0.0 0.000000 +1 1 1 1 2 1 total 0.0 0.000000 +2 1 1 1 3 1 total 0.0 0.000000 +3 1 1 1 4 1 total 1.0 1.414214 +4 1 1 1 5 1 total 0.0 0.000000 +5 1 1 1 6 1 total 0.0 0.000000 +6 1 2 1 1 1 total 0.0 0.000000 +7 1 2 1 2 1 total 0.0 0.000000 +8 1 2 1 3 1 total 0.0 0.000000 +9 1 2 1 4 1 total 0.0 0.000000 +10 1 2 1 5 1 total 0.0 0.000000 +11 1 2 1 6 1 total 0.0 0.000000 +12 2 1 1 1 1 total 0.0 0.000000 +13 2 1 1 2 1 total 0.0 0.000000 +14 2 1 1 3 1 total 0.0 0.000000 +15 2 1 1 4 1 total 0.0 0.000000 +16 2 1 1 5 1 total 0.0 0.000000 +17 2 1 1 6 1 total 0.0 0.000000 +18 2 2 1 1 1 total 0.0 0.000000 +19 2 2 1 2 1 total 0.0 0.000000 +20 2 2 1 3 1 total 0.0 0.000000 +21 2 2 1 4 1 total 0.0 0.000000 +22 2 2 1 5 1 total 0.0 0.000000 +23 2 2 1 6 1 total 0.0 0.000000 + mesh 1 delayedgroup group in nuclide mean std. dev. + x y z +0 1 1 1 1 1 total 0.000166 0.000023 +1 1 1 1 2 1 total 0.000989 0.000136 +2 1 1 1 3 1 total 0.000907 0.000123 +3 1 1 1 4 1 total 0.002087 0.000282 +4 1 1 1 5 1 total 0.001014 0.000137 +5 1 1 1 6 1 total 0.000400 0.000054 +6 1 2 1 1 1 total 0.000171 0.000039 +7 1 2 1 2 1 total 0.001003 0.000226 +8 1 2 1 3 1 total 0.000918 0.000208 +9 1 2 1 4 1 total 0.002100 0.000477 +10 1 2 1 5 1 total 0.000996 0.000228 +11 1 2 1 6 1 total 0.000394 0.000090 +12 2 1 1 1 1 total 0.000167 0.000030 +13 2 1 1 2 1 total 0.001002 0.000178 +14 2 1 1 3 1 total 0.000926 0.000165 +15 2 1 1 4 1 total 0.002149 0.000384 +16 2 1 1 5 1 total 0.001056 0.000189 +17 2 1 1 6 1 total 0.000417 0.000076 +18 2 2 1 1 1 total 0.000171 0.000082 +19 2 2 1 2 1 total 0.001007 0.000480 +20 2 2 1 3 1 total 0.000929 0.000445 +21 2 2 1 4 1 total 0.002143 0.001028 +22 2 2 1 5 1 total 0.001026 0.000492 +23 2 2 1 6 1 total 0.000408 0.000196 diff --git a/tests/test_mgxs_library_mesh/test_mgxs_library_mesh.py b/tests/test_mgxs_library_mesh/test_mgxs_library_mesh.py index df7a0a5ae8..2db57254b4 100644 --- a/tests/test_mgxs_library_mesh/test_mgxs_library_mesh.py +++ b/tests/test_mgxs_library_mesh/test_mgxs_library_mesh.py @@ -18,14 +18,19 @@ class MGXSTestHarness(PyAPITestHarness): # Initialize a one-group structure energy_groups = openmc.mgxs.EnergyGroups(group_edges=[0, 20.]) + # Initialize a six-delayed-group structure + delayed_groups = openmc.mgxs.DelayedGroups(range(1,7)) + # Initialize MGXS Library for a few cross section types # for one material-filled cell in the geometry self.mgxs_lib = openmc.mgxs.Library(self._input_set.geometry) self.mgxs_lib.by_nuclide = False # Test all MGXS types - self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + \ + openmc.mgxs.MDGXS_TYPES self.mgxs_lib.energy_groups = energy_groups + self.mgxs_lib.delayed_groups = delayed_groups self.mgxs_lib.legendre_order = 3 self.mgxs_lib.domain_type = 'mesh' diff --git a/tests/test_mgxs_library_no_nuclides/inputs_true.dat b/tests/test_mgxs_library_no_nuclides/inputs_true.dat index 0c648376e8..e58015868a 100644 --- a/tests/test_mgxs_library_no_nuclides/inputs_true.dat +++ b/tests/test_mgxs_library_no_nuclides/inputs_true.dat @@ -1 +1 @@ -e2cdca7ea5b3532050af5b12fac26d7ef212d2696bb1b73cdd00929b2243c40d100ad02438c7b090555b49815d0de6c48cf1b4ebf437a48bc80c2d2b4bad292e \ No newline at end of file +08c5f1c783dd88c5fed51c054718ca09fc4e99aa4560a6f928b3902991948f3a878d055ac46c07548904285c2c5f22dc2a3d8c1bb82b8e73d76dd790820117df \ No newline at end of file diff --git a/tests/test_mgxs_library_no_nuclides/results_true.dat b/tests/test_mgxs_library_no_nuclides/results_true.dat index 141143c8c3..edd99b44c5 100644 --- a/tests/test_mgxs_library_no_nuclides/results_true.dat +++ b/tests/test_mgxs_library_no_nuclides/results_true.dat @@ -84,6 +84,45 @@ material group in nuclide mean std. dev. 1 10000 1 total 0.019239 0.001310 0 10000 2 total 0.466719 0.041411 + material delayedgroup group in nuclide mean std. dev. +1 10000 1 1 total 0.000023 0.000002 +3 10000 2 1 total 0.000144 0.000011 +5 10000 3 1 total 0.000151 0.000011 +7 10000 4 1 total 0.000074 0.000005 +9 10000 5 1 total 0.000041 0.000003 +11 10000 6 1 total 0.000017 0.000001 +0 10000 1 2 total 0.000107 0.000009 +2 10000 2 2 total 0.000552 0.000049 +4 10000 3 2 total 0.000527 0.000047 +6 10000 4 2 total 0.000222 0.000019 +8 10000 5 2 total 0.000091 0.000008 +10 10000 6 2 total 0.000038 0.000003 + material delayedgroup group out nuclide mean std. dev. +1 10000 1 1 total 0.0 0.000000 +3 10000 2 1 total 1.0 0.869128 +5 10000 3 1 total 1.0 1.414214 +7 10000 4 1 total 1.0 0.360359 +9 10000 5 1 total 0.0 0.000000 +11 10000 6 1 total 0.0 0.000000 +0 10000 1 2 total 0.0 0.000000 +2 10000 2 2 total 0.0 0.000000 +4 10000 3 2 total 0.0 0.000000 +6 10000 4 2 total 0.0 0.000000 +8 10000 5 2 total 0.0 0.000000 +10 10000 6 2 total 0.0 0.000000 + material delayedgroup group in nuclide mean std. dev. +1 10000 1 1 total 0.000049 0.000005 +3 10000 2 1 total 0.000306 0.000030 +5 10000 3 1 total 0.000322 0.000031 +7 10000 4 1 total 0.003822 0.000321 +9 10000 5 1 total 0.002135 0.000183 +11 10000 6 1 total 0.000875 0.000075 +0 10000 1 2 total 0.000228 0.000025 +2 10000 2 2 total 0.001175 0.000127 +4 10000 3 2 total 0.001122 0.000122 +6 10000 4 2 total 0.011426 0.001099 +8 10000 5 2 total 0.004684 0.000451 +10 10000 6 2 total 0.001962 0.000189 material group in nuclide mean std. dev. 1 10001 1 total 0.313738 0.015582 0 10001 2 total 0.300821 0.028052 @@ -170,6 +209,45 @@ material group in nuclide mean std. dev. 1 10001 1 total 0.0 0.0 0 10001 2 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +1 10001 1 1 total 0.0 0.0 +3 10001 2 1 total 0.0 0.0 +5 10001 3 1 total 0.0 0.0 +7 10001 4 1 total 0.0 0.0 +9 10001 5 1 total 0.0 0.0 +11 10001 6 1 total 0.0 0.0 +0 10001 1 2 total 0.0 0.0 +2 10001 2 2 total 0.0 0.0 +4 10001 3 2 total 0.0 0.0 +6 10001 4 2 total 0.0 0.0 +8 10001 5 2 total 0.0 0.0 +10 10001 6 2 total 0.0 0.0 + material delayedgroup group out nuclide mean std. dev. +1 10001 1 1 total 0.0 0.0 +3 10001 2 1 total 0.0 0.0 +5 10001 3 1 total 0.0 0.0 +7 10001 4 1 total 0.0 0.0 +9 10001 5 1 total 0.0 0.0 +11 10001 6 1 total 0.0 0.0 +0 10001 1 2 total 0.0 0.0 +2 10001 2 2 total 0.0 0.0 +4 10001 3 2 total 0.0 0.0 +6 10001 4 2 total 0.0 0.0 +8 10001 5 2 total 0.0 0.0 +10 10001 6 2 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +1 10001 1 1 total 0.0 0.0 +3 10001 2 1 total 0.0 0.0 +5 10001 3 1 total 0.0 0.0 +7 10001 4 1 total 0.0 0.0 +9 10001 5 1 total 0.0 0.0 +11 10001 6 1 total 0.0 0.0 +0 10001 1 2 total 0.0 0.0 +2 10001 2 2 total 0.0 0.0 +4 10001 3 2 total 0.0 0.0 +6 10001 4 2 total 0.0 0.0 +8 10001 5 2 total 0.0 0.0 +10 10001 6 2 total 0.0 0.0 material group in nuclide mean std. dev. 1 10002 1 total 0.664572 0.031215 0 10002 2 total 2.052384 0.224343 @@ -256,3 +334,42 @@ material group in nuclide mean std. dev. 1 10002 1 total 0.0 0.0 0 10002 2 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +1 10002 1 1 total 0.0 0.0 +3 10002 2 1 total 0.0 0.0 +5 10002 3 1 total 0.0 0.0 +7 10002 4 1 total 0.0 0.0 +9 10002 5 1 total 0.0 0.0 +11 10002 6 1 total 0.0 0.0 +0 10002 1 2 total 0.0 0.0 +2 10002 2 2 total 0.0 0.0 +4 10002 3 2 total 0.0 0.0 +6 10002 4 2 total 0.0 0.0 +8 10002 5 2 total 0.0 0.0 +10 10002 6 2 total 0.0 0.0 + material delayedgroup group out nuclide mean std. dev. +1 10002 1 1 total 0.0 0.0 +3 10002 2 1 total 0.0 0.0 +5 10002 3 1 total 0.0 0.0 +7 10002 4 1 total 0.0 0.0 +9 10002 5 1 total 0.0 0.0 +11 10002 6 1 total 0.0 0.0 +0 10002 1 2 total 0.0 0.0 +2 10002 2 2 total 0.0 0.0 +4 10002 3 2 total 0.0 0.0 +6 10002 4 2 total 0.0 0.0 +8 10002 5 2 total 0.0 0.0 +10 10002 6 2 total 0.0 0.0 + material delayedgroup group in nuclide mean std. dev. +1 10002 1 1 total 0.0 0.0 +3 10002 2 1 total 0.0 0.0 +5 10002 3 1 total 0.0 0.0 +7 10002 4 1 total 0.0 0.0 +9 10002 5 1 total 0.0 0.0 +11 10002 6 1 total 0.0 0.0 +0 10002 1 2 total 0.0 0.0 +2 10002 2 2 total 0.0 0.0 +4 10002 3 2 total 0.0 0.0 +6 10002 4 2 total 0.0 0.0 +8 10002 5 2 total 0.0 0.0 +10 10002 6 2 total 0.0 0.0 diff --git a/tests/test_mgxs_library_no_nuclides/test_mgxs_library_no_nuclides.py b/tests/test_mgxs_library_no_nuclides/test_mgxs_library_no_nuclides.py index 2c0a2e278c..d2e61a2da4 100644 --- a/tests/test_mgxs_library_no_nuclides/test_mgxs_library_no_nuclides.py +++ b/tests/test_mgxs_library_no_nuclides/test_mgxs_library_no_nuclides.py @@ -23,12 +23,18 @@ class MGXSTestHarness(PyAPITestHarness): energy_groups = openmc.mgxs.EnergyGroups(group_edges=[0, 0.625e-6, 20.]) + # Initialize a six-delayed-group structure + delayed_groups = openmc.mgxs.DelayedGroups(range(1,7)) + # Initialize MGXS Library for a few cross section types self.mgxs_lib = openmc.mgxs.Library(self._input_set.geometry) self.mgxs_lib.by_nuclide = False + # Test all MGXS types - self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + self.mgxs_lib.mgxs_types = openmc.mgxs.MGXS_TYPES + \ + openmc.mgxs.MDGXS_TYPES self.mgxs_lib.energy_groups = energy_groups + self.mgxs_lib.delayed_groups = delayed_groups self.mgxs_lib.legendre_order = 3 self.mgxs_lib.domain_type = 'material' self.mgxs_lib.build_library() diff --git a/tests/test_score_current/results_true.dat b/tests/test_score_current/results_true.dat index 5d26226ae2..6b3beb4be8 100644 --- a/tests/test_score_current/results_true.dat +++ b/tests/test_score_current/results_true.dat @@ -1 +1 @@ -bafab1921a12146abb2bb29603b52b9cc28a5a950a7a6bb1e3f012c05891c310fad643760d4f148b04d0fef3d1f3e141d146e3a278d81cc6fc8187c37717c5e7 \ No newline at end of file +2800fad5519917ffc985094d3263a3e0aac1abf6acb0c25416264135b36141812cc8d7dafc01585b104b8d6ad03cd44b6ce277fdb7df5a3f859fe26e61244e2a \ No newline at end of file