From d075e10fbbd61ee2cd71dd51c2ed7661d14bd5ad Mon Sep 17 00:00:00 2001 From: Will Boyd Date: Wed, 30 Sep 2015 13:09:30 -0400 Subject: [PATCH] Fixed bug in Tally.diagonalize_filter(...) routine for multiple nuclides, scores --- openmc/filter.py | 4 ++-- openmc/tallies.py | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index 2f09d93f2..5dbf83fdd 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -55,7 +55,6 @@ class Filter(object): self._type = None self._num_bins = 0 self._bins = None - self._bins = None self._mesh = None self._offset = -1 self._stride = None @@ -314,8 +313,9 @@ class Filter(object): Returns ------- - boolean + bool Whether or not the other filter is a subset of this filter + """ if not isinstance(other, Filter): diff --git a/openmc/tallies.py b/openmc/tallies.py index b4501133a..cc6d5fbf5 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -2517,16 +2517,16 @@ class Tally(object): if self.sum is not None: new_tally._sum = np.zeros(new_shape, dtype=np.float64) - new_tally._sum[diag_indices, :, :] = self.sum + new_tally._sum[indices, :self.num_nuclides, :self.num_scores] = self.sum if self.sum_sq is not None: new_tally._sum_sq = np.zeros(new_shape, dtype=np.float64) - new_tally._sum_sq[diag_indices, :, :] = self.sum_sq + new_tally._sum_sq[indices, :self.num_nuclides, :self.num_scores] = self.sum_sq if self.mean is not None: new_tally._mean = np.zeros(new_shape, dtype=np.float64) - new_tally._mean[diag_indices, :, :] = self.mean + new_tally._mean[indices, :self.num_nuclides, :self.num_scores] = self.mean if self.std_dev is not None: new_tally._std_dev = np.zeros(new_shape, dtype=np.float64) - new_tally._std_dev[diag_indices, :, :] = self.std_dev + new_tally._std_dev[indices, :self.num_nuclides, :self.num_scores] = self.std_dev # Correct each Filter's stride stride = new_tally.num_nuclides * new_tally.num_score_bins