From 2893f10d3576d2b43391ff60d4fe6544c2ad038b Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Sun, 13 Dec 2015 13:47:27 -0500 Subject: [PATCH 01/17] addressed PR comments and changed tally.get_values() routine to return copy of data --- openmc/mgxs/mgxs.py | 8 +- openmc/tallies.py | 275 +++++++++++++++++++++----------------------- 2 files changed, 133 insertions(+), 150 deletions(-) diff --git a/openmc/mgxs/mgxs.py b/openmc/mgxs/mgxs.py index 597e28e292..7913747f98 100644 --- a/openmc/mgxs/mgxs.py +++ b/openmc/mgxs/mgxs.py @@ -92,7 +92,7 @@ class MGXS(object): xs_tally : Tally Derived tally for the multi-group cross section. This attribute is None unless the multi-group cross section has been computed. - num_sumbdomains : Integral + num_subdomains : Integral The number of subdomains is unity for 'material', 'cell' and 'universe' domain types. When the This is equal to the number of cell instances for 'distribcell' domain types (it is equal to unity prior to loading @@ -1421,7 +1421,7 @@ class AbsorptionXS(MGXS): class CaptureXS(MGXS): """A capture multi-group cross section. - The Neutron capture reaction rate is defined as the difference between + The neutron capture reaction rate is defined as the difference between OpenMC's 'absorption' and 'fission' reaction rate score types. This includes not only radiative capture, but all forms of neutron disappearance aside from fission (e.g., MT > 100). @@ -1723,8 +1723,8 @@ class ScatterMatrixXS(MGXS): if self.correction == 'P0': scatter_p1 = self.tallies['scatter-P1'] scatter_p1 = scatter_p1.get_slice(scores=['scatter-P1']) - energy_filter = copy.deepcopy(self.tallies['scatter']. - find_filter('energy')) + energy_filter = self.tallies['scatter'].find_filter('energy') + energy_filter = copy.deepcopy(energy_filter) scatter_p1 = scatter_p1.diagonalize_filter(energy_filter) rxn_tally = self.tallies['scatter'] - scatter_p1 else: diff --git a/openmc/tallies.py b/openmc/tallies.py index 8b4aa89ddd..62e304d941 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -24,6 +24,11 @@ if sys.version_info[0] >= 3: # "Static" variable for auto-generated Tally IDs AUTO_TALLY_ID = 10000 +# The tally arithmetic product types. The tensor product performs the full +# cross product of the data in two tallies with respect to a specified axis +# (filters, nuclides, or scores). The entrywise product performs the arithmetic +# operation entrywise across the entries in two tallies with respect to a +# specified axis. _PRODUCT_TYPES = ['tensor', 'entrywise'] def reset_auto_tally_id(): @@ -1005,7 +1010,12 @@ class Tally(object): """ - cv.check_iterable_type('scores', scores, basestring) + for score in scores: + if not isinstance(score, (basestring, CrossScore)): + msg = 'Unable to get score indices for score "{0}" in Tally ' \ + 'ID="{1}" since it is not a string or CrossScore'\ + .format(score, self.id) + raise ValueError(msg) # Determine the score indices from any of the requested scores if scores: @@ -1106,7 +1116,7 @@ class Tally(object): '\'rel_err\', \'sum\', or \'sum_sq\''.format(self.id, value) raise LookupError(msg) - return data + return data.copy() def get_pandas_dataframe(self, filters=True, nuclides=True, scores=True, summary=None): @@ -1426,20 +1436,20 @@ class Tally(object): # Pickle the Tally results to a file pickle.dump(tally_results, open(filename, 'wb')) - def hybrid_product(self, other, binary_op, filter_product='None', - nuclide_product='None', score_product='None'): + def hybrid_product(self, other, binary_op, filter_product=None, + nuclide_product=None, score_product=None): """Combines filters, scores and nuclides with another tally. This is a helper method for the tally arithmetic methods. It is called a "hybrid product" because it performs a combination of tensor - (or Kronecker) and entrywise (or Hadamard) products. The filters, - nuclides, and scores from both tallies are combined using an entrywise - (or Hadamard) product on matching filters. By default, if all nuclides - are identical in the two tallies, the entrywise product is performed - across nuclides; else the tensor product is performed. By default, if all - scores are identical in the two tallies, the entrywise product is - performed across scores; else the tensor product is performed. Users can - also call the method explicitly and specify the desired product. + (or Kronecker) and entrywise (or Hadamard) products. The filters from + both tallies are combined using an entrywise (or Hadamard) product on + matching filters. By default, if all nuclides are identical in the two + tallies, the entrywise product is performed across nuclides; else the + tensor product is performed. By default, if all scores are identical in + the two tallies, the entrywise product is performed across scores; else + the tensor product is performed. Users can also call the method + explicitly and specify the desired product. Parameters ---------- @@ -1477,7 +1487,7 @@ class Tally(object): """ # Set default value for filter product if it was not set - if filter_product == 'None': + if filter_product is None: filter_product = 'entrywise' elif filter_product == 'tensor': msg = 'Unable to perform Tally arithmetic with a tensor product' \ @@ -1485,14 +1495,14 @@ class Tally(object): raise ValueError(msg) # Set default value for nuclide product if it was not set - if nuclide_product == 'None': + if nuclide_product is None: if self.nuclides == other.nuclides: nuclide_product = 'entrywise' else: nuclide_product = 'tensor' # Set default value for score product if it was not set - if score_product == 'None': + if score_product is None: if self.scores == other.scores: score_product = 'entrywise' else: @@ -1520,10 +1530,7 @@ class Tally(object): # Query the mean and std dev so the tally data is read in from file # if it has not already been read in. - self.mean - self.std_dev - other.mean - other.std_dev + self.mean, self.std_dev, other.mean, other.std_dev # Create copies of self and other tallies to rearrange for tally # arithmetic @@ -1581,7 +1588,7 @@ class Tally(object): # Add filters to the new tally if filter_product == 'entrywise': for self_filter in self_copy.filters: - new_tally.filters.append(self_filter) + new_tally.add_filter(self_filter) else: all_filters = [self_copy.filters, other_copy.filters] for self_filter, other_filter in itertools.product(*all_filters): @@ -1591,7 +1598,7 @@ class Tally(object): # Add nuclides to the new tally if nuclide_product == 'entrywise': for self_nuclide in self_copy.nuclides: - new_tally.nuclides.append(self_nuclide) + new_tally.add_nuclide(self_nuclide) else: all_nuclides = [self_copy.nuclides, other_copy.nuclides] for self_nuclide, other_nuclide in itertools.product(*all_nuclides): @@ -1677,7 +1684,7 @@ class Tally(object): # If necessary, swap other filter if other_index != i: - other.swap_filters(filter, other.filters[i], inplace=True) + other._swap_filters(filter, other.filters[i]) # Repeat and tile the data by nuclide in preparation for performing # the tensor product across nuclides. @@ -1710,11 +1717,11 @@ class Tally(object): # Align other nuclides with self nuclides for i, nuclide in enumerate(self.nuclides): - other_index = other.nuclides.index(nuclide) + other_index = other.get_nuclide_index(nuclide) # If necessary, swap other nuclide if other_index != i: - other.swap_nuclides(nuclide, other.nuclides[i]) + other._swap_nuclides(nuclide, other.nuclides[i]) # Repeat and tile the data by score in preparation for performing # the tensor product across scores. @@ -1744,6 +1751,7 @@ class Tally(object): self._mean = np.insert(self.mean, self.num_score_bins, 0, axis=2) self._std_dev = np.insert(self.std_dev, self.num_score_bins, 0, axis=2) self.add_score(score) + self.num_score_bins = self.num_score_bins + 1 # Align other scores with self scores for i, score in enumerate(self.scores): @@ -1751,7 +1759,7 @@ class Tally(object): # If necessary, swap other score if other_index != i: - other.swap_scores(score, other.scores[i]) + other._swap_scores(score, other.scores[i]) # Correct the stride for other filters stride = other.num_nuclides * other.num_score_bins @@ -1765,22 +1773,16 @@ class Tally(object): filter.stride = stride stride *= filter.num_bins - # Deep copy the mean and std dev data - self_mean = copy.deepcopy(self.mean) - self_std_dev = copy.deepcopy(self.std_dev) - other_mean = copy.deepcopy(other.mean) - other_std_dev = copy.deepcopy(other.std_dev) - data = {} data['self'] = {} data['other'] = {} - data['self']['mean'] = self_mean - data['other']['mean'] = other_mean - data['self']['std. dev.'] = self_std_dev - data['other']['std. dev.'] = other_std_dev + data['self']['mean'] = self.mean + data['other']['mean'] = other.mean + data['self']['std. dev.'] = self.std_dev + data['other']['std. dev.'] = other.std_dev return data - def swap_filters(self, filter1, filter2, inplace=False): + def _swap_filters(self, filter1, filter2): """Reverse the ordering of two filters in this tally This is a helper method for tally arithmetic which helps align the data @@ -1795,26 +1797,16 @@ class Tally(object): filter2 : Filter The filter to swap with filter1 - inplace : bool, optional - Whether to perform operation inplace or return new tally with the - filters swapped. - - Returns - ------- - swap_tally - If inplace is false, a copy of this tally with the filters swapped. - Otherwise, nothing is returned. - Raises ------ ValueError - If this is a derived tally or this method is called before the tally - is populated with data by the StatePoint.read_results() method. + If this method is called before the mean and std dev is computed + for this tally. """ # Check that results have been read - if not self.derived and self.sum is None: + if self.sum is None or self.std_dev is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) @@ -1822,6 +1814,7 @@ class Tally(object): cv.check_type('filter1', filter1, Filter) cv.check_type('filter2', filter2, Filter) + # Check that the filters exist in the tally and are not the same if filter1 == filter2: msg = 'Unable to swap a filter with itself' raise ValueError(msg) @@ -1834,25 +1827,15 @@ class Tally(object): 'does not contain such a filter'.format(filter2.type, self.id) raise ValueError(msg) - # Create a copy of the tally that preserves the original data formatting - # throughout swapping process - tally_copy = copy.deepcopy(self) - - # Set the swap tally - if inplace: - swap_tally = self - else: - swap_tally = copy.deepcopy(self) - # Swap the filters in the copied version of this Tally - filter1_index = swap_tally.filters.index(filter1) - filter2_index = swap_tally.filters.index(filter2) - swap_tally.filters[filter1_index] = filter2 - swap_tally.filters[filter2_index] = filter1 + filter1_index = self.filters.index(filter1) + filter2_index = self.filters.index(filter2) + self.filters[filter1_index] = filter2 + self.filters[filter2_index] = filter1 # Update the strides for each of the filters - stride = swap_tally.num_nuclides * swap_tally.num_score_bins - for filter in reversed(swap_tally.filters): + stride = self.num_nuclides * self.num_score_bins + for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -1868,46 +1851,25 @@ class Tally(object): else: filter2_bins = [filter2.get_bin(i) for i in range(filter2.num_bins)] - # Adjust the sum data array to relect the new filter order - if swap_tally.sum is not None: - for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): - filter_bins = [(bin1,), (bin2,)] - data = tally_copy.get_values( - filters=filters, filter_bins=filter_bins, value='sum') - indices = swap_tally.get_filter_indices(filters, filter_bins) - swap_tally.sum[indices, :, :] = data - - # Adjust the sum_sq data array to relect the new filter order - if swap_tally.sum_sq is not None: - for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): - filter_bins = [(bin1,), (bin2,)] - data = tally_copy.get_values( - filters=filters, filter_bins=filter_bins, value='sum_sq') - indices = swap_tally.get_filter_indices(filters, filter_bins) - swap_tally.sum_sq[indices, :, :] = data - # Adjust the mean data array to relect the new filter order - if swap_tally.mean is not None: + if self.mean is not None: for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): filter_bins = [(bin1,), (bin2,)] - data = tally_copy.get_values( + data = self.get_values( filters=filters, filter_bins=filter_bins, value='mean') - indices = swap_tally.get_filter_indices(filters, filter_bins) - swap_tally._mean[indices, :, :] = data + indices = self.get_filter_indices(filters, filter_bins) + self._mean[indices, :, :] = data # Adjust the std_dev data array to relect the new filter order - if swap_tally.std_dev is not None: + if self.std_dev is not None: for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): filter_bins = [(bin1,), (bin2,)] - data = tally_copy.get_values( + data = self.get_values( filters=filters, filter_bins=filter_bins, value='std_dev') - indices = swap_tally.get_filter_indices(filters, filter_bins) - swap_tally._std_dev[indices, :, :] = data + indices = self.get_filter_indices(filters, filter_bins) + self._std_dev[indices, :, :] = data - if not inplace: - return swap_tally - - def swap_nuclides(self, nuclide1, nuclide2): + def _swap_nuclides(self, nuclide1, nuclide2): """Reverse the ordering of two nuclides in this tally This is a helper method for tally arithmetic which helps align the data @@ -1925,44 +1887,52 @@ class Tally(object): Raises ------ ValueError - If this is a derived tally or this method is called before the tally - is populated with data by the StatePoint.read_results() method. + If this method is called before the mean and std dev is computed + for this tally. """ # Check that results have been read - if not self.derived and self.sum is None: + if self.sum is None or self.std_dev is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) + cv.check_type('nuclide1', nuclide1, Nuclide) + cv.check_type('nuclide2', nuclide2, Nuclide) + + # Check that the nuclides exist in the tally and are not the same + if nuclide1 == nuclide2: + msg = 'Unable to swap a nuclide with itself' + raise ValueError(msg) + elif nuclide1 not in self.nuclides: + msg = 'Unable to swap nuclide1 "{0}" in Tally ID="{1}" since it ' \ + 'does not contain such a nuclide'\ + .format(nuclide1.name, self.id) + raise ValueError(msg) + elif nuclide2 not in self.nuclides: + msg = 'Unable to swap "{0}" nuclide2 in Tally ID="{1}" since it ' \ + 'does not contain such a nuclide'\ + .format(nuclide2.name, self.id) + raise ValueError(msg) + # Swap the nuclides in the Tally - nuclide1_index = self.nuclides.index(nuclide1) - nuclide2_index = self.nuclides.index(nuclide2) + nuclide1_index = self.get_nuclide_index(nuclide1) + nuclide2_index = self.get_nuclide_index(nuclide2) self.nuclides[nuclide1_index] = nuclide2 self.nuclides[nuclide2_index] = nuclide1 - # Copy the tally data - self_mean = copy.deepcopy(self.mean) - self_std_dev = copy.deepcopy(self.std_dev) + # Swap the mean and std dev data + nuclide1_mean = self._mean[:,nuclide1_index,:].copy() + nuclide2_mean = self._mean[:,nuclide2_index,:].copy() + nuclide1_std_dev = self._std_dev[:,nuclide1_index,:].copy() + nuclide2_std_dev = self._std_dev[:,nuclide2_index,:].copy() + self._mean[:,nuclide2_index,:] = nuclide1_mean + self._mean[:,nuclide1_index,:] = nuclide2_mean + self._std_dev[:,nuclide2_index,:] = nuclide1_std_dev + self._std_dev[:,nuclide1_index,:] = nuclide2_std_dev - # Swap nuclide 1 in place of nuclide 2 - self._mean = np.delete(self.mean, nuclide2_index, axis=1) - self._mean = np.insert(self.mean, nuclide2_index, - self_mean[:,nuclide1_index,:], axis=1) - self._std_dev = np.delete(self.std_dev, nuclide2_index, axis=1) - self._std_dev = np.insert(self.std_dev, nuclide2_index, - self_mean[:,nuclide1_index,:], axis=1) - - # Swap nuclide 2 in place of nuclide 1 - self._mean = np.delete(self.mean, nuclide1_index, axis=1) - self._mean = np.insert(self.mean, nuclide1_index, - self_mean[:,nuclide2_index,:], axis=1) - self._std_dev = np.delete(self.std_dev, nuclide1_index, axis=1) - self._std_dev = np.insert(self.std_dev, nuclide1_index, - self_mean[:,nuclide2_index,:], axis=1) - - def swap_scores(self, score1, score2): + def _swap_scores(self, score1, score2): """Reverse the ordering of two scores in this tally This is a helper method for tally arithmetic which helps align the data @@ -1971,51 +1941,64 @@ class Tally(object): Parameters ---------- - score1 : Score + score1 : str or CrossScore The score to swap with score2 - score2 : Score + score2 : str or CrossScore The score to swap with score1 Raises ------ ValueError - If this is a derived tally or this method is called before the tally - is populated with data by the StatePoint.read_results() method. + If this method is called before the mean and std dev is computed + for this tally. """ # Check that results have been read - if not self.derived and self.sum is None: + if self.sum is None or self.std_dev is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) + # Check that the scores are valid + if not isinstance(score1, (basestring, CrossScore)): + msg = 'Unable to swap score "{0}" in Tally ID="{1}" since it is ' \ + 'not a string or CrossScore'.format(score1, self.id) + raise ValueError(msg) + elif not isinstance(score2, (basestring, CrossScore)): + msg = 'Unable to swap score "{0}" in Tally ID="{1}" since it is ' \ + 'not a string or CrossScore'.format(score2, self.id) + raise ValueError(msg) + + # Check that the scores exist in the tally and are not the same + if score1 == score2: + msg = 'Unable to swap a score with itself' + raise ValueError(msg) + elif score1 not in self.scores: + msg = 'Unable to swap score1 "{0}" in Tally ID="{1}" since it ' \ + 'does not contain such a score'.format(score1, self.id) + raise ValueError(msg) + elif score2 not in self.scores: + msg = 'Unable to swap score2 "{0}" in Tally ID="{1}" since it ' \ + 'does not contain such a score'.format(score2, self.id) + raise ValueError(msg) + # Swap the scores in the Tally - score1_index = self.scores.index(score1) - score2_index = self.scores.index(score2) + score1_index = self.get_score_index(score1) + score2_index = self.get_score_index(score2) self.scores[score1_index] = score2 self.scores[score2_index] = score1 - # Copy the tally data - self_mean = copy.deepcopy(self.mean) - self_std_dev = copy.deepcopy(self.std_dev) - - # Swap score 1 in place of score 2 - self._mean = np.delete(self.mean, score2_index, axis=2) - self._mean = np.insert(self.mean, score2_index, - self_mean[:,:,score1_index], axis=2) - self._std_dev = np.delete(self.std_dev, score2_index, axis=2) - self._std_dev = np.insert(self.std_dev, score2_index, - self_mean[:,:,score1_index], axis=2) - - # Swap score 2 in place of score 1 - self._mean = np.delete(self.mean, score1_index, axis=2) - self._mean = np.insert(self.mean, score1_index, - self_mean[:,:,score2_index], axis=2) - self._std_dev = np.delete(self.std_dev, score1_index, axis=2) - self._std_dev = np.insert(self.std_dev, score1_index, - self_mean[:,:,score2_index], axis=2) + # Swap the mean and std dev data + score1_mean = self._mean[:,:,score1_index].copy() + score2_mean = self._mean[:,:,score2_index].copy() + score1_std_dev = self._std_dev[:,:,score1_index].copy() + score2_std_dev = self._std_dev[:,:,score2_index].copy() + self._mean[:,:,score2_index] = score1_mean + self._mean[:,:,score1_index] = score2_mean + self._std_dev[:,:,score2_index] = score1_std_dev + self._std_dev[:,:,score1_index] = score2_std_dev def __add__(self, other): """Adds this tally to another tally or scalar value. From 52d879ebd39ff36c93e658e55505dac089b224d1 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Sun, 13 Dec 2015 15:07:46 -0500 Subject: [PATCH 02/17] modified swap functions to swap sum and sum_sq, if present --- openmc/tallies.py | 108 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 81 insertions(+), 27 deletions(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index 62e304d941..d624cfed4e 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1800,13 +1800,13 @@ class Tally(object): Raises ------ ValueError - If this method is called before the mean and std dev is computed - for this tally. + If this is a derived tally or this method is called before the tally + is populated with data by the StatePoint.read_results() method. """ # Check that results have been read - if self.sum is None or self.std_dev is None: + if not self.derived and self.sum is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) @@ -1851,6 +1851,24 @@ class Tally(object): else: filter2_bins = [filter2.get_bin(i) for i in range(filter2.num_bins)] + # Adjust the sum data array to relect the new filter order + if self.sum is not None: + for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): + filter_bins = [(bin1,), (bin2,)] + data = self.get_values( + filters=filters, filter_bins=filter_bins, value='sum') + indices = self.get_filter_indices(filters, filter_bins) + self.sum[indices, :, :] = data + + # Adjust the sum_sq data array to relect the new filter order + if self.sum_sq is not None: + for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): + filter_bins = [(bin1,), (bin2,)] + data = self.get_values( + filters=filters, filter_bins=filter_bins, value='sum_sq') + indices = self.get_filter_indices(filters, filter_bins) + self.sum_sq[indices, :, :] = data + # Adjust the mean data array to relect the new filter order if self.mean is not None: for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): @@ -1887,13 +1905,13 @@ class Tally(object): Raises ------ ValueError - If this method is called before the mean and std dev is computed - for this tally. + If this is a derived tally or this method is called before the tally + is populated with data by the StatePoint.read_results() method. """ # Check that results have been read - if self.sum is None or self.std_dev is None: + if not self.derived and self.sum is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) @@ -1922,15 +1940,33 @@ class Tally(object): self.nuclides[nuclide1_index] = nuclide2 self.nuclides[nuclide2_index] = nuclide1 - # Swap the mean and std dev data - nuclide1_mean = self._mean[:,nuclide1_index,:].copy() - nuclide2_mean = self._mean[:,nuclide2_index,:].copy() - nuclide1_std_dev = self._std_dev[:,nuclide1_index,:].copy() - nuclide2_std_dev = self._std_dev[:,nuclide2_index,:].copy() - self._mean[:,nuclide2_index,:] = nuclide1_mean - self._mean[:,nuclide1_index,:] = nuclide2_mean - self._std_dev[:,nuclide2_index,:] = nuclide1_std_dev - self._std_dev[:,nuclide1_index,:] = nuclide2_std_dev + # Adjust the sum data array to relect the new nuclide order + if self.sum is not None: + nuclide1_sum = self._sum[:,nuclide1_index,:].copy() + nuclide2_sum = self._sum[:,nuclide2_index,:].copy() + self._sum[:,nuclide2_index,:] = nuclide1_sum + self._sum[:,nuclide1_index,:] = nuclide2_sum + + # Adjust the sum_sq data array to relect the new nuclide order + if self.sum_sq is not None: + nuclide1_sum_sq = self._sum_sq[:,nuclide1_index,:].copy() + nuclide2_sum_sq = self._sum_sq[:,nuclide2_index,:].copy() + self._sum_sq[:,nuclide2_index,:] = nuclide1_sum_sq + self._sum_sq[:,nuclide1_index,:] = nuclide2_sum_sq + + # Adjust the mean data array to relect the new nuclide order + if self.mean is not None: + nuclide1_mean = self._mean[:,nuclide1_index,:].copy() + nuclide2_mean = self._mean[:,nuclide2_index,:].copy() + self._mean[:,nuclide2_index,:] = nuclide1_mean + self._mean[:,nuclide1_index,:] = nuclide2_mean + + # Adjust the std_dev data array to relect the new nuclide order + if self.std_dev is not None: + nuclide1_std_dev = self._std_dev[:,nuclide1_index,:].copy() + nuclide2_std_dev = self._std_dev[:,nuclide2_index,:].copy() + self._std_dev[:,nuclide2_index,:] = nuclide1_std_dev + self._std_dev[:,nuclide1_index,:] = nuclide2_std_dev def _swap_scores(self, score1, score2): """Reverse the ordering of two scores in this tally @@ -1950,13 +1986,13 @@ class Tally(object): Raises ------ ValueError - If this method is called before the mean and std dev is computed - for this tally. + If this is a derived tally or this method is called before the tally + is populated with data by the StatePoint.read_results() method. """ # Check that results have been read - if self.sum is None or self.std_dev is None: + if not self.derived and self.sum is None: msg = 'Unable to use tally arithmetic with Tally ID="{0}" ' \ 'since it does not contain any results.'.format(self.id) raise ValueError(msg) @@ -1990,15 +2026,33 @@ class Tally(object): self.scores[score1_index] = score2 self.scores[score2_index] = score1 - # Swap the mean and std dev data - score1_mean = self._mean[:,:,score1_index].copy() - score2_mean = self._mean[:,:,score2_index].copy() - score1_std_dev = self._std_dev[:,:,score1_index].copy() - score2_std_dev = self._std_dev[:,:,score2_index].copy() - self._mean[:,:,score2_index] = score1_mean - self._mean[:,:,score1_index] = score2_mean - self._std_dev[:,:,score2_index] = score1_std_dev - self._std_dev[:,:,score1_index] = score2_std_dev + # Adjust the sum data array to relect the new nuclide order + if self.sum is not None: + score1_sum = self._sum[:,:,score1_index].copy() + score2_sum = self._sum[:,:,score2_index].copy() + self._sum[:,:,score2_index] = score1_sum + self._sum[:,:,score1_index] = score2_sum + + # Adjust the sum_sq data array to relect the new nuclide order + if self.sum_sq is not None: + score1_sum_sq = self._sum_sq[:,:,score1_index].copy() + score2_sum_sq = self._sum_sq[:,:,score2_index].copy() + self._sum_sq[:,:,score2_index] = score1_sum_sq + self._sum_sq[:,:,score1_index] = score2_sum_sq + + # Adjust the mean data array to relect the new nuclide order + if self.mean is not None: + score1_mean = self._mean[:,:,score1_index].copy() + score2_mean = self._mean[:,:,score2_index].copy() + self._mean[:,:,score2_index] = score1_mean + self._mean[:,:,score1_index] = score2_mean + + # Adjust the std_dev data array to relect the new nuclide order + if self.std_dev is not None: + score1_std_dev = self._std_dev[:,:,score1_index].copy() + score2_std_dev = self._std_dev[:,:,score2_index].copy() + self._std_dev[:,:,score2_index] = score1_std_dev + self._std_dev[:,:,score1_index] = score2_std_dev def __add__(self, other): """Adds this tally to another tally or scalar value. From 50519fe62d57036dd80a9249d698db4974d76d22 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Mon, 14 Dec 2015 11:34:52 -0500 Subject: [PATCH 03/17] removed num_score_bins from Tally object and removed sum and sum_sq from tally arithmetic --- openmc/mgxs/mgxs.py | 4 +- openmc/statepoint.py | 2 - openmc/summary.py | 2 - openmc/tallies.py | 107 ++++++++----------------------------------- 4 files changed, 21 insertions(+), 94 deletions(-) diff --git a/openmc/mgxs/mgxs.py b/openmc/mgxs/mgxs.py index 7913747f98..7f521a975c 100644 --- a/openmc/mgxs/mgxs.py +++ b/openmc/mgxs/mgxs.py @@ -755,7 +755,7 @@ class MGXS(object): # Reshape condensed data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) @@ -837,7 +837,7 @@ class MGXS(object): # Reshape averaged data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) diff --git a/openmc/statepoint.py b/openmc/statepoint.py index 2edf9badd4..4ab7ddd5d1 100644 --- a/openmc/statepoint.py +++ b/openmc/statepoint.py @@ -394,8 +394,6 @@ class StatePoint(object): # Read score bins n_score_bins = self._f['{0}{1}/n_score_bins'.format(base, tally_key)].value - tally.num_score_bins = n_score_bins - scores = self._f['{0}{1}/score_bins'.format( base, tally_key)].value n_user_scores = self._f['{0}{1}/n_user_score_bins' diff --git a/openmc/summary.py b/openmc/summary.py index 4b1088e827..c14f9073d8 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -524,8 +524,6 @@ class Summary(object): scores = self._f['{0}/score_bins'.format(subbase)].value for score in scores: tally.add_score(score.decode()) - num_score_bins = self._f['{0}/n_score_bins'.format(subbase)][...] - tally.num_score_bins = num_score_bins # Read filter metadata num_filters = self._f['{0}/n_filters'.format(subbase)].value diff --git a/openmc/tallies.py b/openmc/tallies.py index d624cfed4e..d097ba0a6c 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -64,10 +64,6 @@ class Tally(object): Type of estimator for the tally triggers : list of openmc.trigger.Trigger List of tally triggers - num_score_bins : Integral - Total number of scores, accounting for the fact that a single - user-specified score, e.g. scatter-P3 or flux-Y2,2, might have multiple - bins num_scores : Integral Total number of user-specified scores num_filter_bins : Integral @@ -100,7 +96,6 @@ class Tally(object): self._estimator = None self._triggers = [] - self._num_score_bins = 0 self._num_realizations = 0 self._with_summary = False @@ -123,7 +118,6 @@ class Tally(object): clone.id = self.id clone.name = self.name clone.estimator = self.estimator - clone.num_score_bins = self.num_score_bins clone.num_realizations = self.num_realizations clone._sum = copy.deepcopy(self._sum, memo) clone._sum_sq = copy.deepcopy(self._sum_sq, memo) @@ -252,10 +246,6 @@ class Tally(object): def num_scores(self): return len(self._scores) - @property - def num_score_bins(self): - return self._num_score_bins - @property def num_filter_bins(self): num_bins = 1 @@ -269,7 +259,7 @@ class Tally(object): def num_bins(self): num_bins = self.num_filter_bins num_bins *= self.num_nuclides - num_bins *= self.num_score_bins + num_bins *= self.num_scores return num_bins @property @@ -312,7 +302,7 @@ class Tally(object): # Reshape the results arrays new_shape = (nonzero(self.num_filter_bins), nonzero(self.num_nuclides), - nonzero(self.num_score_bins)) + nonzero(self.num_scores)) sum = np.reshape(sum, new_shape) sum_sq = np.reshape(sum_sq, new_shape) @@ -468,10 +458,6 @@ class Tally(object): else: self._scores.append(score) - @num_score_bins.setter - def num_score_bins(self, num_score_bins): - self._num_score_bins = num_score_bins - @num_realizations.setter def num_realizations(self, num_realizations): cv.check_type('number of realizations', num_realizations, Integral) @@ -1286,7 +1272,7 @@ class Tally(object): for filter in self.filters: new_shape += (filter.num_bins, ) new_shape += (self.num_nuclides,) - new_shape += (self.num_score_bins,) + new_shape += (self.num_scores,) # Reshape the data with one dimension for each filter data = np.reshape(data, new_shape) @@ -1607,18 +1593,16 @@ class Tally(object): # Add scores to the new tally if score_product == 'entrywise': - new_tally.num_score_bins = self_copy.num_score_bins for self_score in self_copy.scores: new_tally.add_score(self_score) else: - new_tally.num_score_bins = self_copy.num_score_bins * other_copy.num_score_bins all_scores = [self_copy.scores, other_copy.scores] for self_score, other_score in itertools.product(*all_scores): new_score = CrossScore(self_score, other_score, binary_op) new_tally.add_score(new_score) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -1726,10 +1710,10 @@ class Tally(object): # Repeat and tile the data by score in preparation for performing # the tensor product across scores. if score_product == 'tensor': - self._mean = np.repeat(self.mean, other.num_score_bins, axis=2) - self._std_dev = np.repeat(self.std_dev, other.num_score_bins, axis=2) - other._mean = np.tile(other.mean, (1, 1, self.num_score_bins)) - other._std_dev = np.tile(other.std_dev, (1, 1, self.num_score_bins)) + self._mean = np.repeat(self.mean, other.num_scores, axis=2) + self._std_dev = np.repeat(self.std_dev, other.num_scores, axis=2) + other._mean = np.tile(other.mean, (1, 1, self.num_scores)) + other._std_dev = np.tile(other.std_dev, (1, 1, self.num_scores)) # Add scores to each tally such that each tally contains the complete set # of scores necessary to perform an entrywise product. New scores added @@ -1742,16 +1726,15 @@ class Tally(object): # Add scores present in self but not in other to other for score in other_missing_scores: - other._mean = np.insert(other.mean, other.num_score_bins, 0, axis=2) - other._std_dev = np.insert(other.std_dev, other.num_score_bins, 0, axis=2) + other._mean = np.insert(other.mean, other.num_scores, 0, axis=2) + other._std_dev = np.insert(other.std_dev, other.num_scores, 0, axis=2) other.add_score(score) # Add scores present in other but not in self to self for score in self_missing_scores: - self._mean = np.insert(self.mean, self.num_score_bins, 0, axis=2) - self._std_dev = np.insert(self.std_dev, self.num_score_bins, 0, axis=2) + self._mean = np.insert(self.mean, self.num_scores, 0, axis=2) + self._std_dev = np.insert(self.std_dev, self.num_scores, 0, axis=2) self.add_score(score) - self.num_score_bins = self.num_score_bins + 1 # Align other scores with self scores for i, score in enumerate(self.scores): @@ -1762,13 +1745,13 @@ class Tally(object): other._swap_scores(score, other.scores[i]) # Correct the stride for other filters - stride = other.num_nuclides * other.num_score_bins + stride = other.num_nuclides * other.num_scores for filter in reversed(other.filters): filter.stride = stride stride *= filter.num_bins # Correct the stride for self filters - stride = self.num_nuclides * self.num_score_bins + stride = self.num_nuclides * self.num_scores for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -1834,7 +1817,7 @@ class Tally(object): self.filters[filter2_index] = filter1 # Update the strides for each of the filters - stride = self.num_nuclides * self.num_score_bins + stride = self.num_nuclides * self.num_scores for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -1851,24 +1834,6 @@ class Tally(object): else: filter2_bins = [filter2.get_bin(i) for i in range(filter2.num_bins)] - # Adjust the sum data array to relect the new filter order - if self.sum is not None: - for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): - filter_bins = [(bin1,), (bin2,)] - data = self.get_values( - filters=filters, filter_bins=filter_bins, value='sum') - indices = self.get_filter_indices(filters, filter_bins) - self.sum[indices, :, :] = data - - # Adjust the sum_sq data array to relect the new filter order - if self.sum_sq is not None: - for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): - filter_bins = [(bin1,), (bin2,)] - data = self.get_values( - filters=filters, filter_bins=filter_bins, value='sum_sq') - indices = self.get_filter_indices(filters, filter_bins) - self.sum_sq[indices, :, :] = data - # Adjust the mean data array to relect the new filter order if self.mean is not None: for bin1, bin2 in itertools.product(filter1_bins, filter2_bins): @@ -1940,20 +1905,6 @@ class Tally(object): self.nuclides[nuclide1_index] = nuclide2 self.nuclides[nuclide2_index] = nuclide1 - # Adjust the sum data array to relect the new nuclide order - if self.sum is not None: - nuclide1_sum = self._sum[:,nuclide1_index,:].copy() - nuclide2_sum = self._sum[:,nuclide2_index,:].copy() - self._sum[:,nuclide2_index,:] = nuclide1_sum - self._sum[:,nuclide1_index,:] = nuclide2_sum - - # Adjust the sum_sq data array to relect the new nuclide order - if self.sum_sq is not None: - nuclide1_sum_sq = self._sum_sq[:,nuclide1_index,:].copy() - nuclide2_sum_sq = self._sum_sq[:,nuclide2_index,:].copy() - self._sum_sq[:,nuclide2_index,:] = nuclide1_sum_sq - self._sum_sq[:,nuclide1_index,:] = nuclide2_sum_sq - # Adjust the mean data array to relect the new nuclide order if self.mean is not None: nuclide1_mean = self._mean[:,nuclide1_index,:].copy() @@ -2026,20 +1977,6 @@ class Tally(object): self.scores[score1_index] = score2 self.scores[score2_index] = score1 - # Adjust the sum data array to relect the new nuclide order - if self.sum is not None: - score1_sum = self._sum[:,:,score1_index].copy() - score2_sum = self._sum[:,:,score2_index].copy() - self._sum[:,:,score2_index] = score1_sum - self._sum[:,:,score1_index] = score2_sum - - # Adjust the sum_sq data array to relect the new nuclide order - if self.sum_sq is not None: - score1_sum_sq = self._sum_sq[:,:,score1_index].copy() - score2_sum_sq = self._sum_sq[:,:,score2_index].copy() - self._sum_sq[:,:,score2_index] = score1_sum_sq - self._sum_sq[:,:,score1_index] = score2_sum_sq - # Adjust the mean data array to relect the new nuclide order if self.mean is not None: score1_mean = self._mean[:,:,score1_index].copy() @@ -2109,7 +2046,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2178,7 +2114,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2248,7 +2183,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2318,7 +2252,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2392,7 +2325,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2594,7 +2526,6 @@ class Tally(object): # Loop over indices in reverse to remove excluded scores for score_index in reversed(score_indices): new_tally.remove_score(self.scores[score_index]) - new_tally.num_score_bins -= 1 # NUCLIDES if nuclides: @@ -2634,7 +2565,7 @@ class Tally(object): filter.num_bins = len(filter_bins[i]) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -2780,8 +2711,8 @@ class Tally(object): # Determine the shape of data in the new diagonalized Tally num_filter_bins = new_tally.num_filter_bins num_nuclides = new_tally.num_nuclides - num_score_bins = new_tally.num_score_bins - new_shape = (num_filter_bins, num_nuclides, num_score_bins) + num_scores = new_tally.num_scores + new_shape = (num_filter_bins, num_nuclides, num_scores) # Determine "base" indices along the new "diagonal", and the factor # by which the "base" indices should be repeated to account for all @@ -2811,7 +2742,7 @@ class Tally(object): new_tally._std_dev[diag_indices, :, :] = self.std_dev # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins From a0160ad48ab32b954034c0ae5ce8da733bbde73f Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Thu, 17 Dec 2015 15:07:32 -0500 Subject: [PATCH 04/17] reverted to using num_score_bins in tallies.py --- openmc/statepoint.py | 8 ++++--- openmc/summary.py | 2 ++ openmc/tallies.py | 52 ++++++++++++++++++++++++++++---------------- 3 files changed, 40 insertions(+), 22 deletions(-) diff --git a/openmc/statepoint.py b/openmc/statepoint.py index 4ab7ddd5d1..1ff0584a72 100644 --- a/openmc/statepoint.py +++ b/openmc/statepoint.py @@ -9,9 +9,9 @@ if sys.version > '3': class StatePoint(object): - """State information on a simulation at a certain point in time (at the end of a - given batch). Statepoints can be used to analyze tally results as well as - restart a simulation. + """State information on a simulation at a certain point in time (at the end + of a given batch). Statepoints can be used to analyze tally results as well + as restart a simulation. Attributes ---------- @@ -394,6 +394,8 @@ class StatePoint(object): # Read score bins n_score_bins = self._f['{0}{1}/n_score_bins'.format(base, tally_key)].value + tally.num_score_bins = n_score_bins + scores = self._f['{0}{1}/score_bins'.format( base, tally_key)].value n_user_scores = self._f['{0}{1}/n_user_score_bins' diff --git a/openmc/summary.py b/openmc/summary.py index c14f9073d8..4b1088e827 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -524,6 +524,8 @@ class Summary(object): scores = self._f['{0}/score_bins'.format(subbase)].value for score in scores: tally.add_score(score.decode()) + num_score_bins = self._f['{0}/n_score_bins'.format(subbase)][...] + tally.num_score_bins = num_score_bins # Read filter metadata num_filters = self._f['{0}/n_filters'.format(subbase)].value diff --git a/openmc/tallies.py b/openmc/tallies.py index d097ba0a6c..e3b9fb439f 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -64,6 +64,10 @@ class Tally(object): Type of estimator for the tally triggers : list of openmc.trigger.Trigger List of tally triggers + num_score_bins : Integral + Total number of scores, accounting for the fact that a single + user-specified score, e.g. scatter-P3 or flux-Y2,2, might have multiple + bins num_scores : Integral Total number of user-specified scores num_filter_bins : Integral @@ -96,6 +100,7 @@ class Tally(object): self._estimator = None self._triggers = [] + self._num_score_bins = 0 self._num_realizations = 0 self._with_summary = False @@ -118,6 +123,7 @@ class Tally(object): clone.id = self.id clone.name = self.name clone.estimator = self.estimator + clone.num_score_bins = self.num_score_bins clone.num_realizations = self.num_realizations clone._sum = copy.deepcopy(self._sum, memo) clone._sum_sq = copy.deepcopy(self._sum_sq, memo) @@ -246,6 +252,10 @@ class Tally(object): def num_scores(self): return len(self._scores) + @property + def num_score_bins(self): + return self._num_score_bins + @property def num_filter_bins(self): num_bins = 1 @@ -259,7 +269,7 @@ class Tally(object): def num_bins(self): num_bins = self.num_filter_bins num_bins *= self.num_nuclides - num_bins *= self.num_scores + num_bins *= self.num_score_bins return num_bins @property @@ -302,7 +312,7 @@ class Tally(object): # Reshape the results arrays new_shape = (nonzero(self.num_filter_bins), nonzero(self.num_nuclides), - nonzero(self.num_scores)) + nonzero(self.num_score_bins)) sum = np.reshape(sum, new_shape) sum_sq = np.reshape(sum_sq, new_shape) @@ -458,6 +468,10 @@ class Tally(object): else: self._scores.append(score) + @num_score_bins.setter + def num_score_bins(self, num_score_bins): + self._num_score_bins = num_score_bins + @num_realizations.setter def num_realizations(self, num_realizations): cv.check_type('number of realizations', num_realizations, Integral) @@ -1272,7 +1286,7 @@ class Tally(object): for filter in self.filters: new_shape += (filter.num_bins, ) new_shape += (self.num_nuclides,) - new_shape += (self.num_scores,) + new_shape += (self.num_score_bins,) # Reshape the data with one dimension for each filter data = np.reshape(data, new_shape) @@ -1602,7 +1616,7 @@ class Tally(object): new_tally.add_score(new_score) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_scores + stride = new_tally.num_nuclides * new_tally.num_score_bins for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -1710,10 +1724,10 @@ class Tally(object): # Repeat and tile the data by score in preparation for performing # the tensor product across scores. if score_product == 'tensor': - self._mean = np.repeat(self.mean, other.num_scores, axis=2) - self._std_dev = np.repeat(self.std_dev, other.num_scores, axis=2) - other._mean = np.tile(other.mean, (1, 1, self.num_scores)) - other._std_dev = np.tile(other.std_dev, (1, 1, self.num_scores)) + self._mean = np.repeat(self.mean, other.num_score_bins, axis=2) + self._std_dev = np.repeat(self.std_dev, other.num_score_bins, axis=2) + other._mean = np.tile(other.mean, (1, 1, self.num_score_bins)) + other._std_dev = np.tile(other.std_dev, (1, 1, self.num_score_bins)) # Add scores to each tally such that each tally contains the complete set # of scores necessary to perform an entrywise product. New scores added @@ -1726,14 +1740,14 @@ class Tally(object): # Add scores present in self but not in other to other for score in other_missing_scores: - other._mean = np.insert(other.mean, other.num_scores, 0, axis=2) - other._std_dev = np.insert(other.std_dev, other.num_scores, 0, axis=2) + other._mean = np.insert(other.mean, other.num_score_bins, 0, axis=2) + other._std_dev = np.insert(other.std_dev, other.num_score_bins, 0, axis=2) other.add_score(score) # Add scores present in other but not in self to self for score in self_missing_scores: - self._mean = np.insert(self.mean, self.num_scores, 0, axis=2) - self._std_dev = np.insert(self.std_dev, self.num_scores, 0, axis=2) + self._mean = np.insert(self.mean, self.num_score_bins, 0, axis=2) + self._std_dev = np.insert(self.std_dev, self.num_score_bins, 0, axis=2) self.add_score(score) # Align other scores with self scores @@ -1745,13 +1759,13 @@ class Tally(object): other._swap_scores(score, other.scores[i]) # Correct the stride for other filters - stride = other.num_nuclides * other.num_scores + stride = other.num_nuclides * other.num_score_bins for filter in reversed(other.filters): filter.stride = stride stride *= filter.num_bins # Correct the stride for self filters - stride = self.num_nuclides * self.num_scores + stride = self.num_nuclides * self.num_score_bins for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -1817,7 +1831,7 @@ class Tally(object): self.filters[filter2_index] = filter1 # Update the strides for each of the filters - stride = self.num_nuclides * self.num_scores + stride = self.num_nuclides * self.num_score_bins for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -2565,7 +2579,7 @@ class Tally(object): filter.num_bins = len(filter_bins[i]) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_scores + stride = new_tally.num_nuclides * new_tally.num_score_bins for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -2711,8 +2725,8 @@ class Tally(object): # Determine the shape of data in the new diagonalized Tally num_filter_bins = new_tally.num_filter_bins num_nuclides = new_tally.num_nuclides - num_scores = new_tally.num_scores - new_shape = (num_filter_bins, num_nuclides, num_scores) + num_score_bins = new_tally.num_score_bins + new_shape = (num_filter_bins, num_nuclides, num_score_bins) # Determine "base" indices along the new "diagonal", and the factor # by which the "base" indices should be repeated to account for all @@ -2742,7 +2756,7 @@ class Tally(object): new_tally._std_dev[diag_indices, :, :] = self.std_dev # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_scores + stride = new_tally.num_nuclides * new_tally.num_score_bins for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins From 4a21ac8bf6adfa28897489093171eac79b7051cb Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Thu, 17 Dec 2015 18:20:57 -0500 Subject: [PATCH 05/17] fixed errors in reverting to num_score_bins --- openmc/mgxs/mgxs.py | 4 ++-- openmc/tallies.py | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/openmc/mgxs/mgxs.py b/openmc/mgxs/mgxs.py index 7f521a975c..7913747f98 100644 --- a/openmc/mgxs/mgxs.py +++ b/openmc/mgxs/mgxs.py @@ -755,7 +755,7 @@ class MGXS(object): # Reshape condensed data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) @@ -837,7 +837,7 @@ class MGXS(object): # Reshape averaged data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) diff --git a/openmc/tallies.py b/openmc/tallies.py index e3b9fb439f..4fa4f187dd 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1607,9 +1607,11 @@ class Tally(object): # Add scores to the new tally if score_product == 'entrywise': + new_tally.num_score_bins = self_copy.num_score_bins for self_score in self_copy.scores: new_tally.add_score(self_score) else: + new_tally.num_score_bins = self_copy.num_score_bins * other_copy.num_score_bins all_scores = [self_copy.scores, other_copy.scores] for self_score, other_score in itertools.product(*all_scores): new_score = CrossScore(self_score, other_score, binary_op) @@ -1749,6 +1751,7 @@ class Tally(object): self._mean = np.insert(self.mean, self.num_score_bins, 0, axis=2) self._std_dev = np.insert(self.std_dev, self.num_score_bins, 0, axis=2) self.add_score(score) + self.num_score_bins += 1 # Align other scores with self scores for i, score in enumerate(self.scores): @@ -2060,6 +2063,7 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations + new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2128,6 +2132,7 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations + new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2197,6 +2202,7 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations + new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2266,6 +2272,7 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations + new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2339,6 +2346,7 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations + new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2540,6 +2548,7 @@ class Tally(object): # Loop over indices in reverse to remove excluded scores for score_index in reversed(score_indices): new_tally.remove_score(self.scores[score_index]) + new_tally.num_score_bins -= 1 # NUCLIDES if nuclides: From 587f0e8f0e842089bfc727d06be2d9f1cc539dea Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Fri, 18 Dec 2015 13:59:16 -0800 Subject: [PATCH 06/17] extended tally arithmetic test to cover different hybrid tallies and fixed bug in tallies.py --- openmc/tallies.py | 2 +- tests/test_tally_arithmetic/geometry.xml | 8 - tests/test_tally_arithmetic/materials.xml | 11 - tests/test_tally_arithmetic/results_true.dat | 1582 ++++++++++++++++- tests/test_tally_arithmetic/settings.xml | 18 - tests/test_tally_arithmetic/tallies.xml | 15 - .../test_tally_arithmetic.py | 169 +- 7 files changed, 1691 insertions(+), 114 deletions(-) delete mode 100644 tests/test_tally_arithmetic/geometry.xml delete mode 100644 tests/test_tally_arithmetic/materials.xml delete mode 100644 tests/test_tally_arithmetic/settings.xml delete mode 100644 tests/test_tally_arithmetic/tallies.xml diff --git a/openmc/tallies.py b/openmc/tallies.py index 4fa4f187dd..73bf4c0dff 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1846,7 +1846,7 @@ class Tally(object): else: filter1_bins = [(filter1.get_bin(i)) for i in range(filter1.num_bins)] - if filter1.type == 'distribcell': + if filter2.type == 'distribcell': filter2_bins = np.arange(filter2.num_bins) else: filter2_bins = [filter2.get_bin(i) for i in range(filter2.num_bins)] diff --git a/tests/test_tally_arithmetic/geometry.xml b/tests/test_tally_arithmetic/geometry.xml deleted file mode 100644 index bc56030e18..0000000000 --- a/tests/test_tally_arithmetic/geometry.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/tests/test_tally_arithmetic/materials.xml b/tests/test_tally_arithmetic/materials.xml deleted file mode 100644 index e7947a92da..0000000000 --- a/tests/test_tally_arithmetic/materials.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/tests/test_tally_arithmetic/results_true.dat b/tests/test_tally_arithmetic/results_true.dat index 23dd38cfb6..cf1189261b 100644 --- a/tests/test_tally_arithmetic/results_true.dat +++ b/tests/test_tally_arithmetic/results_true.dat @@ -1,53 +1,1541 @@ Tally - ID = 10000 - Name = (tally 1 + tally 2) - Filters = - cell [1] - energy [ 0. 20.] - material [1] - Nuclides = (U-235 + U-235) (U-235 + Pu-239) (U-238 + U-235) (U-238 + Pu-239) - Scores = [(fission + fission), (fission + absorption), (nu-fission + fission), (nu-fission + absorption)] - Estimator = tracklength -[[[ 0.07510122 0.07839105 0.13713377 0.1404236 ] - [ 0.0916553 0.09321683 0.15368785 0.15524938] - [ 0.04596277 0.0492526 0.06126275 0.06455259] - [ 0.06251685 0.06407838 0.07781683 0.07937836]]]Tally - ID = 10001 - Name = (tally 1 - tally 2) - Filters = - cell [1] - energy [ 0. 20.] - material [1] - Nuclides = (U-235 - U-235) (U-235 - Pu-239) (U-238 - U-235) (U-238 - Pu-239) - Scores = [(fission - fission), (fission - absorption), (nu-fission - fission), (nu-fission - absorption)] - Estimator = tracklength -[[[ 0. -0.00328983 0.06203255 0.05874271] - [-0.01655408 -0.01811561 0.04547847 0.04391694] - [-0.02913845 -0.03242829 -0.01383847 -0.0171283 ] - [-0.04569253 -0.04725406 -0.03039255 -0.03195408]]]Tally - ID = 10002 + ID = 10004 Name = (tally 1 * tally 2) Filters = - cell [1] - energy [ 0. 20.] - material [1] - Nuclides = (U-235 * U-235) (U-235 * Pu-239) (U-238 * U-235) (U-238 * Pu-239) - Scores = [(fission * fission), (fission * absorption), (nu-fission * fission), (nu-fission * absorption)] + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + universe [1 3] + Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] Estimator = tracklength -[[[ 0.00141005 0.00153358 0.00373941 0.00406702] - [ 0.00203166 0.0020903 0.00538792 0.00554342] - [ 0.00031588 0.00034356 0.00089041 0.00096841] - [ 0.00045514 0.00046827 0.00128294 0.00131997]]]Tally - ID = 10003 - Name = (tally 1 / tally 2) +[[[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] + [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] + [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] + + [[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] + [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] + [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] + + [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] + [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] + [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + + [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] + [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] + [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + + [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] + [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] + [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] + + [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] + [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] + [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] + + [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] + [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] + [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] + + [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] + [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] + [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10005 + Name = (tally 1 * tally 2) Filters = - cell [1] - energy [ 0. 20.] - material [1] - Nuclides = (U-235 / U-235) (U-235 / Pu-239) (U-238 / U-235) (U-238 / Pu-239) - Scores = [(fission / fission), (fission / absorption), (nu-fission / fission), (nu-fission / absorption)] + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + universe [1 3] + Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] Estimator = tracklength -[[[ 1. 0.91944666 2.65197177 2.4383466 ] - [ 0.69403611 0.67456727 1.84056418 1.78893335] - [ 0.22402189 0.20597618 0.63147153 0.58060439] - [ 0.15547928 0.15111784 0.43826405 0.42597002]]] \ No newline at end of file +[[[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] + [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] + [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] + + [[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] + [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] + [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] + + [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] + [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] + [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + + [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] + [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] + [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + + [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] + [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] + [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] + + [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] + [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] + [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] + + [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] + [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] + [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] + + [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] + [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] + [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10006 + Name = (tally 1 * tally 2) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + universe [1 3] + Nuclides = U-235 Pu-239 U-238 + Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] + Estimator = tracklength +[[[ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10007 + Name = (tally 1 * tally 2) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + universe [1 3] + Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + Scores = [u'nu-fission', u'total', u'fission'] + Estimator = tracklength +[[[ 0.00000000e+00 2.18498184e-02 0.00000000e+00] + [ 0.00000000e+00 1.94933781e-02 0.00000000e+00] + [ 0.00000000e+00 1.39204488e-02 0.00000000e+00] + [ 0.00000000e+00 1.24191684e-02 0.00000000e+00]] + + [[ 0.00000000e+00 2.18498184e-02 0.00000000e+00] + [ 0.00000000e+00 1.94933781e-02 0.00000000e+00] + [ 0.00000000e+00 1.39204488e-02 0.00000000e+00] + [ 0.00000000e+00 1.24191684e-02 0.00000000e+00]] + + [[ 0.00000000e+00 4.92445903e-02 0.00000000e+00] + [ 0.00000000e+00 5.25884298e-03 0.00000000e+00] + [ 0.00000000e+00 4.08248924e-02 0.00000000e+00] + [ 0.00000000e+00 4.35970118e-03 0.00000000e+00]] + + [[ 0.00000000e+00 4.92445903e-02 0.00000000e+00] + [ 0.00000000e+00 5.25884298e-03 0.00000000e+00] + [ 0.00000000e+00 4.08248924e-02 0.00000000e+00] + [ 0.00000000e+00 4.35970118e-03 0.00000000e+00]] + + [[ 0.00000000e+00 3.12556757e-02 0.00000000e+00] + [ 0.00000000e+00 7.51255235e-04 0.00000000e+00] + [ 0.00000000e+00 9.24461087e-03 0.00000000e+00] + [ 0.00000000e+00 2.22201637e-04 0.00000000e+00]] + + [[ 0.00000000e+00 3.12556757e-02 0.00000000e+00] + [ 0.00000000e+00 7.51255235e-04 0.00000000e+00] + [ 0.00000000e+00 9.24461087e-03 0.00000000e+00] + [ 0.00000000e+00 2.22201637e-04 0.00000000e+00]] + + [[ 0.00000000e+00 2.86079380e-03 0.00000000e+00] + [ 0.00000000e+00 6.30394140e-05 0.00000000e+00] + [ 0.00000000e+00 8.36826356e-04 0.00000000e+00] + [ 0.00000000e+00 1.84400019e-05 0.00000000e+00]] + + [[ 0.00000000e+00 2.86079380e-03 0.00000000e+00] + [ 0.00000000e+00 6.30394140e-05 0.00000000e+00] + [ 0.00000000e+00 8.36826356e-04 0.00000000e+00] + [ 0.00000000e+00 1.84400019e-05 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10008 + Name = (tally 1 * tally 2) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + universe [1 3] + Nuclides = U-235 Pu-239 U-238 + Scores = [u'nu-fission', u'total', u'fission'] + Estimator = tracklength +[[[ 0.00000000e+00 1.94933781e-02 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.94933781e-02 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 5.25884298e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 5.25884298e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.51255235e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.51255235e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 6.30394140e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 6.30394140e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10009 + Name = (tally 1 * tally 3) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) + Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] + Estimator = tracklength +[[[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] + [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] + [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] + [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] + + [[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] + [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] + [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] + [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] + + [[ 3.23659105e-04 4.09115129e-04 1.61186098e-04 2.03744218e-04] + [ 2.11850877e-08 5.44379963e-03 1.05504266e-08 2.71107720e-03] + [ 1.97930180e-04 2.50189876e-04 1.02691143e-04 1.29804785e-04] + [ 1.29555083e-08 3.32909603e-03 6.72164275e-09 1.72721855e-03]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10010 + Name = (tally 1 * tally 3) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) + Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] + Estimator = tracklength +[[[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] + [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] + [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] + [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] + + [[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] + [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] + [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] + [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] + + [[ 3.23659105e-04 4.09115129e-04 1.61186098e-04 2.03744218e-04] + [ 2.11850877e-08 5.44379963e-03 1.05504266e-08 2.71107720e-03] + [ 1.97930180e-04 2.50189876e-04 1.02691143e-04 1.29804785e-04] + [ 1.29555083e-08 3.32909603e-03 6.72164275e-09 1.72721855e-03]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10011 + Name = (tally 1 * tally 3) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + Nuclides = U-235 Pu-239 O-16 + Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] + Estimator = tracklength +[[[ 0.00128736 0.00132667 0.00064112 0.0006607 ] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]] + + [[ 0.00128736 0.00132667 0.00064112 0.0006607 ] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]] + + [[ 0.00032366 0.00040912 0.00016119 0.00020374] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]] + + ..., + [[ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]] + + [[ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]] + + [[ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ] + [ 0. 0. 0. 0. ]]]Tally + ID = 10012 + Name = (tally 1 * tally 3) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) + Scores = [u'nu-fission', u'total', u'absorption'] + Estimator = tracklength +[[[ 0. 0.0006607 0. ] + [ 0. 0.00097636 0. ] + [ 0. 0.00042093 0. ] + [ 0. 0.00062203 0. ]] + + [[ 0. 0.0006607 0. ] + [ 0. 0.00097636 0. ] + [ 0. 0.00042093 0. ] + [ 0. 0.00062203 0. ]] + + [[ 0. 0.00020374 0. ] + [ 0. 0.00271108 0. ] + [ 0. 0.0001298 0. ] + [ 0. 0.00172722 0. ]] + + ..., + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]]]Tally + ID = 10013 + Name = (tally 1 * tally 3) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + Nuclides = U-235 Pu-239 O-16 + Scores = [u'nu-fission', u'total', u'absorption'] + Estimator = tracklength +[[[ 0. 0.0006607 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0.0006607 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0.00020374 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + ..., + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]] + + [[ 0. 0. 0. ] + [ 0. 0. 0. ] + [ 0. 0. 0. ]]]Tally + ID = 10014 + Name = (tally 1 * tally 4) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + mesh [1] + Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) + Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] + Estimator = tracklength +[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] + [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] + [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] + + [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] + [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] + [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] + + [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] + [ 2.65001925e-03 2.65034264e-03 1.31974122e-03 1.31990227e-03] + [ 2.44391002e-04 1.27575670e-03 1.26796183e-04 6.61894580e-04] + [ 1.62059025e-03 1.62078801e-03 8.40802879e-04 8.40905483e-04]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10015 + Name = (tally 1 * tally 4) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + mesh [1] + Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) + Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] + Estimator = tracklength +[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] + [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] + [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] + + [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] + [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] + [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] + + [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] + [ 2.65001925e-03 2.65034264e-03 1.31974122e-03 1.31990227e-03] + [ 2.44391002e-04 1.27575670e-03 1.26796183e-04 6.61894580e-04] + [ 1.62059025e-03 1.62078801e-03 8.40802879e-04 8.40905483e-04]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10016 + Name = (tally 1 * tally 4) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + mesh [1] + Nuclides = U-235 Pu-239 Zr-90 + Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] + Estimator = tracklength +[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.26649160e-04 9.61556092e-04 3.61879956e-04 4.78866412e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.26649160e-04 9.61556092e-04 3.61879956e-04 4.78866412e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.03428184e-04 2.48054431e-04 1.01309664e-04 1.23534068e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.03428184e-04 2.48054431e-04 1.01309664e-04 1.23534068e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.07797571e-04 5.88917101e-03 1.61337951e-04 4.57246338e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.07797571e-04 5.88917101e-03 1.61337951e-04 4.57246338e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 5.43202987e-04 2.90564462e-03 4.21753038e-04 2.25599726e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 5.43202987e-04 2.90564462e-03 4.21753038e-04 2.25599726e-03] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.56220267e-04 1.00221809e-03 5.87143670e-04 7.78141017e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.56220267e-04 1.00221809e-03 5.87143670e-04 7.78141017e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.48919397e-04 3.01542606e-04 1.93265712e-04 2.34123363e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.48919397e-04 3.01542606e-04 1.93265712e-04 2.34123363e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.15352081e-05 3.61534913e-04 2.54639331e-05 7.98087108e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.15352081e-05 3.61534913e-04 2.54639331e-05 7.98087108e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.43932622e-05 1.89185338e-04 7.59230111e-05 4.17626001e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 3.43932622e-05 1.89185338e-04 7.59230111e-05 4.17626001e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 5.23298543e-05 6.89978472e-05 1.15517978e-04 1.52312516e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 5.23298543e-05 6.89978472e-05 1.15517978e-04 1.52312516e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.66777184e-05 2.04329526e-05 3.68160075e-05 4.51056743e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.66777184e-05 2.04329526e-05 3.68160075e-05 4.51056743e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.13734333e-06 5.36870274e-05 4.68542556e-06 1.17691233e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 2.13734333e-06 5.36870274e-05 4.68542556e-06 1.17691233e-04] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.20926557e-06 4.05199536e-05 1.58039547e-05 8.88267335e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.20926557e-06 4.05199536e-05 1.58039547e-05 8.88267335e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.11679867e-05 1.50075971e-05 2.44821549e-05 3.28992436e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 1.11679867e-05 1.50075971e-05 2.44821549e-05 3.28992436e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 4.13069536e-06 5.01085896e-06 9.05519734e-06 1.09846679e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 4.13069536e-06 5.01085896e-06 9.05519734e-06 1.09846679e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10017 + Name = (tally 1 * tally 4) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + mesh [1] + Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) + Scores = [u'nu-fission', u'total', u'scatter'] + Estimator = tracklength +[[[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] + [ 0.00000000e+00 4.26021624e-04 0.00000000e+00] + [ 0.00000000e+00 1.07383071e-03 0.00000000e+00] + [ 0.00000000e+00 2.71417003e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] + [ 0.00000000e+00 4.26021624e-04 0.00000000e+00] + [ 0.00000000e+00 1.07383071e-03 0.00000000e+00] + [ 0.00000000e+00 2.71417003e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] + [ 0.00000000e+00 1.31990227e-03 0.00000000e+00] + [ 0.00000000e+00 6.61894580e-04 0.00000000e+00] + [ 0.00000000e+00 8.40905483e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] + [ 0.00000000e+00 1.31990227e-03 0.00000000e+00] + [ 0.00000000e+00 6.61894580e-04 0.00000000e+00] + [ 0.00000000e+00 8.40905483e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] + [ 0.00000000e+00 4.73832352e-03 0.00000000e+00] + [ 0.00000000e+00 3.05084248e-04 0.00000000e+00] + [ 0.00000000e+00 3.01877064e-03 0.00000000e+00]] + + [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] + [ 0.00000000e+00 4.73832352e-03 0.00000000e+00] + [ 0.00000000e+00 3.05084248e-04 0.00000000e+00] + [ 0.00000000e+00 3.01877064e-03 0.00000000e+00]] + + [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] + [ 0.00000000e+00 1.24325262e-03 0.00000000e+00] + [ 0.00000000e+00 7.87031563e-05 0.00000000e+00] + [ 0.00000000e+00 7.92072238e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] + [ 0.00000000e+00 1.24325262e-03 0.00000000e+00] + [ 0.00000000e+00 7.87031563e-05 0.00000000e+00] + [ 0.00000000e+00 7.92072238e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] + [ 0.00000000e+00 9.78864960e-04 0.00000000e+00] + [ 0.00000000e+00 3.79067678e-03 0.00000000e+00] + [ 0.00000000e+00 8.11501454e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] + [ 0.00000000e+00 9.78864960e-04 0.00000000e+00] + [ 0.00000000e+00 3.79067678e-03 0.00000000e+00] + [ 0.00000000e+00 8.11501454e-04 0.00000000e+00]] + + [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] + [ 0.00000000e+00 3.25856852e-03 0.00000000e+00] + [ 0.00000000e+00 1.87027335e-03 0.00000000e+00] + [ 0.00000000e+00 2.70142788e-03 0.00000000e+00]] + + [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] + [ 0.00000000e+00 3.25856852e-03 0.00000000e+00] + [ 0.00000000e+00 1.87027335e-03 0.00000000e+00] + [ 0.00000000e+00 2.70142788e-03 0.00000000e+00]] + + [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] + [ 0.00000000e+00 8.05177588e-03 0.00000000e+00] + [ 0.00000000e+00 6.45096711e-04 0.00000000e+00] + [ 0.00000000e+00 6.67510647e-03 0.00000000e+00]] + + [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] + [ 0.00000000e+00 8.05177588e-03 0.00000000e+00] + [ 0.00000000e+00 6.45096711e-04 0.00000000e+00] + [ 0.00000000e+00 6.67510647e-03 0.00000000e+00]] + + [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] + [ 0.00000000e+00 2.14338698e-03 0.00000000e+00] + [ 0.00000000e+00 1.94093626e-04 0.00000000e+00] + [ 0.00000000e+00 1.77691685e-03 0.00000000e+00]] + + [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] + [ 0.00000000e+00 2.14338698e-03 0.00000000e+00] + [ 0.00000000e+00 1.94093626e-04 0.00000000e+00] + [ 0.00000000e+00 1.77691685e-03 0.00000000e+00]] + + [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] + [ 0.00000000e+00 2.17118729e-04 0.00000000e+00] + [ 0.00000000e+00 2.36053279e-04 0.00000000e+00] + [ 0.00000000e+00 6.42180376e-05 0.00000000e+00]] + + [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] + [ 0.00000000e+00 2.17118729e-04 0.00000000e+00] + [ 0.00000000e+00 2.36053279e-04 0.00000000e+00] + [ 0.00000000e+00 6.42180376e-05 0.00000000e+00]] + + [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] + [ 0.00000000e+00 5.10491350e-04 0.00000000e+00] + [ 0.00000000e+00 1.23522841e-04 0.00000000e+00] + [ 0.00000000e+00 1.50989981e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] + [ 0.00000000e+00 5.10491350e-04 0.00000000e+00] + [ 0.00000000e+00 1.23522841e-04 0.00000000e+00] + [ 0.00000000e+00 1.50989981e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] + [ 0.00000000e+00 1.54884686e-03 0.00000000e+00] + [ 0.00000000e+00 4.50500561e-05 0.00000000e+00] + [ 0.00000000e+00 4.58108367e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] + [ 0.00000000e+00 1.54884686e-03 0.00000000e+00] + [ 0.00000000e+00 4.50500561e-05 0.00000000e+00] + [ 0.00000000e+00 4.58108367e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] + [ 0.00000000e+00 4.58602101e-04 0.00000000e+00] + [ 0.00000000e+00 1.33410780e-05 0.00000000e+00] + [ 0.00000000e+00 1.35642499e-04 0.00000000e+00]] + + [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] + [ 0.00000000e+00 4.58602101e-04 0.00000000e+00] + [ 0.00000000e+00 1.33410780e-05 0.00000000e+00] + [ 0.00000000e+00 1.35642499e-04 0.00000000e+00]] + + [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] + [ 0.00000000e+00 2.57333424e-05 0.00000000e+00] + [ 0.00000000e+00 3.44265026e-05 0.00000000e+00] + [ 0.00000000e+00 7.52739998e-06 0.00000000e+00]] + + [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] + [ 0.00000000e+00 2.57333424e-05 0.00000000e+00] + [ 0.00000000e+00 3.44265026e-05 0.00000000e+00] + [ 0.00000000e+00 7.52739998e-06 0.00000000e+00]] + + [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] + [ 0.00000000e+00 9.82261843e-05 0.00000000e+00] + [ 0.00000000e+00 2.59831910e-05 0.00000000e+00] + [ 0.00000000e+00 2.87326755e-05 0.00000000e+00]] + + [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] + [ 0.00000000e+00 9.82261843e-05 0.00000000e+00] + [ 0.00000000e+00 2.59831910e-05 0.00000000e+00] + [ 0.00000000e+00 2.87326755e-05 0.00000000e+00]] + + [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] + [ 0.00000000e+00 3.04106557e-04 0.00000000e+00] + [ 0.00000000e+00 9.62353672e-06 0.00000000e+00] + [ 0.00000000e+00 8.89558632e-05 0.00000000e+00]] + + [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] + [ 0.00000000e+00 3.04106557e-04 0.00000000e+00] + [ 0.00000000e+00 9.62353672e-06 0.00000000e+00] + [ 0.00000000e+00 8.89558632e-05 0.00000000e+00]] + + [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] + [ 0.00000000e+00 9.94842161e-05 0.00000000e+00] + [ 0.00000000e+00 3.21318497e-06 0.00000000e+00] + [ 0.00000000e+00 2.91006692e-05 0.00000000e+00]] + + [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] + [ 0.00000000e+00 9.94842161e-05 0.00000000e+00] + [ 0.00000000e+00 3.21318497e-06 0.00000000e+00] + [ 0.00000000e+00 2.91006692e-05 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10018 + Name = (tally 1 * tally 4) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + mesh [1] + Nuclides = U-235 Pu-239 Zr-90 + Scores = [u'nu-fission', u'total', u'scatter'] + Estimator = tracklength +[[[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]] \ No newline at end of file diff --git a/tests/test_tally_arithmetic/settings.xml b/tests/test_tally_arithmetic/settings.xml deleted file mode 100644 index a69dde686a..0000000000 --- a/tests/test_tally_arithmetic/settings.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - 10 - 5 - 1000 - - - - - -4 -4 -4 4 4 4 - - - - - - diff --git a/tests/test_tally_arithmetic/tallies.xml b/tests/test_tally_arithmetic/tallies.xml deleted file mode 100644 index 2a2eb48361..0000000000 --- a/tests/test_tally_arithmetic/tallies.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - U-235 U-238 - fission nu-fission - - - - - U-235 Pu-239 - fission absorption - - diff --git a/tests/test_tally_arithmetic/test_tally_arithmetic.py b/tests/test_tally_arithmetic/test_tally_arithmetic.py index 2f49061f96..70439b54f9 100644 --- a/tests/test_tally_arithmetic/test_tally_arithmetic.py +++ b/tests/test_tally_arithmetic/test_tally_arithmetic.py @@ -5,11 +5,87 @@ import sys import glob import hashlib sys.path.insert(0, os.pardir) -from testing_harness import TestHarness +from testing_harness import PyAPITestHarness import openmc -class TallyArithmeticTestHarness(TestHarness): +class TallyArithmeticTestHarness(PyAPITestHarness): + def _build_inputs(self): + + # The summary.h5 file needs to be created to read in the tallies + self._input_set.settings.output = {'summary': True} + + # Initialize the tallies file + tallies_file = openmc.TalliesFile() + + # Initialize the nuclides + u235 = openmc.Nuclide('U-235') + u238 = openmc.Nuclide('U-238') + pu239 = openmc.Nuclide('Pu-239') + zr90 = openmc.Nuclide('Zr-90') + o16 = openmc.Nuclide('O-16') + + # Initialize Mesh + mesh = openmc.Mesh(mesh_id=1) + mesh.type = 'regular' + mesh.dimension = [2, 2, 2] + mesh.lower_left = [-160.0, -160.0, -183.0] + mesh.upper_right = [160.0, 160.0, 183.0] + + # Initialize the filters + energy_filter = openmc.Filter(type='energy', bins=(0.0, 0.253e-6, + 1.0e-3, 1.0, 20.0)) + material_filter = openmc.Filter(type='material', bins=(1, 3)) + universe_filter = openmc.Filter(type='universe', bins=(1, 3)) + distrib_filter = openmc.Filter(type='distribcell', bins=(60)) + mesh_filter = openmc.Filter(type='mesh') + mesh_filter.mesh = mesh + + # Initialized the tallies + tally = openmc.Tally(name='tally 1') + tally.add_filter(material_filter) + tally.add_filter(energy_filter) + tally.add_score('nu-fission') + tally.add_score('total') + tally.add_nuclide(u235) + tally.add_nuclide(pu239) + tallies_file.add_tally(tally) + + # Instantiate reaction rate Tally in fuel + tally = openmc.Tally(name='tally 2') + tally.add_filter(universe_filter) + tally.add_filter(energy_filter) + tally.add_score('total') + tally.add_score('fission') + tally.add_nuclide(u238) + tally.add_nuclide(u235) + tallies_file.add_tally(tally) + + # Instantiate reaction rate Tally in moderator + tally = openmc.Tally(name='tally 3') + tally.add_filter(distrib_filter) + tally.add_filter(energy_filter) + tally.add_score('absorption') + tally.add_score('total') + tally.add_nuclide(u235) + tally.add_nuclide(o16) + tallies_file.add_tally(tally) + + # Instantiate reaction rate Tally in moderator + tally = openmc.Tally(name='tally 4') + tally.add_filter(mesh_filter) + tally.add_filter(energy_filter) + tally.add_score('scatter') + tally.add_score('total') + tally.add_nuclide(u235) + tally.add_nuclide(zr90) + tallies_file.add_tally(tally) + tallies_file.add_mesh(mesh) + + # Export tallies to file + self._input_set.tallies = tallies_file + super(TallyArithmeticTestHarness, self)._build_inputs() + def _get_results(self, hash_output=False): """Digest info in the statepoint and return as a string.""" @@ -22,27 +98,87 @@ class TallyArithmeticTestHarness(TestHarness): su = openmc.Summary(summary) sp.link_with_summary(su) + print 'reading in tallies' + # Load the tallies tally_1 = sp.get_tally(name='tally 1') tally_2 = sp.get_tally(name='tally 2') + tally_3 = sp.get_tally(name='tally 3') + tally_4 = sp.get_tally(name='tally 4') # Perform all the tally arithmetic operations and output results outstr = '' - tally_3 = tally_1 + tally_2 - outstr += repr(tally_3) - outstr += str(tally_3.mean) + tally_5 = tally_1 * tally_2 + outstr += repr(tally_5) + outstr += str(tally_5.mean) - tally_3 = tally_1 - tally_2 - outstr += repr(tally_3) - outstr += str(tally_3.mean) + tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) - tally_3 = tally_1 * tally_2 - outstr += repr(tally_3) - outstr += str(tally_3.mean) + tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) - tally_3 = tally_1 / tally_2 - outstr += repr(tally_3) - outstr += str(tally_3.mean) + tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1 * tally_3 + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'tensor', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'entrywise', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'tensor', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'entrywise', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1 * tally_4 + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'tensor', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'entrywise', + 'tensor') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'tensor', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) + + tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'entrywise', + 'entrywise') + outstr += repr(tally_5) + outstr += str(tally_5.mean) print(outstr) @@ -54,6 +190,11 @@ class TallyArithmeticTestHarness(TestHarness): return outstr + def _cleanup(self): + super(TallyArithmeticTestHarness, self)._cleanup() + f = os.path.join(os.getcwd(), 'tallies.xml') + if os.path.exists(f): os.remove(f) + if __name__ == '__main__': harness = TallyArithmeticTestHarness('statepoint.10.h5', True) harness.main() From 36ca4c9ee8a9073fa311cd0428ab61698ec6e405 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Fri, 18 Dec 2015 14:04:15 -0800 Subject: [PATCH 07/17] added tally arithmetic test inputs_true.dat --- tests/test_tally_arithmetic/inputs_true.dat | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/test_tally_arithmetic/inputs_true.dat diff --git a/tests/test_tally_arithmetic/inputs_true.dat b/tests/test_tally_arithmetic/inputs_true.dat new file mode 100644 index 0000000000..64d6dcaa94 --- /dev/null +++ b/tests/test_tally_arithmetic/inputs_true.dat @@ -0,0 +1 @@ +95bc6a1a1cca9965ff55251a8de7b2e31ae6a1dc68308554b3cac6ab83673408b10acdb7131bce73516ec0aee6f00efda49afe3038e79df8cf4c854234a6d383 \ No newline at end of file From 911c88ff97d17a056dde134e0a66c51c63c63e18 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Sat, 19 Dec 2015 09:11:40 -0800 Subject: [PATCH 08/17] condensed the tally arithmetic test to reduce run time --- tests/test_tally_arithmetic/inputs_true.dat | 2 +- tests/test_tally_arithmetic/results_true.dat | 1609 ++--------------- .../test_tally_arithmetic.py | 108 +- 3 files changed, 149 insertions(+), 1570 deletions(-) diff --git a/tests/test_tally_arithmetic/inputs_true.dat b/tests/test_tally_arithmetic/inputs_true.dat index 64d6dcaa94..8e8838131a 100644 --- a/tests/test_tally_arithmetic/inputs_true.dat +++ b/tests/test_tally_arithmetic/inputs_true.dat @@ -1 +1 @@ -95bc6a1a1cca9965ff55251a8de7b2e31ae6a1dc68308554b3cac6ab83673408b10acdb7131bce73516ec0aee6f00efda49afe3038e79df8cf4c854234a6d383 \ No newline at end of file +df6318b76cd37a29ef9dd09da48a70c191ed07c1a2ceb75eb502ab35086c31250872406f22c2587edfcee16f67dd95c81db012ccd728710ed2509084438aea56 \ No newline at end of file diff --git a/tests/test_tally_arithmetic/results_true.dat b/tests/test_tally_arithmetic/results_true.dat index cf1189261b..2878cbf4b7 100644 --- a/tests/test_tally_arithmetic/results_true.dat +++ b/tests/test_tally_arithmetic/results_true.dat @@ -1,91 +1,119 @@ Tally + ID = 10002 + Name = (tally 1 * tally 2) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + mesh [1] + Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] + Estimator = tracklength +[[[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + [[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + [[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + ID = 10003 + Name = (tally 1 * tally 2) + Filters = + material [1 3] + energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 + 2.00000000e+01] + distribcell [60] + mesh [1] + Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] + Estimator = tracklength +[[[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + [[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + [[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] + [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally ID = 10004 Name = (tally 1 * tally 2) Filters = material [1 3] energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 2.00000000e+01] - universe [1 3] - Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) + distribcell [60] + mesh [1] + Nuclides = U-235 Pu-239 U-238 Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] Estimator = tracklength -[[[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] - [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] - [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] - - [[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] - [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] - [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] - - [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] - [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] - [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] - - [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] - [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] - [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] - - [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] - [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] - [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] - - [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] - [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] - [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] - - [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] - [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] - [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] - - [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] - [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] - [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] +[[[ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + [[ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] + + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally ID = 10005 @@ -94,1440 +122,65 @@ Tally material [1 3] energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 2.00000000e+01] - universe [1 3] + distribcell [60] + mesh [1] Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) - Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] + Scores = [u'nu-fission', u'total', u'fission'] Estimator = tracklength -[[[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] - [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] - [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] +[[[ 0.00000000e+00 4.41507090e-05 0.00000000e+00] + [ 0.00000000e+00 3.61847984e-05 0.00000000e+00] + [ 0.00000000e+00 2.35903380e-05 0.00000000e+00] + [ 0.00000000e+00 1.93340411e-05 0.00000000e+00]] - [[ 4.38740856e-02 4.44445557e-08 2.18498184e-02 2.21339193e-08] - [ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 2.68307165e-02 2.71795812e-08 1.39204488e-02 1.41014486e-08] - [ 2.39371006e-02 1.97402734e-02 1.24191684e-02 1.02417491e-02]] + [[ 0.00000000e+00 4.41507090e-05 0.00000000e+00] + [ 0.00000000e+00 3.61847984e-05 0.00000000e+00] + [ 0.00000000e+00 2.35903380e-05 0.00000000e+00] + [ 0.00000000e+00 1.93340411e-05 0.00000000e+00]] - [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] - [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] - [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + [[ 0.00000000e+00 4.41507090e-05 0.00000000e+00] + [ 0.00000000e+00 3.61847984e-05 0.00000000e+00] + [ 0.00000000e+00 2.35903380e-05 0.00000000e+00] + [ 0.00000000e+00 1.93340411e-05 0.00000000e+00]] - [[ 6.34252895e-02 9.32564450e-07 4.92445903e-02 7.24060618e-07] - [ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 6.58867184e-02 9.68755709e-07 4.08248924e-02 6.00262822e-07] - [ 7.03606029e-03 3.71461759e-03 4.35970118e-03 2.30166059e-03]] + ..., + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] - [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] - [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 1.41588780e-02 1.27076668e-06 3.12556757e-02 2.80521318e-06] - [ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 4.32998473e-03 3.88618386e-07 9.24461087e-03 8.29708643e-07] - [ 1.04074656e-04 1.92116360e-05 2.22201637e-04 4.10172576e-05]] - - [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] - [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] - [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] - - [[ 1.30500388e-03 7.58050822e-05 2.86079380e-03 1.66177827e-04] - [ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 6.91597829e-04 4.01735436e-05 8.36826356e-04 4.86095802e-05] - [ 1.52397988e-05 2.57166674e-06 1.84400019e-05 3.11169067e-06]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally + [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally ID = 10006 Name = (tally 1 * tally 2) Filters = material [1 3] energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 2.00000000e+01] - universe [1 3] - Nuclides = U-235 Pu-239 U-238 - Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] - Estimator = tracklength -[[[ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.91423913e-02 3.22796615e-02 1.94933781e-02 1.60756567e-02] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 6.77320364e-03 3.57584505e-03 5.25884298e-03 2.77635350e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.40319989e-04 6.28212863e-05 7.51255235e-04 1.38677779e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.87565919e-05 4.85258186e-06 6.30394140e-05 1.06376972e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10007 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - universe [1 3] - Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) - Scores = [u'nu-fission', u'total', u'fission'] - Estimator = tracklength -[[[ 0.00000000e+00 2.18498184e-02 0.00000000e+00] - [ 0.00000000e+00 1.94933781e-02 0.00000000e+00] - [ 0.00000000e+00 1.39204488e-02 0.00000000e+00] - [ 0.00000000e+00 1.24191684e-02 0.00000000e+00]] - - [[ 0.00000000e+00 2.18498184e-02 0.00000000e+00] - [ 0.00000000e+00 1.94933781e-02 0.00000000e+00] - [ 0.00000000e+00 1.39204488e-02 0.00000000e+00] - [ 0.00000000e+00 1.24191684e-02 0.00000000e+00]] - - [[ 0.00000000e+00 4.92445903e-02 0.00000000e+00] - [ 0.00000000e+00 5.25884298e-03 0.00000000e+00] - [ 0.00000000e+00 4.08248924e-02 0.00000000e+00] - [ 0.00000000e+00 4.35970118e-03 0.00000000e+00]] - - [[ 0.00000000e+00 4.92445903e-02 0.00000000e+00] - [ 0.00000000e+00 5.25884298e-03 0.00000000e+00] - [ 0.00000000e+00 4.08248924e-02 0.00000000e+00] - [ 0.00000000e+00 4.35970118e-03 0.00000000e+00]] - - [[ 0.00000000e+00 3.12556757e-02 0.00000000e+00] - [ 0.00000000e+00 7.51255235e-04 0.00000000e+00] - [ 0.00000000e+00 9.24461087e-03 0.00000000e+00] - [ 0.00000000e+00 2.22201637e-04 0.00000000e+00]] - - [[ 0.00000000e+00 3.12556757e-02 0.00000000e+00] - [ 0.00000000e+00 7.51255235e-04 0.00000000e+00] - [ 0.00000000e+00 9.24461087e-03 0.00000000e+00] - [ 0.00000000e+00 2.22201637e-04 0.00000000e+00]] - - [[ 0.00000000e+00 2.86079380e-03 0.00000000e+00] - [ 0.00000000e+00 6.30394140e-05 0.00000000e+00] - [ 0.00000000e+00 8.36826356e-04 0.00000000e+00] - [ 0.00000000e+00 1.84400019e-05 0.00000000e+00]] - - [[ 0.00000000e+00 2.86079380e-03 0.00000000e+00] - [ 0.00000000e+00 6.30394140e-05 0.00000000e+00] - [ 0.00000000e+00 8.36826356e-04 0.00000000e+00] - [ 0.00000000e+00 1.84400019e-05 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10008 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - universe [1 3] + distribcell [60] + mesh [1] Nuclides = U-235 Pu-239 U-238 Scores = [u'nu-fission', u'total', u'fission'] Estimator = tracklength -[[[ 0.00000000e+00 1.94933781e-02 0.00000000e+00] +[[[ 0.00000000e+00 3.61847984e-05 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 0.00000000e+00 1.94933781e-02 0.00000000e+00] + [[ 0.00000000e+00 3.61847984e-05 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 0.00000000e+00 5.25884298e-03 0.00000000e+00] + [[ 0.00000000e+00 3.61847984e-05 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 0.00000000e+00 5.25884298e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.51255235e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.51255235e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 6.30394140e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 6.30394140e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10009 - Name = (tally 1 * tally 3) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) - Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] - Estimator = tracklength -[[[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] - [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] - [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] - [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] - - [[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] - [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] - [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] - [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] - - [[ 3.23659105e-04 4.09115129e-04 1.61186098e-04 2.03744218e-04] - [ 2.11850877e-08 5.44379963e-03 1.05504266e-08 2.71107720e-03] - [ 1.97930180e-04 2.50189876e-04 1.02691143e-04 1.29804785e-04] - [ 1.29555083e-08 3.32909603e-03 6.72164275e-09 1.72721855e-03]] - ..., - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10010 - Name = (tally 1 * tally 3) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) - Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] - Estimator = tracklength -[[[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] - [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] - [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] - [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] - - [[ 1.28735734e-03 1.32667348e-03 6.41119323e-04 6.60699229e-04] - [ 7.64287878e-08 1.96051024e-03 3.80624487e-08 9.76357502e-04] - [ 7.87269280e-04 8.11312633e-04 4.08455054e-04 4.20929349e-04] - [ 4.67391880e-08 1.19892856e-03 2.42494633e-08 6.22034217e-04]] - - [[ 3.23659105e-04 4.09115129e-04 1.61186098e-04 2.03744218e-04] - [ 2.11850877e-08 5.44379963e-03 1.05504266e-08 2.71107720e-03] - [ 1.97930180e-04 2.50189876e-04 1.02691143e-04 1.29804785e-04] - [ 1.29555083e-08 3.32909603e-03 6.72164275e-09 1.72721855e-03]] - - ..., - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10011 - Name = (tally 1 * tally 3) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - Nuclides = U-235 Pu-239 O-16 - Scores = [(nu-fission * absorption), (nu-fission * total), (total * absorption), (total * total)] - Estimator = tracklength -[[[ 0.00128736 0.00132667 0.00064112 0.0006607 ] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]] - - [[ 0.00128736 0.00132667 0.00064112 0.0006607 ] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]] - - [[ 0.00032366 0.00040912 0.00016119 0.00020374] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]] - - ..., - [[ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]] - - [[ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]] - - [[ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ] - [ 0. 0. 0. 0. ]]]Tally - ID = 10012 - Name = (tally 1 * tally 3) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - Nuclides = (U-235 * U-235) (U-235 * O-16) (Pu-239 * U-235) (Pu-239 * O-16) - Scores = [u'nu-fission', u'total', u'absorption'] - Estimator = tracklength -[[[ 0. 0.0006607 0. ] - [ 0. 0.00097636 0. ] - [ 0. 0.00042093 0. ] - [ 0. 0.00062203 0. ]] - - [[ 0. 0.0006607 0. ] - [ 0. 0.00097636 0. ] - [ 0. 0.00042093 0. ] - [ 0. 0.00062203 0. ]] - - [[ 0. 0.00020374 0. ] - [ 0. 0.00271108 0. ] - [ 0. 0.0001298 0. ] - [ 0. 0.00172722 0. ]] - - ..., - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]]]Tally - ID = 10013 - Name = (tally 1 * tally 3) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - Nuclides = U-235 Pu-239 O-16 - Scores = [u'nu-fission', u'total', u'absorption'] - Estimator = tracklength -[[[ 0. 0.0006607 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0.0006607 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0.00020374 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - ..., - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]] - - [[ 0. 0. 0. ] - [ 0. 0. 0. ] - [ 0. 0. 0. ]]]Tally - ID = 10014 - Name = (tally 1 * tally 4) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - mesh [1] - Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) - Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] - Estimator = tracklength -[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] - [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] - [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] - - [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] - [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] - [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] - - [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] - [ 2.65001925e-03 2.65034264e-03 1.31974122e-03 1.31990227e-03] - [ 2.44391002e-04 1.27575670e-03 1.26796183e-04 6.61894580e-04] - [ 1.62059025e-03 1.62078801e-03 8.40802879e-04 8.40905483e-04]] - - ..., - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10015 - Name = (tally 1 * tally 4) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - mesh [1] - Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) - Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] - Estimator = tracklength -[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] - [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] - [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] - - [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 8.54338123e-04 8.55444603e-04 4.25470584e-04 4.26021624e-04] - [ 7.66911978e-05 2.06973551e-03 3.97893175e-05 1.07383071e-03] - [ 5.22461121e-04 5.23137776e-04 2.71065937e-04 2.71417003e-04]] - - [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] - [ 2.65001925e-03 2.65034264e-03 1.31974122e-03 1.31990227e-03] - [ 2.44391002e-04 1.27575670e-03 1.26796183e-04 6.61894580e-04] - [ 1.62059025e-03 1.62078801e-03 8.40802879e-04 8.40905483e-04]] - - ..., - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10016 - Name = (tally 1 * tally 4) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - mesh [1] - Nuclides = U-235 Pu-239 Zr-90 - Scores = [(nu-fission * scatter), (nu-fission * total), (total * scatter), (total * total)] - Estimator = tracklength -[[[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.25406870e-04 3.38446993e-03 6.24541184e-05 1.68550643e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.99632703e-04 2.08614103e-03 1.99021857e-04 1.03892314e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.26649160e-04 9.61556092e-04 3.61879956e-04 4.78866412e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.26649160e-04 9.61556092e-04 3.61879956e-04 4.78866412e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.03428184e-04 2.48054431e-04 1.01309664e-04 1.23534068e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.03428184e-04 2.48054431e-04 1.01309664e-04 1.23534068e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.07797571e-04 5.88917101e-03 1.61337951e-04 4.57246338e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.07797571e-04 5.88917101e-03 1.61337951e-04 4.57246338e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 5.43202987e-04 2.90564462e-03 4.21753038e-04 2.25599726e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 5.43202987e-04 2.90564462e-03 4.21753038e-04 2.25599726e-03] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.56220267e-04 1.00221809e-03 5.87143670e-04 7.78141017e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.56220267e-04 1.00221809e-03 5.87143670e-04 7.78141017e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.48919397e-04 3.01542606e-04 1.93265712e-04 2.34123363e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.48919397e-04 3.01542606e-04 1.93265712e-04 2.34123363e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.15352081e-05 3.61534913e-04 2.54639331e-05 7.98087108e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.15352081e-05 3.61534913e-04 2.54639331e-05 7.98087108e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.43932622e-05 1.89185338e-04 7.59230111e-05 4.17626001e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 3.43932622e-05 1.89185338e-04 7.59230111e-05 4.17626001e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 5.23298543e-05 6.89978472e-05 1.15517978e-04 1.52312516e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 5.23298543e-05 6.89978472e-05 1.15517978e-04 1.52312516e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.66777184e-05 2.04329526e-05 3.68160075e-05 4.51056743e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.66777184e-05 2.04329526e-05 3.68160075e-05 4.51056743e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.13734333e-06 5.36870274e-05 4.68542556e-06 1.17691233e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 2.13734333e-06 5.36870274e-05 4.68542556e-06 1.17691233e-04] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.20926557e-06 4.05199536e-05 1.58039547e-05 8.88267335e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 7.20926557e-06 4.05199536e-05 1.58039547e-05 8.88267335e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.11679867e-05 1.50075971e-05 2.44821549e-05 3.28992436e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 1.11679867e-05 1.50075971e-05 2.44821549e-05 3.28992436e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 4.13069536e-06 5.01085896e-06 9.05519734e-06 1.09846679e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 4.13069536e-06 5.01085896e-06 9.05519734e-06 1.09846679e-05] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10017 - Name = (tally 1 * tally 4) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - mesh [1] - Nuclides = (U-235 * U-235) (U-235 * Zr-90) (Pu-239 * U-235) (Pu-239 * Zr-90) - Scores = [u'nu-fission', u'total', u'scatter'] - Estimator = tracklength -[[[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] - [ 0.00000000e+00 4.26021624e-04 0.00000000e+00] - [ 0.00000000e+00 1.07383071e-03 0.00000000e+00] - [ 0.00000000e+00 2.71417003e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] - [ 0.00000000e+00 4.26021624e-04 0.00000000e+00] - [ 0.00000000e+00 1.07383071e-03 0.00000000e+00] - [ 0.00000000e+00 2.71417003e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] - [ 0.00000000e+00 1.31990227e-03 0.00000000e+00] - [ 0.00000000e+00 6.61894580e-04 0.00000000e+00] - [ 0.00000000e+00 8.40905483e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] - [ 0.00000000e+00 1.31990227e-03 0.00000000e+00] - [ 0.00000000e+00 6.61894580e-04 0.00000000e+00] - [ 0.00000000e+00 8.40905483e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] - [ 0.00000000e+00 4.73832352e-03 0.00000000e+00] - [ 0.00000000e+00 3.05084248e-04 0.00000000e+00] - [ 0.00000000e+00 3.01877064e-03 0.00000000e+00]] - - [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] - [ 0.00000000e+00 4.73832352e-03 0.00000000e+00] - [ 0.00000000e+00 3.05084248e-04 0.00000000e+00] - [ 0.00000000e+00 3.01877064e-03 0.00000000e+00]] - - [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] - [ 0.00000000e+00 1.24325262e-03 0.00000000e+00] - [ 0.00000000e+00 7.87031563e-05 0.00000000e+00] - [ 0.00000000e+00 7.92072238e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] - [ 0.00000000e+00 1.24325262e-03 0.00000000e+00] - [ 0.00000000e+00 7.87031563e-05 0.00000000e+00] - [ 0.00000000e+00 7.92072238e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] - [ 0.00000000e+00 9.78864960e-04 0.00000000e+00] - [ 0.00000000e+00 3.79067678e-03 0.00000000e+00] - [ 0.00000000e+00 8.11501454e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] - [ 0.00000000e+00 9.78864960e-04 0.00000000e+00] - [ 0.00000000e+00 3.79067678e-03 0.00000000e+00] - [ 0.00000000e+00 8.11501454e-04 0.00000000e+00]] - - [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] - [ 0.00000000e+00 3.25856852e-03 0.00000000e+00] - [ 0.00000000e+00 1.87027335e-03 0.00000000e+00] - [ 0.00000000e+00 2.70142788e-03 0.00000000e+00]] - - [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] - [ 0.00000000e+00 3.25856852e-03 0.00000000e+00] - [ 0.00000000e+00 1.87027335e-03 0.00000000e+00] - [ 0.00000000e+00 2.70142788e-03 0.00000000e+00]] - - [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] - [ 0.00000000e+00 8.05177588e-03 0.00000000e+00] - [ 0.00000000e+00 6.45096711e-04 0.00000000e+00] - [ 0.00000000e+00 6.67510647e-03 0.00000000e+00]] - - [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] - [ 0.00000000e+00 8.05177588e-03 0.00000000e+00] - [ 0.00000000e+00 6.45096711e-04 0.00000000e+00] - [ 0.00000000e+00 6.67510647e-03 0.00000000e+00]] - - [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] - [ 0.00000000e+00 2.14338698e-03 0.00000000e+00] - [ 0.00000000e+00 1.94093626e-04 0.00000000e+00] - [ 0.00000000e+00 1.77691685e-03 0.00000000e+00]] - - [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] - [ 0.00000000e+00 2.14338698e-03 0.00000000e+00] - [ 0.00000000e+00 1.94093626e-04 0.00000000e+00] - [ 0.00000000e+00 1.77691685e-03 0.00000000e+00]] - - [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] - [ 0.00000000e+00 2.17118729e-04 0.00000000e+00] - [ 0.00000000e+00 2.36053279e-04 0.00000000e+00] - [ 0.00000000e+00 6.42180376e-05 0.00000000e+00]] - - [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] - [ 0.00000000e+00 2.17118729e-04 0.00000000e+00] - [ 0.00000000e+00 2.36053279e-04 0.00000000e+00] - [ 0.00000000e+00 6.42180376e-05 0.00000000e+00]] - - [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] - [ 0.00000000e+00 5.10491350e-04 0.00000000e+00] - [ 0.00000000e+00 1.23522841e-04 0.00000000e+00] - [ 0.00000000e+00 1.50989981e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] - [ 0.00000000e+00 5.10491350e-04 0.00000000e+00] - [ 0.00000000e+00 1.23522841e-04 0.00000000e+00] - [ 0.00000000e+00 1.50989981e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] - [ 0.00000000e+00 1.54884686e-03 0.00000000e+00] - [ 0.00000000e+00 4.50500561e-05 0.00000000e+00] - [ 0.00000000e+00 4.58108367e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] - [ 0.00000000e+00 1.54884686e-03 0.00000000e+00] - [ 0.00000000e+00 4.50500561e-05 0.00000000e+00] - [ 0.00000000e+00 4.58108367e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] - [ 0.00000000e+00 4.58602101e-04 0.00000000e+00] - [ 0.00000000e+00 1.33410780e-05 0.00000000e+00] - [ 0.00000000e+00 1.35642499e-04 0.00000000e+00]] - - [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] - [ 0.00000000e+00 4.58602101e-04 0.00000000e+00] - [ 0.00000000e+00 1.33410780e-05 0.00000000e+00] - [ 0.00000000e+00 1.35642499e-04 0.00000000e+00]] - - [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] - [ 0.00000000e+00 2.57333424e-05 0.00000000e+00] - [ 0.00000000e+00 3.44265026e-05 0.00000000e+00] - [ 0.00000000e+00 7.52739998e-06 0.00000000e+00]] - - [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] - [ 0.00000000e+00 2.57333424e-05 0.00000000e+00] - [ 0.00000000e+00 3.44265026e-05 0.00000000e+00] - [ 0.00000000e+00 7.52739998e-06 0.00000000e+00]] - - [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] - [ 0.00000000e+00 9.82261843e-05 0.00000000e+00] - [ 0.00000000e+00 2.59831910e-05 0.00000000e+00] - [ 0.00000000e+00 2.87326755e-05 0.00000000e+00]] - - [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] - [ 0.00000000e+00 9.82261843e-05 0.00000000e+00] - [ 0.00000000e+00 2.59831910e-05 0.00000000e+00] - [ 0.00000000e+00 2.87326755e-05 0.00000000e+00]] - - [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] - [ 0.00000000e+00 3.04106557e-04 0.00000000e+00] - [ 0.00000000e+00 9.62353672e-06 0.00000000e+00] - [ 0.00000000e+00 8.89558632e-05 0.00000000e+00]] - - [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] - [ 0.00000000e+00 3.04106557e-04 0.00000000e+00] - [ 0.00000000e+00 9.62353672e-06 0.00000000e+00] - [ 0.00000000e+00 8.89558632e-05 0.00000000e+00]] - - [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] - [ 0.00000000e+00 9.94842161e-05 0.00000000e+00] - [ 0.00000000e+00 3.21318497e-06 0.00000000e+00] - [ 0.00000000e+00 2.91006692e-05 0.00000000e+00]] - - [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] - [ 0.00000000e+00 9.94842161e-05 0.00000000e+00] - [ 0.00000000e+00 3.21318497e-06 0.00000000e+00] - [ 0.00000000e+00 2.91006692e-05 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10018 - Name = (tally 1 * tally 4) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - mesh [1] - Nuclides = U-235 Pu-239 Zr-90 - Scores = [u'nu-fission', u'total', u'scatter'] - Estimator = tracklength -[[[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.68550643e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.03892314e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.78866412e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.23534068e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.57246338e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 2.25599726e-03 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.78141017e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 2.34123363e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 7.98087108e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.17626001e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.52312516e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 4.51056743e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.17691233e-04 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 8.88267335e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 3.28992436e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 1.09846679e-05 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] - [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] diff --git a/tests/test_tally_arithmetic/test_tally_arithmetic.py b/tests/test_tally_arithmetic/test_tally_arithmetic.py index 70439b54f9..5517cbcf75 100644 --- a/tests/test_tally_arithmetic/test_tally_arithmetic.py +++ b/tests/test_tally_arithmetic/test_tally_arithmetic.py @@ -22,8 +22,6 @@ class TallyArithmeticTestHarness(PyAPITestHarness): u235 = openmc.Nuclide('U-235') u238 = openmc.Nuclide('U-238') pu239 = openmc.Nuclide('Pu-239') - zr90 = openmc.Nuclide('Zr-90') - o16 = openmc.Nuclide('O-16') # Initialize Mesh mesh = openmc.Mesh(mesh_id=1) @@ -36,7 +34,6 @@ class TallyArithmeticTestHarness(PyAPITestHarness): energy_filter = openmc.Filter(type='energy', bins=(0.0, 0.253e-6, 1.0e-3, 1.0, 20.0)) material_filter = openmc.Filter(type='material', bins=(1, 3)) - universe_filter = openmc.Filter(type='universe', bins=(1, 3)) distrib_filter = openmc.Filter(type='distribcell', bins=(60)) mesh_filter = openmc.Filter(type='mesh') mesh_filter.mesh = mesh @@ -45,6 +42,7 @@ class TallyArithmeticTestHarness(PyAPITestHarness): tally = openmc.Tally(name='tally 1') tally.add_filter(material_filter) tally.add_filter(energy_filter) + tally.add_filter(distrib_filter) tally.add_score('nu-fission') tally.add_score('total') tally.add_nuclide(u235) @@ -53,33 +51,13 @@ class TallyArithmeticTestHarness(PyAPITestHarness): # Instantiate reaction rate Tally in fuel tally = openmc.Tally(name='tally 2') - tally.add_filter(universe_filter) tally.add_filter(energy_filter) + tally.add_filter(mesh_filter) tally.add_score('total') tally.add_score('fission') tally.add_nuclide(u238) tally.add_nuclide(u235) tallies_file.add_tally(tally) - - # Instantiate reaction rate Tally in moderator - tally = openmc.Tally(name='tally 3') - tally.add_filter(distrib_filter) - tally.add_filter(energy_filter) - tally.add_score('absorption') - tally.add_score('total') - tally.add_nuclide(u235) - tally.add_nuclide(o16) - tallies_file.add_tally(tally) - - # Instantiate reaction rate Tally in moderator - tally = openmc.Tally(name='tally 4') - tally.add_filter(mesh_filter) - tally.add_filter(energy_filter) - tally.add_score('scatter') - tally.add_score('total') - tally.add_nuclide(u235) - tally.add_nuclide(zr90) - tallies_file.add_tally(tally) tallies_file.add_mesh(mesh) # Export tallies to file @@ -98,87 +76,35 @@ class TallyArithmeticTestHarness(PyAPITestHarness): su = openmc.Summary(summary) sp.link_with_summary(su) - print 'reading in tallies' - # Load the tallies tally_1 = sp.get_tally(name='tally 1') tally_2 = sp.get_tally(name='tally 2') - tally_3 = sp.get_tally(name='tally 3') - tally_4 = sp.get_tally(name='tally 4') # Perform all the tally arithmetic operations and output results outstr = '' - tally_5 = tally_1 * tally_2 - outstr += repr(tally_5) - outstr += str(tally_5.mean) + tally_3 = tally_1 * tally_2 + outstr += repr(tally_3) + outstr += str(tally_3.mean) - tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', + tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) + outstr += repr(tally_3) + outstr += str(tally_3.mean) - tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', + tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) + outstr += repr(tally_3) + outstr += str(tally_3.mean) - tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', + tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) + outstr += repr(tally_3) + outstr += str(tally_3.mean) - tally_5 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', + tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1 * tally_3 - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'tensor', - 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'entrywise', - 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'tensor', - 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_3, '*', 'entrywise', 'entrywise', - 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1 * tally_4 - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'tensor', - 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'entrywise', - 'tensor') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'tensor', - 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) - - tally_5 = tally_1.hybrid_product(tally_4, '*', 'entrywise', 'entrywise', - 'entrywise') - outstr += repr(tally_5) - outstr += str(tally_5.mean) + outstr += repr(tally_3) + outstr += str(tally_3.mean) print(outstr) From e4fc8e44edb8871ee589b7979c1a8c716150e76f Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Sat, 19 Dec 2015 10:50:07 -0800 Subject: [PATCH 09/17] updated tally arithmetic test for work for Python 3 --- tests/test_tally_arithmetic/results_true.dat | 68 ++----------------- .../test_tally_arithmetic.py | 5 -- 2 files changed, 4 insertions(+), 69 deletions(-) diff --git a/tests/test_tally_arithmetic/results_true.dat b/tests/test_tally_arithmetic/results_true.dat index 2878cbf4b7..ded2efa665 100644 --- a/tests/test_tally_arithmetic/results_true.dat +++ b/tests/test_tally_arithmetic/results_true.dat @@ -1,15 +1,3 @@ -Tally - ID = 10002 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - mesh [1] - Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) - Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] - Estimator = tracklength [[[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] @@ -39,19 +27,7 @@ Tally [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10003 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - mesh [1] - Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) - Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] - Estimator = tracklength -[[[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]][[[ 8.90240785e-05 8.31464209e-11 4.41507090e-05 4.12357364e-11] [ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] [ 4.69276830e-05 4.38293656e-11 2.35903380e-05 2.20328275e-11] [ 3.84607356e-05 3.15690405e-05 1.93340411e-05 1.58696166e-05]] @@ -80,19 +56,7 @@ Tally [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10004 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - mesh [1] - Nuclides = U-235 Pu-239 U-238 - Scores = [(nu-fission * total), (nu-fission * fission), (total * total), (total * fission)] - Estimator = tracklength -[[[ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]][[[ 7.29618709e-05 5.98879928e-05 3.61847984e-05 2.97009235e-05] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]] @@ -115,19 +79,7 @@ Tally [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10005 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - mesh [1] - Nuclides = (U-235 * U-238) (U-235 * U-235) (Pu-239 * U-238) (Pu-239 * U-235) - Scores = [u'nu-fission', u'total', u'fission'] - Estimator = tracklength -[[[ 0.00000000e+00 4.41507090e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]]][[[ 0.00000000e+00 4.41507090e-05 0.00000000e+00] [ 0.00000000e+00 3.61847984e-05 0.00000000e+00] [ 0.00000000e+00 2.35903380e-05 0.00000000e+00] [ 0.00000000e+00 1.93340411e-05 0.00000000e+00]] @@ -156,19 +108,7 @@ Tally [[ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] - [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]]Tally - ID = 10006 - Name = (tally 1 * tally 2) - Filters = - material [1 3] - energy [ 0.00000000e+00 2.53000000e-07 1.00000000e-03 1.00000000e+00 - 2.00000000e+01] - distribcell [60] - mesh [1] - Nuclides = U-235 Pu-239 U-238 - Scores = [u'nu-fission', u'total', u'fission'] - Estimator = tracklength -[[[ 0.00000000e+00 3.61847984e-05 0.00000000e+00] + [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]]][[[ 0.00000000e+00 3.61847984e-05 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00]] diff --git a/tests/test_tally_arithmetic/test_tally_arithmetic.py b/tests/test_tally_arithmetic/test_tally_arithmetic.py index 5517cbcf75..e794458c8c 100644 --- a/tests/test_tally_arithmetic/test_tally_arithmetic.py +++ b/tests/test_tally_arithmetic/test_tally_arithmetic.py @@ -83,27 +83,22 @@ class TallyArithmeticTestHarness(PyAPITestHarness): # Perform all the tally arithmetic operations and output results outstr = '' tally_3 = tally_1 * tally_2 - outstr += repr(tally_3) outstr += str(tally_3.mean) tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', 'tensor') - outstr += repr(tally_3) outstr += str(tally_3.mean) tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', 'tensor') - outstr += repr(tally_3) outstr += str(tally_3.mean) tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'tensor', 'entrywise') - outstr += repr(tally_3) outstr += str(tally_3.mean) tally_3 = tally_1.hybrid_product(tally_2, '*', 'entrywise', 'entrywise', 'entrywise') - outstr += repr(tally_3) outstr += str(tally_3.mean) print(outstr) From 6ca9e70a7073921f3c86c1313a442a973abbd12a Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Sat, 19 Dec 2015 12:08:03 -0800 Subject: [PATCH 10/17] fixed comments in tallies.py and tally arithmetic test --- openmc/tallies.py | 2 +- tests/test_tally_arithmetic/test_tally_arithmetic.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index 73bf4c0dff..4d5435b92b 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1461,7 +1461,7 @@ class Tally(object): The type of product (tensor or entrywise) to be performed between filter data. The default is the entrywise product. Currently only the entrywise product is supported since a tally cannot contain - two of the same tallies. + two of the same filter. nuclide_product : str, optional The type of product (tensor or entrywise) to be performed between nuclide data. The default is the entrywise product if all nuclides diff --git a/tests/test_tally_arithmetic/test_tally_arithmetic.py b/tests/test_tally_arithmetic/test_tally_arithmetic.py index e794458c8c..6643fd5a22 100644 --- a/tests/test_tally_arithmetic/test_tally_arithmetic.py +++ b/tests/test_tally_arithmetic/test_tally_arithmetic.py @@ -49,7 +49,6 @@ class TallyArithmeticTestHarness(PyAPITestHarness): tally.add_nuclide(pu239) tallies_file.add_tally(tally) - # Instantiate reaction rate Tally in fuel tally = openmc.Tally(name='tally 2') tally.add_filter(energy_filter) tally.add_filter(mesh_filter) From d713cc05755650428f95c1ab0a5cfbeef1a84452 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Tue, 22 Dec 2015 13:02:45 -0800 Subject: [PATCH 11/17] addressed comments from PR review mainly dealing with PEP8 compliance and typos --- openmc/tallies.py | 83 ++++++++++++++++++++++++----------------------- 1 file changed, 42 insertions(+), 41 deletions(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index 4d5435b92b..cd7bc338ec 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -31,6 +31,7 @@ AUTO_TALLY_ID = 10000 # specified axis. _PRODUCT_TYPES = ['tensor', 'entrywise'] + def reset_auto_tally_id(): global AUTO_TALLY_ID AUTO_TALLY_ID = 10000 @@ -1116,7 +1117,7 @@ class Tally(object): '\'rel_err\', \'sum\', or \'sum_sq\''.format(self.id, value) raise LookupError(msg) - return data.copy() + return data def get_pandas_dataframe(self, filters=True, nuclides=True, scores=True, summary=None): @@ -1440,16 +1441,16 @@ class Tally(object): nuclide_product=None, score_product=None): """Combines filters, scores and nuclides with another tally. - This is a helper method for the tally arithmetic methods. It is called a - "hybrid product" because it performs a combination of tensor - (or Kronecker) and entrywise (or Hadamard) products. The filters from - both tallies are combined using an entrywise (or Hadamard) product on - matching filters. By default, if all nuclides are identical in the two - tallies, the entrywise product is performed across nuclides; else the - tensor product is performed. By default, if all scores are identical in - the two tallies, the entrywise product is performed across scores; else - the tensor product is performed. Users can also call the method - explicitly and specify the desired product. + This is a helper method for the tally arithmetic operator overloaded + methods. It is called a "hybrid product" because it performs a + combination of tensor (or Kronecker) and entrywise (or Hadamard) + products. The filters from both tallies are combined using an entrywise + (or Hadamard) product on matching filters. By default, if all nuclides + are identical in the two tallies, the entrywise product is performed + across nuclides; else the tensor product is performed. By default, if + all scores are identical in the two tallies, the entrywise product is + performed across scores; else the tensor product is performed. Users + can also call the method explicitly and specify the desired product. Parameters ---------- @@ -1457,17 +1458,17 @@ class Tally(object): The tally on the right hand side of the hybrid product binary_op : {'+', '-', '*', '/', '^'} The binary operation in the hybrid product - filter_product : str, optional + filter_product : {'tensor', 'entrywise' or None} The type of product (tensor or entrywise) to be performed between filter data. The default is the entrywise product. Currently only the entrywise product is supported since a tally cannot contain two of the same filter. - nuclide_product : str, optional + nuclide_product : {'tensor', 'entrywise' or None} The type of product (tensor or entrywise) to be performed between nuclide data. The default is the entrywise product if all nuclides between the two tallies are the same; otherwise the default is the tensor product. - score_product : str, optional + score_product : {'tensor', 'entrywise' or None} The type of product (tensor or entrywise) to be performed between score data. The default is the entrywise product if all scores between the two tallies are the same; otherwise the default is @@ -1491,7 +1492,7 @@ class Tally(object): filter_product = 'entrywise' elif filter_product == 'tensor': msg = 'Unable to perform Tally arithmetic with a tensor product' \ - 'for the filter data as this not currently supported.' + 'for the filter data as this is not currently supported.' raise ValueError(msg) # Set default value for nuclide product if it was not set @@ -1642,13 +1643,13 @@ class Tally(object): ---------- other : Tally The tally to outer product with this tally - filter_product : str - The type of product (tensor or entrywise) to be performed between - filter data. - nuclide_product : str + filter_product : {'entrywise'} + The type of product to be performed between filter data. Currently, + only the entrywise product is supported for the filter product. + nuclide_product : {'tensor', 'entrywise'} The type of product (tensor or entrywise) to be performed between nuclide data. - score_product : str + score_product : {'tensor', 'entrywise'} The type of product (tensor or entrywise) to be performed between score data. @@ -1786,8 +1787,8 @@ class Tally(object): """Reverse the ordering of two filters in this tally This is a helper method for tally arithmetic which helps align the data - in two tallies with shared filters. This method copies this tally and - reverses the order of the two filters. + in two tallies with shared filters. This method reverses the order of + the two filters in place. Parameters ---------- @@ -1924,23 +1925,23 @@ class Tally(object): # Adjust the mean data array to relect the new nuclide order if self.mean is not None: - nuclide1_mean = self._mean[:,nuclide1_index,:].copy() - nuclide2_mean = self._mean[:,nuclide2_index,:].copy() - self._mean[:,nuclide2_index,:] = nuclide1_mean - self._mean[:,nuclide1_index,:] = nuclide2_mean + nuclide1_mean = self._mean[:, nuclide1_index, :].copy() + nuclide2_mean = self._mean[:, nuclide2_index, :].copy() + self._mean[:, nuclide2_index, :] = nuclide1_mean + self._mean[:, nuclide1_index, :] = nuclide2_mean # Adjust the std_dev data array to relect the new nuclide order if self.std_dev is not None: - nuclide1_std_dev = self._std_dev[:,nuclide1_index,:].copy() - nuclide2_std_dev = self._std_dev[:,nuclide2_index,:].copy() - self._std_dev[:,nuclide2_index,:] = nuclide1_std_dev - self._std_dev[:,nuclide1_index,:] = nuclide2_std_dev + nuclide1_std_dev = self._std_dev[:, nuclide1_index, :].copy() + nuclide2_std_dev = self._std_dev[:, nuclide2_index, :].copy() + self._std_dev[:, nuclide2_index, :] = nuclide1_std_dev + self._std_dev[:, nuclide1_index, :] = nuclide2_std_dev def _swap_scores(self, score1, score2): """Reverse the ordering of two scores in this tally This is a helper method for tally arithmetic which helps align the data - in two tallies with shared scores. This method copies reverses the order + in two tallies with shared scores. This method reverses the order of the two scores in place. Parameters @@ -1967,11 +1968,11 @@ class Tally(object): # Check that the scores are valid if not isinstance(score1, (basestring, CrossScore)): - msg = 'Unable to swap score "{0}" in Tally ID="{1}" since it is ' \ + msg = 'Unable to swap score1 "{0}" in Tally ID="{1}" since it is ' \ 'not a string or CrossScore'.format(score1, self.id) raise ValueError(msg) elif not isinstance(score2, (basestring, CrossScore)): - msg = 'Unable to swap score "{0}" in Tally ID="{1}" since it is ' \ + msg = 'Unable to swap score2 "{0}" in Tally ID="{1}" since it is ' \ 'not a string or CrossScore'.format(score2, self.id) raise ValueError(msg) @@ -1996,17 +1997,17 @@ class Tally(object): # Adjust the mean data array to relect the new nuclide order if self.mean is not None: - score1_mean = self._mean[:,:,score1_index].copy() - score2_mean = self._mean[:,:,score2_index].copy() - self._mean[:,:,score2_index] = score1_mean - self._mean[:,:,score1_index] = score2_mean + score1_mean = self._mean[:, :, score1_index].copy() + score2_mean = self._mean[:, :, score2_index].copy() + self._mean[:, :, score2_index] = score1_mean + self._mean[:, :, score1_index] = score2_mean # Adjust the std_dev data array to relect the new nuclide order if self.std_dev is not None: - score1_std_dev = self._std_dev[:,:,score1_index].copy() - score2_std_dev = self._std_dev[:,:,score2_index].copy() - self._std_dev[:,:,score2_index] = score1_std_dev - self._std_dev[:,:,score1_index] = score2_std_dev + score1_std_dev = self._std_dev[:, :, score1_index].copy() + score2_std_dev = self._std_dev[:, :, score2_index].copy() + self._std_dev[:, :, score2_index] = score1_std_dev + self._std_dev[:, :, score1_index] = score2_std_dev def __add__(self, other): """Adds this tally to another tally or scalar value. From 714f4ff2cc0706e706cbe4e29f293bcfb195a60b Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Tue, 22 Dec 2015 14:10:13 -0800 Subject: [PATCH 12/17] removed num_score_bins from tallies.py and removed duplicate scores from tests --- openmc/statepoint.py | 7 +-- openmc/summary.py | 2 - openmc/tallies.py | 68 +++++++++---------------- tests/test_many_scores/results_true.dat | 12 ----- tests/test_many_scores/tallies.xml | 6 +-- tests/test_score_MT/inputs_true.dat | 2 +- tests/test_score_MT/results_true.dat | 24 --------- tests/test_score_MT/test_score_MT.py | 1 - 8 files changed, 29 insertions(+), 93 deletions(-) diff --git a/openmc/statepoint.py b/openmc/statepoint.py index 1ff0584a72..4c17379630 100644 --- a/openmc/statepoint.py +++ b/openmc/statepoint.py @@ -391,11 +391,6 @@ class StatePoint(object): nuclide = openmc.Nuclide(name.decode().strip()) tally.add_nuclide(nuclide) - # Read score bins - n_score_bins = self._f['{0}{1}/n_score_bins'.format(base, tally_key)].value - - tally.num_score_bins = n_score_bins - scores = self._f['{0}{1}/score_bins'.format( base, tally_key)].value n_user_scores = self._f['{0}{1}/n_user_score_bins' @@ -404,7 +399,7 @@ class StatePoint(object): # Compute and set the filter strides for i in range(n_filters): filter = tally.filters[i] - filter.stride = n_score_bins * len(nuclide_names) + filter.stride = n_user_scores * len(nuclide_names) for j in range(i+1, n_filters): filter.stride *= tally.filters[j].num_bins diff --git a/openmc/summary.py b/openmc/summary.py index 4b1088e827..c14f9073d8 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -524,8 +524,6 @@ class Summary(object): scores = self._f['{0}/score_bins'.format(subbase)].value for score in scores: tally.add_score(score.decode()) - num_score_bins = self._f['{0}/n_score_bins'.format(subbase)][...] - tally.num_score_bins = num_score_bins # Read filter metadata num_filters = self._f['{0}/n_filters'.format(subbase)].value diff --git a/openmc/tallies.py b/openmc/tallies.py index cd7bc338ec..dfc03d50a4 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -65,10 +65,6 @@ class Tally(object): Type of estimator for the tally triggers : list of openmc.trigger.Trigger List of tally triggers - num_score_bins : Integral - Total number of scores, accounting for the fact that a single - user-specified score, e.g. scatter-P3 or flux-Y2,2, might have multiple - bins num_scores : Integral Total number of user-specified scores num_filter_bins : Integral @@ -101,7 +97,6 @@ class Tally(object): self._estimator = None self._triggers = [] - self._num_score_bins = 0 self._num_realizations = 0 self._with_summary = False @@ -124,7 +119,6 @@ class Tally(object): clone.id = self.id clone.name = self.name clone.estimator = self.estimator - clone.num_score_bins = self.num_score_bins clone.num_realizations = self.num_realizations clone._sum = copy.deepcopy(self._sum, memo) clone._sum_sq = copy.deepcopy(self._sum_sq, memo) @@ -253,10 +247,6 @@ class Tally(object): def num_scores(self): return len(self._scores) - @property - def num_score_bins(self): - return self._num_score_bins - @property def num_filter_bins(self): num_bins = 1 @@ -270,7 +260,7 @@ class Tally(object): def num_bins(self): num_bins = self.num_filter_bins num_bins *= self.num_nuclides - num_bins *= self.num_score_bins + num_bins *= self.num_scores return num_bins @property @@ -313,7 +303,7 @@ class Tally(object): # Reshape the results arrays new_shape = (nonzero(self.num_filter_bins), nonzero(self.num_nuclides), - nonzero(self.num_score_bins)) + nonzero(self.num_scores)) sum = np.reshape(sum, new_shape) sum_sq = np.reshape(sum_sq, new_shape) @@ -459,9 +449,13 @@ class Tally(object): 'not a string'.format(score, self.id) raise ValueError(msg) - # If the score is already in the Tally, don't add it again + # If the score is already in the Tally, raise an error if score in self.scores: - return + msg = 'Unable to add a duplicate score {0} to Tally ID="{1}" ' \ + 'since duplicate scores are not supported in the OpenMC ' \ + 'Python API'.format(score, self.id) + raise ValueError(msg) + # Normal score strings if isinstance(score, basestring): self._scores.append(score.strip()) @@ -469,10 +463,6 @@ class Tally(object): else: self._scores.append(score) - @num_score_bins.setter - def num_score_bins(self, num_score_bins): - self._num_score_bins = num_score_bins - @num_realizations.setter def num_realizations(self, num_realizations): cv.check_type('number of realizations', num_realizations, Integral) @@ -1287,7 +1277,7 @@ class Tally(object): for filter in self.filters: new_shape += (filter.num_bins, ) new_shape += (self.num_nuclides,) - new_shape += (self.num_score_bins,) + new_shape += (self.num_scores,) # Reshape the data with one dimension for each filter data = np.reshape(data, new_shape) @@ -1608,18 +1598,16 @@ class Tally(object): # Add scores to the new tally if score_product == 'entrywise': - new_tally.num_score_bins = self_copy.num_score_bins for self_score in self_copy.scores: new_tally.add_score(self_score) else: - new_tally.num_score_bins = self_copy.num_score_bins * other_copy.num_score_bins all_scores = [self_copy.scores, other_copy.scores] for self_score, other_score in itertools.product(*all_scores): new_score = CrossScore(self_score, other_score, binary_op) new_tally.add_score(new_score) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -1727,10 +1715,10 @@ class Tally(object): # Repeat and tile the data by score in preparation for performing # the tensor product across scores. if score_product == 'tensor': - self._mean = np.repeat(self.mean, other.num_score_bins, axis=2) - self._std_dev = np.repeat(self.std_dev, other.num_score_bins, axis=2) - other._mean = np.tile(other.mean, (1, 1, self.num_score_bins)) - other._std_dev = np.tile(other.std_dev, (1, 1, self.num_score_bins)) + self._mean = np.repeat(self.mean, other.num_scores, axis=2) + self._std_dev = np.repeat(self.std_dev, other.num_scores, axis=2) + other._mean = np.tile(other.mean, (1, 1, self.num_scores)) + other._std_dev = np.tile(other.std_dev, (1, 1, self.num_scores)) # Add scores to each tally such that each tally contains the complete set # of scores necessary to perform an entrywise product. New scores added @@ -1743,16 +1731,15 @@ class Tally(object): # Add scores present in self but not in other to other for score in other_missing_scores: - other._mean = np.insert(other.mean, other.num_score_bins, 0, axis=2) - other._std_dev = np.insert(other.std_dev, other.num_score_bins, 0, axis=2) + other._mean = np.insert(other.mean, other.num_scores, 0, axis=2) + other._std_dev = np.insert(other.std_dev, other.num_scores, 0, axis=2) other.add_score(score) # Add scores present in other but not in self to self for score in self_missing_scores: - self._mean = np.insert(self.mean, self.num_score_bins, 0, axis=2) - self._std_dev = np.insert(self.std_dev, self.num_score_bins, 0, axis=2) + self._mean = np.insert(self.mean, self.num_scores, 0, axis=2) + self._std_dev = np.insert(self.std_dev, self.num_scores, 0, axis=2) self.add_score(score) - self.num_score_bins += 1 # Align other scores with self scores for i, score in enumerate(self.scores): @@ -1763,13 +1750,13 @@ class Tally(object): other._swap_scores(score, other.scores[i]) # Correct the stride for other filters - stride = other.num_nuclides * other.num_score_bins + stride = other.num_nuclides * other.num_scores for filter in reversed(other.filters): filter.stride = stride stride *= filter.num_bins # Correct the stride for self filters - stride = self.num_nuclides * self.num_score_bins + stride = self.num_nuclides * self.num_scores for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -1835,7 +1822,7 @@ class Tally(object): self.filters[filter2_index] = filter1 # Update the strides for each of the filters - stride = self.num_nuclides * self.num_score_bins + stride = self.num_nuclides * self.num_scores for filter in reversed(self.filters): filter.stride = stride stride *= filter.num_bins @@ -2064,7 +2051,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2133,7 +2119,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2203,7 +2188,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2273,7 +2257,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2347,7 +2330,6 @@ class Tally(object): new_tally.estimator = self.estimator new_tally.with_summary = self.with_summary new_tally.num_realization = self.num_realizations - new_tally.num_score_bins = self.num_score_bins for filter in self.filters: new_tally.add_filter(filter) @@ -2549,7 +2531,6 @@ class Tally(object): # Loop over indices in reverse to remove excluded scores for score_index in reversed(score_indices): new_tally.remove_score(self.scores[score_index]) - new_tally.num_score_bins -= 1 # NUCLIDES if nuclides: @@ -2589,7 +2570,7 @@ class Tally(object): filter.num_bins = len(filter_bins[i]) # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins @@ -2735,8 +2716,7 @@ class Tally(object): # Determine the shape of data in the new diagonalized Tally num_filter_bins = new_tally.num_filter_bins num_nuclides = new_tally.num_nuclides - num_score_bins = new_tally.num_score_bins - new_shape = (num_filter_bins, num_nuclides, num_score_bins) + new_shape = (num_filter_bins, num_nuclides, num_scores) # Determine "base" indices along the new "diagonal", and the factor # by which the "base" indices should be repeated to account for all @@ -2766,7 +2746,7 @@ class Tally(object): new_tally._std_dev[diag_indices, :, :] = self.std_dev # Correct each Filter's stride - stride = new_tally.num_nuclides * new_tally.num_score_bins + stride = new_tally.num_nuclides * new_tally.num_scores for filter in reversed(new_tally.filters): filter.stride = stride stride *= filter.num_bins diff --git a/tests/test_many_scores/results_true.dat b/tests/test_many_scores/results_true.dat index 0d5dd6e32e..ae5430e30a 100644 --- a/tests/test_many_scores/results_true.dat +++ b/tests/test_many_scores/results_true.dat @@ -11,18 +11,6 @@ tally 1: 2.483728E+01 5.102293E-01 8.710841E-02 -8.628000E+00 -2.481430E+01 -9.329009E-01 -2.902534E-01 -5.102293E-01 -8.710841E-02 -5.087118E-01 -8.657086E-02 -8.632000E+00 -2.483728E+01 -9.328366E-01 -2.902108E-01 5.087118E-01 8.657086E-02 9.212024E+00 diff --git a/tests/test_many_scores/tallies.xml b/tests/test_many_scores/tallies.xml index 2df5597d04..b8a154f1ac 100644 --- a/tests/test_many_scores/tallies.xml +++ b/tests/test_many_scores/tallies.xml @@ -4,9 +4,9 @@ - flux total scatter nu-scatter scatter-2 scatter-p2 nu-scatter-2 - nu-scatter-p2 transport n1n absorption nu-fission kappa-fission - flux-y2 total-y2 scatter-y2 nu-scatter-y2 events delayed-nu-fission + flux total scatter nu-scatter scatter-2 nu-scatter-2 transport n1n + absorption nu-fission kappa-fission flux-y2 total-y2 scatter-y2 + nu-scatter-y2 events delayed-nu-fission diff --git a/tests/test_score_MT/inputs_true.dat b/tests/test_score_MT/inputs_true.dat index 3789a69cba..b361c28cf2 100644 --- a/tests/test_score_MT/inputs_true.dat +++ b/tests/test_score_MT/inputs_true.dat @@ -1 +1 @@ -63295b9d510370e65e63a3db627d47d286f5479e53c8eabeda9a5cb25ffe35becb636835aadad11691e34c23292fe11b5f688daee76d76ceac4b5dfd2f9ede4c \ No newline at end of file +7270299e4a4dde19d250825b0124fa36b60df847f046e058ccdfc74d4690beaaaaf387e050f596cb3445caf793d6a390ddb2d19650a3dccd4eb60056ae3b1477 \ No newline at end of file diff --git a/tests/test_score_MT/results_true.dat b/tests/test_score_MT/results_true.dat index 44656963f0..04b9c5ca50 100644 --- a/tests/test_score_MT/results_true.dat +++ b/tests/test_score_MT/results_true.dat @@ -7,10 +7,6 @@ tally 1: 0.000000E+00 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 -1.538090E-03 -1.381456E-06 1.538090E-03 1.381456E-06 3.974412E-01 @@ -19,16 +15,12 @@ tally 1: 3.796357E-01 5.252455E-06 2.290531E-11 -5.252455E-06 -2.290531E-11 3.359792E-02 2.267331E-04 2.459115E-02 1.233078E-04 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 7.004005E-05 1.748739E-09 8.104946E-02 @@ -42,18 +34,12 @@ tally 2: 0.000000E+00 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 2.000000E-01 9.000000E-03 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 2.000000E-02 2.000000E-04 0.000000E+00 @@ -64,8 +50,6 @@ tally 2: 0.000000E+00 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 tally 3: 0.000000E+00 0.000000E+00 @@ -73,10 +57,6 @@ tally 3: 0.000000E+00 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 -1.408027E-03 -1.849607E-06 1.408027E-03 1.849607E-06 3.946436E-01 @@ -85,16 +65,12 @@ tally 3: 3.382059E-01 2.179241E-05 4.749090E-10 -2.179241E-05 -4.749090E-10 3.146594E-02 2.159308E-04 4.278352E-02 4.094478E-04 0.000000E+00 0.000000E+00 -0.000000E+00 -0.000000E+00 1.736514E-04 1.245171E-08 7.989710E-02 diff --git a/tests/test_score_MT/test_score_MT.py b/tests/test_score_MT/test_score_MT.py index dae86d418c..fb8aa7cfb4 100644 --- a/tests/test_score_MT/test_score_MT.py +++ b/tests/test_score_MT/test_score_MT.py @@ -12,7 +12,6 @@ class ScoreMTTestHarness(PyAPITestHarness): filt = openmc.Filter(type='cell', bins=(10, 21, 22, 23)) tallies = [openmc.Tally(tally_id=i) for i in range(1, 4)] [t.add_filter(filt) for t in tallies] - [t.add_score('n2n') for t in tallies] [t.add_score('16') for t in tallies] [t.add_score('51') for t in tallies] [t.add_score('102') for t in tallies] From 04783529c802e33b6f76e9cde4ab58b12d540094 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Tue, 22 Dec 2015 14:40:56 -0800 Subject: [PATCH 13/17] removed num_score_bins from mgxs.py --- openmc/mgxs/mgxs.py | 4 ++-- openmc/summary.py | 1 + openmc/tallies.py | 9 +++------ 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/openmc/mgxs/mgxs.py b/openmc/mgxs/mgxs.py index 7913747f98..7f521a975c 100644 --- a/openmc/mgxs/mgxs.py +++ b/openmc/mgxs/mgxs.py @@ -755,7 +755,7 @@ class MGXS(object): # Reshape condensed data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) @@ -837,7 +837,7 @@ class MGXS(object): # Reshape averaged data arrays with one dimension for all filters new_shape = \ - (tally.num_filter_bins, tally.num_nuclides, tally.num_score_bins,) + (tally.num_filter_bins, tally.num_nuclides, tally.num_scores,) mean = np.reshape(mean, new_shape) std_dev = np.reshape(std_dev, new_shape) diff --git a/openmc/summary.py b/openmc/summary.py index c14f9073d8..b97b77b308 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -1,4 +1,5 @@ import numpy as np +import re import openmc from openmc.region import Region diff --git a/openmc/tallies.py b/openmc/tallies.py index dfc03d50a4..75e69a4c10 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -449,13 +449,9 @@ class Tally(object): 'not a string'.format(score, self.id) raise ValueError(msg) - # If the score is already in the Tally, raise an error + # If the score is already in the Tally, don't add it again if score in self.scores: - msg = 'Unable to add a duplicate score {0} to Tally ID="{1}" ' \ - 'since duplicate scores are not supported in the OpenMC ' \ - 'Python API'.format(score, self.id) - raise ValueError(msg) - + return # Normal score strings if isinstance(score, basestring): self._scores.append(score.strip()) @@ -2716,6 +2712,7 @@ class Tally(object): # Determine the shape of data in the new diagonalized Tally num_filter_bins = new_tally.num_filter_bins num_nuclides = new_tally.num_nuclides + num_scores = new_tally.num_scores new_shape = (num_filter_bins, num_nuclides, num_scores) # Determine "base" indices along the new "diagonal", and the factor From 0174bbe093a47e6756f302dc3a4f6926f7c5658d Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Tue, 22 Dec 2015 15:35:46 -0800 Subject: [PATCH 14/17] changed n_user_scores to n_score_bins in statepoint.py --- openmc/statepoint.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openmc/statepoint.py b/openmc/statepoint.py index 4c17379630..845937f594 100644 --- a/openmc/statepoint.py +++ b/openmc/statepoint.py @@ -393,13 +393,13 @@ class StatePoint(object): scores = self._f['{0}{1}/score_bins'.format( base, tally_key)].value - n_user_scores = self._f['{0}{1}/n_user_score_bins' - .format(base, tally_key)].value + n_score_bins = self._f['{0}{1}/n_score_bins' + .format(base, tally_key)].value # Compute and set the filter strides for i in range(n_filters): filter = tally.filters[i] - filter.stride = n_user_scores * len(nuclide_names) + filter.stride = n_score_bins * len(nuclide_names) for j in range(i+1, n_filters): filter.stride *= tally.filters[j].num_bins From 48a47cacda418beeec9c1b42c32ea0a99a168c5b Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Tue, 22 Dec 2015 16:02:09 -0800 Subject: [PATCH 15/17] added moment orders to summary file --- .../pythonapi/examples/tally-arithmetic.ipynb | 64 ++++++++----------- openmc/summary.py | 13 +++- openmc/tallies.py | 8 ++- src/summary.F90 | 35 +++++++++- 4 files changed, 78 insertions(+), 42 deletions(-) diff --git a/docs/source/pythonapi/examples/tally-arithmetic.ipynb b/docs/source/pythonapi/examples/tally-arithmetic.ipynb index 3ec974e057..18a19c991c 100644 --- a/docs/source/pythonapi/examples/tally-arithmetic.ipynb +++ b/docs/source/pythonapi/examples/tally-arithmetic.ipynb @@ -363,26 +363,7 @@ "outputs": [ { "data": { - "image/png": [ - "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\n", - "AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\n", - "QYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB98LGQ4UM+6dthcAAALKSURBVGje7dpLcqQwDAbgHHE2\n", - "YeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n", - "+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\n", - "nl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n", - "/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n", - "6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\n", - "vjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\n", - "dwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\n", - "ACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\n", - "vY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n", - "+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\n", - "QBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n", - "9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n", - "8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMTEtMjVUMTQ6MjA6\n", - "NTEtMDg6MDDVsKLDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTExLTI1VDE0OjIwOjUxLTA4OjAw\n", - "pO0afwAAAABJRU5ErkJggg==\n" - ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\nQYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB98MFg87MxcAKAsAAALKSURBVGje7dpLcqQwDAbgHHE2\nYeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\nnl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\nvjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\ndwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\nACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\nvY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\nQBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMTItMjJUMTU6NTk6\nNTEtMDg6MDCDpzvTAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTEyLTIyVDE1OjU5OjUxLTA4OjAw\n8vqDbwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] @@ -591,9 +572,9 @@ "\n", " Copyright: 2011-2015 Massachusetts Institute of Technology\n", " License: http://mit-crpg.github.io/openmc/license.html\n", - " Version: 0.7.0\n", - " Git SHA1: 74ffcb447521c968fb64fdaa63e40598783f2fba\n", - " Date/Time: 2015-11-25 14:20:51\n", + " Version: 0.7.1\n", + " Git SHA1: 6ca9e70a7073921f3c86c1313a442a973abbd12a\n", + " Date/Time: 2015-12-22 15:59:51\n", " MPI Processes: 1\n", "\n", " ===========================================================================\n", @@ -650,20 +631,20 @@ "\n", " =======================> TIMING STATISTICS <=======================\n", "\n", - " Total time for initialization = 7.9600E-01 seconds\n", - " Reading cross sections = 2.1200E-01 seconds\n", - " Total time in simulation = 1.8740E+01 seconds\n", - " Time in transport only = 1.8727E+01 seconds\n", - " Time in inactive batches = 2.5970E+00 seconds\n", - " Time in active batches = 1.6143E+01 seconds\n", - " Time synchronizing fission bank = 2.0000E-03 seconds\n", + " Total time for initialization = 6.9900E-01 seconds\n", + " Reading cross sections = 1.9100E-01 seconds\n", + " Total time in simulation = 1.7186E+01 seconds\n", + " Time in transport only = 1.7171E+01 seconds\n", + " Time in inactive batches = 2.4100E+00 seconds\n", + " Time in active batches = 1.4776E+01 seconds\n", + " Time synchronizing fission bank = 1.0000E-03 seconds\n", " Sampling source sites = 1.0000E-03 seconds\n", - " SEND/RECV source sites = 1.0000E-03 seconds\n", - " Time accumulating tallies = 0.0000E+00 seconds\n", - " Total time for finalization = 2.0000E-03 seconds\n", - " Total time elapsed = 1.9553E+01 seconds\n", - " Calculation Rate (inactive) = 4813.25 neutrons/second\n", - " Calculation Rate (active) = 2322.99 neutrons/second\n", + " SEND/RECV source sites = 0.0000E+00 seconds\n", + " Time accumulating tallies = 1.0000E-03 seconds\n", + " Total time for finalization = 3.0000E-03 seconds\n", + " Total time elapsed = 1.7901E+01 seconds\n", + " Calculation Rate (inactive) = 5186.72 neutrons/second\n", + " Calculation Rate (active) = 2537.90 neutrons/second\n", "\n", " ============================> RESULTS <============================\n", "\n", @@ -1579,6 +1560,15 @@ " filters=['cell'], filter_bins=[(moderator_cell.id,)])\n", "slice_test.get_pandas_dataframe()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] } ], "metadata": { @@ -1597,7 +1587,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", - "version": "2.7.10" + "version": "2.7.11" } }, "nbformat": 4, diff --git a/openmc/summary.py b/openmc/summary.py index b97b77b308..8e8d4bc7ee 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -521,10 +521,19 @@ class Summary(object): # Create Tally object and assign basic properties tally = openmc.Tally(tally_id, tally_name) + # Read scattering moment order strings (e.g., P3, Y-1,2, etc.) + moments = self._f['{0}/moment_orders'.format(subbase)].value + # Read score metadata scores = self._f['{0}/score_bins'.format(subbase)].value - for score in scores: - tally.add_score(score.decode()) + for j, score in enumerate(scores): + score = score.decode() + + # If this is a moment, use generic moment order + pattern = r'-n$|-pn$|-yn$' + score = re.sub(pattern, '-' + moments[j].decode(), score) + + tally.add_score(score) # Read filter metadata num_filters = self._f['{0}/n_filters'.format(subbase)].value diff --git a/openmc/tallies.py b/openmc/tallies.py index 75e69a4c10..c6331f594e 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -449,9 +449,13 @@ class Tally(object): 'not a string'.format(score, self.id) raise ValueError(msg) - # If the score is already in the Tally, don't add it again + # If the score is already in the Tally, raise an error if score in self.scores: - return + msg = 'Unable to add a duplicate score {0} to Tally ID="{1}" ' \ + 'since duplicate scores are not supported in the OpenMC ' \ + 'Python API'.format(score, self.id) + raise ValueError(msg) + # Normal score strings if isinstance(score, basestring): self._scores.append(score.strip()) diff --git a/src/summary.F90 b/src/summary.F90 index f2c261ec75..187abc26c9 100644 --- a/src/summary.F90 +++ b/src/summary.F90 @@ -484,8 +484,10 @@ contains subroutine write_tallies(file_id) integer(HID_T), intent(in) :: file_id - integer :: i, j + integer :: i, j, k integer :: i_list, i_xs + integer :: n_order ! loop index for moment orders + integer :: nm_order ! loop index for Ynm moment orders integer(HID_T) :: tallies_group integer(HID_T) :: mesh_group integer(HID_T) :: tally_group @@ -664,6 +666,37 @@ contains deallocate(str_array) + ! Write explicit moment order strings for each score bin + k = 1 + allocate(str_array(t%n_score_bins)) + MOMENT_LOOP: do j = 1, t%n_user_score_bins + select case(t%score_bins(k)) + case (SCORE_SCATTER_N, SCORE_NU_SCATTER_N) + str_array(k) = 'P' // trim(to_str(t%moment_order(k))) + k = k + 1 + case (SCORE_SCATTER_PN, SCORE_NU_SCATTER_PN) + do n_order = 0, t%moment_order(k) + str_array(k) = 'P' // trim(to_str(n_order)) + k = k + 1 + end do + case (SCORE_SCATTER_YN, SCORE_NU_SCATTER_YN, SCORE_FLUX_YN, & + SCORE_TOTAL_YN) + do n_order = 0, t%moment_order(k) + do nm_order = -n_order, n_order + str_array(k) = 'Y' // trim(to_str(n_order)) // ',' // & + trim(to_str(nm_order)) + k = k + 1 + end do + end do + case default + str_array(k) = '' + k = k + 1 + end select + end do MOMENT_LOOP + + call write_dataset(tally_group, "moment_orders", str_array) + deallocate(str_array) + call close_group(tally_group) end do TALLY_METADATA From c364114ddded7cecaa72560fa0aa43fa25b3cbd7 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Wed, 23 Dec 2015 07:02:53 -0800 Subject: [PATCH 16/17] reverted tally-arithmetic.ipynb to version in release-0.7.1 branch --- .../pythonapi/examples/tally-arithmetic.ipynb | 64 +++++++++++-------- 1 file changed, 37 insertions(+), 27 deletions(-) diff --git a/docs/source/pythonapi/examples/tally-arithmetic.ipynb b/docs/source/pythonapi/examples/tally-arithmetic.ipynb index 18a19c991c..3ec974e057 100644 --- a/docs/source/pythonapi/examples/tally-arithmetic.ipynb +++ b/docs/source/pythonapi/examples/tally-arithmetic.ipynb @@ -363,7 +363,26 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\nQYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB98MFg87MxcAKAsAAALKSURBVGje7dpLcqQwDAbgHHE2\nYeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\nnl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\nvjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\ndwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\nACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\nvY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\nQBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMTItMjJUMTU6NTk6\nNTEtMDg6MDCDpzvTAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTEyLTIyVDE1OjU5OjUxLTA4OjAw\n8vqDbwAAAABJRU5ErkJggg==\n", + "image/png": [ + "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\n", + "AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\n", + "QYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB98LGQ4UM+6dthcAAALKSURBVGje7dpLcqQwDAbgHHE2\n", + "YeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n", + "+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\n", + "nl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n", + "/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n", + "6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\n", + "vjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\n", + "dwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\n", + "ACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\n", + "vY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n", + "+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\n", + "QBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n", + "9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n", + "8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMTEtMjVUMTQ6MjA6\n", + "NTEtMDg6MDDVsKLDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTExLTI1VDE0OjIwOjUxLTA4OjAw\n", + "pO0afwAAAABJRU5ErkJggg==\n" + ], "text/plain": [ "" ] @@ -572,9 +591,9 @@ "\n", " Copyright: 2011-2015 Massachusetts Institute of Technology\n", " License: http://mit-crpg.github.io/openmc/license.html\n", - " Version: 0.7.1\n", - " Git SHA1: 6ca9e70a7073921f3c86c1313a442a973abbd12a\n", - " Date/Time: 2015-12-22 15:59:51\n", + " Version: 0.7.0\n", + " Git SHA1: 74ffcb447521c968fb64fdaa63e40598783f2fba\n", + " Date/Time: 2015-11-25 14:20:51\n", " MPI Processes: 1\n", "\n", " ===========================================================================\n", @@ -631,20 +650,20 @@ "\n", " =======================> TIMING STATISTICS <=======================\n", "\n", - " Total time for initialization = 6.9900E-01 seconds\n", - " Reading cross sections = 1.9100E-01 seconds\n", - " Total time in simulation = 1.7186E+01 seconds\n", - " Time in transport only = 1.7171E+01 seconds\n", - " Time in inactive batches = 2.4100E+00 seconds\n", - " Time in active batches = 1.4776E+01 seconds\n", - " Time synchronizing fission bank = 1.0000E-03 seconds\n", + " Total time for initialization = 7.9600E-01 seconds\n", + " Reading cross sections = 2.1200E-01 seconds\n", + " Total time in simulation = 1.8740E+01 seconds\n", + " Time in transport only = 1.8727E+01 seconds\n", + " Time in inactive batches = 2.5970E+00 seconds\n", + " Time in active batches = 1.6143E+01 seconds\n", + " Time synchronizing fission bank = 2.0000E-03 seconds\n", " Sampling source sites = 1.0000E-03 seconds\n", - " SEND/RECV source sites = 0.0000E+00 seconds\n", - " Time accumulating tallies = 1.0000E-03 seconds\n", - " Total time for finalization = 3.0000E-03 seconds\n", - " Total time elapsed = 1.7901E+01 seconds\n", - " Calculation Rate (inactive) = 5186.72 neutrons/second\n", - " Calculation Rate (active) = 2537.90 neutrons/second\n", + " SEND/RECV source sites = 1.0000E-03 seconds\n", + " Time accumulating tallies = 0.0000E+00 seconds\n", + " Total time for finalization = 2.0000E-03 seconds\n", + " Total time elapsed = 1.9553E+01 seconds\n", + " Calculation Rate (inactive) = 4813.25 neutrons/second\n", + " Calculation Rate (active) = 2322.99 neutrons/second\n", "\n", " ============================> RESULTS <============================\n", "\n", @@ -1560,15 +1579,6 @@ " filters=['cell'], filter_bins=[(moderator_cell.id,)])\n", "slice_test.get_pandas_dataframe()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] } ], "metadata": { @@ -1587,7 +1597,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", - "version": "2.7.11" + "version": "2.7.10" } }, "nbformat": 4, From 4ac325d0695ce3614b55864e6486fa561ee99f10 Mon Sep 17 00:00:00 2001 From: Sam Shaner Date: Wed, 23 Dec 2015 08:10:43 -0800 Subject: [PATCH 17/17] modified tally merge method to only add unique scores --- openmc/tallies.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index c6331f594e..a8569b7272 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -633,9 +633,10 @@ class Tally(object): merged_tally.filters[i] = merged_filter break - # Add scores from second tally to merged tally + # Add unique scores from second tally to merged tally for score in tally.scores: - merged_tally.add_score(score) + if score not in merged_tally.scores: + merged_tally.add_score(score) # Add triggers from second tally to merged tally for trigger in tally.triggers: