mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-28 14:15:42 -04:00
Fix bug related to bin ordering for mesh filters
This commit is contained in:
parent
9e912a933d
commit
bd5b7afc2d
7 changed files with 200 additions and 186 deletions
|
|
@ -732,37 +732,40 @@ class MeshFilter(Filter):
|
|||
# Filter bins for a mesh are an (x,y,z) tuple. Convert (x,y,z) to a
|
||||
# single bin -- this is similar to subroutine mesh_indices_to_bin in
|
||||
# openmc/src/mesh.F90.
|
||||
if len(self.mesh.dimension) == 3:
|
||||
n_dim = len(self.mesh.dimension)
|
||||
if n_dim == 3:
|
||||
i, j, k = filter_bin
|
||||
nx, ny, nz = self.mesh.dimension
|
||||
val = (filter_bin[0] - 1) * ny * nz + \
|
||||
(filter_bin[1] - 1) * nz + \
|
||||
(filter_bin[2] - 1)
|
||||
else:
|
||||
return (i - 1) + (j - 1)*nx + (k - 1)*nx*ny
|
||||
elif n_dim == 2:
|
||||
i, j, *_ = filter_bin
|
||||
nx, ny = self.mesh.dimension
|
||||
val = (filter_bin[0] - 1) * ny + \
|
||||
(filter_bin[1] - 1)
|
||||
|
||||
return val
|
||||
return (i - 1) + (j - 1)*nx
|
||||
else:
|
||||
return filter_bin[0] - 1
|
||||
|
||||
def get_bin(self, bin_index):
|
||||
cv.check_type('bin_index', bin_index, Integral)
|
||||
cv.check_greater_than('bin_index', bin_index, 0, equality=True)
|
||||
cv.check_less_than('bin_index', bin_index, self.num_bins)
|
||||
|
||||
# Construct 3-tuple of x,y,z cell indices for a 3D mesh
|
||||
if len(self.mesh.dimension) == 3:
|
||||
n_dim = len(self.mesh.dimension)
|
||||
if n_dim == 3:
|
||||
# Construct 3-tuple of x,y,z cell indices for a 3D mesh
|
||||
nx, ny, nz = self.mesh.dimension
|
||||
x = bin_index / (ny * nz)
|
||||
y = (bin_index - (x * ny * nz)) / nz
|
||||
z = bin_index - (x * ny * nz) - (y * nz)
|
||||
x = bin_index % nx + 1
|
||||
y = (bin_index % (nx * ny)) // nx + 1
|
||||
z = bin_index // (nx * ny) + 1
|
||||
return (x, y, z)
|
||||
|
||||
# Construct 2-tuple of x,y cell indices for a 2D mesh
|
||||
else:
|
||||
elif n_dim == 2:
|
||||
# Construct 2-tuple of x,y cell indices for a 2D mesh
|
||||
nx, ny = self.mesh.dimension
|
||||
x = bin_index / ny
|
||||
y = bin_index - (x * ny)
|
||||
x = bin_index % nx + 1
|
||||
y = bin_index // nx + 1
|
||||
return (x, y)
|
||||
else:
|
||||
return (bin_index + 1,)
|
||||
|
||||
def get_pandas_dataframe(self, data_size, stride, **kwargs):
|
||||
"""Builds a Pandas DataFrame for the Filter's bins.
|
||||
|
|
@ -802,9 +805,10 @@ class MeshFilter(Filter):
|
|||
mesh_key = 'mesh {0}'.format(self.mesh.id)
|
||||
|
||||
# Find mesh dimensions - use 3D indices for simplicity
|
||||
if len(self.mesh.dimension) == 3:
|
||||
n_dim = len(self.mesh.dimension)
|
||||
if n_dim == 3:
|
||||
nx, ny, nz = self.mesh.dimension
|
||||
elif len(self.mesh.dimension) == 2:
|
||||
elif n_dim == 2:
|
||||
nx, ny = self.mesh.dimension
|
||||
nz = 1
|
||||
else:
|
||||
|
|
@ -813,7 +817,7 @@ class MeshFilter(Filter):
|
|||
|
||||
# Generate multi-index sub-column for x-axis
|
||||
filter_bins = np.arange(1, nx + 1)
|
||||
repeat_factor = ny * nz * stride
|
||||
repeat_factor = stride
|
||||
filter_bins = np.repeat(filter_bins, repeat_factor)
|
||||
tile_factor = data_size // len(filter_bins)
|
||||
filter_bins = np.tile(filter_bins, tile_factor)
|
||||
|
|
@ -821,7 +825,7 @@ class MeshFilter(Filter):
|
|||
|
||||
# Generate multi-index sub-column for y-axis
|
||||
filter_bins = np.arange(1, ny + 1)
|
||||
repeat_factor = nz * stride
|
||||
repeat_factor = nx * stride
|
||||
filter_bins = np.repeat(filter_bins, repeat_factor)
|
||||
tile_factor = data_size // len(filter_bins)
|
||||
filter_bins = np.tile(filter_bins, tile_factor)
|
||||
|
|
@ -829,7 +833,7 @@ class MeshFilter(Filter):
|
|||
|
||||
# Generate multi-index sub-column for z-axis
|
||||
filter_bins = np.arange(1, nz + 1)
|
||||
repeat_factor = stride
|
||||
repeat_factor = nx * ny * stride
|
||||
filter_bins = np.repeat(filter_bins, repeat_factor)
|
||||
tile_factor = data_size // len(filter_bins)
|
||||
filter_bins = np.tile(filter_bins, tile_factor)
|
||||
|
|
|
|||
|
|
@ -82,6 +82,24 @@ class Mesh(IDManagerMixin):
|
|||
def num_mesh_cells(self):
|
||||
return np.prod(self._dimension)
|
||||
|
||||
@property
|
||||
def indices(self):
|
||||
ndim = len(self._dimension)
|
||||
if ndim == 3:
|
||||
nx, ny, nz = self.dimension
|
||||
return ((x, y, z)
|
||||
for z in range(1, nz + 1)
|
||||
for y in range(1, ny + 1)
|
||||
for x in range(1, nx + 1))
|
||||
elif ndim == 2:
|
||||
nx, ny = self.dimension
|
||||
return ((x, y)
|
||||
for y in range(1, ny + 1)
|
||||
for x in range(1, nx + 1))
|
||||
else:
|
||||
nx, = self.dimension
|
||||
return ((x,) for x in range(1, nx + 1))
|
||||
|
||||
@name.setter
|
||||
def name(self, name):
|
||||
if name is not None:
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import warnings
|
|||
import os
|
||||
import copy
|
||||
from abc import ABCMeta
|
||||
import itertools
|
||||
|
||||
import numpy as np
|
||||
import h5py
|
||||
|
|
@ -937,8 +936,7 @@ class MGXS(metaclass=ABCMeta):
|
|||
# NOTE: This is important if tally merging was used
|
||||
if self.domain_type == 'mesh':
|
||||
filters = [_DOMAIN_TO_FILTER[self.domain_type]]
|
||||
xyz = [range(1, x + 1) for x in self.domain.dimension]
|
||||
filter_bins = [tuple(itertools.product(*xyz))]
|
||||
filter_bins = [tuple(self.domain.indices)]
|
||||
elif self.domain_type != 'distribcell':
|
||||
filters = [_DOMAIN_TO_FILTER[self.domain_type]]
|
||||
filter_bins = [(self.domain.id,)]
|
||||
|
|
@ -1531,8 +1529,7 @@ class MGXS(metaclass=ABCMeta):
|
|||
elif self.domain_type == 'distribcell':
|
||||
subdomains = np.arange(self.num_subdomains, dtype=np.int)
|
||||
elif self.domain_type == 'mesh':
|
||||
xyz = [range(1, x + 1) for x in self.domain.dimension]
|
||||
subdomains = list(itertools.product(*xyz))
|
||||
subdomains = list(self.domain.indices)
|
||||
else:
|
||||
subdomains = [self.domain.id]
|
||||
|
||||
|
|
@ -1702,8 +1699,7 @@ class MGXS(metaclass=ABCMeta):
|
|||
domain_filter = self.xs_tally.find_filter('sum(distribcell)')
|
||||
subdomains = domain_filter.bins
|
||||
elif self.domain_type == 'mesh':
|
||||
xyz = [range(1, x+1) for x in self.domain.dimension]
|
||||
subdomains = list(itertools.product(*xyz))
|
||||
subdomains = list(self.domain.indices)
|
||||
else:
|
||||
subdomains = [self.domain.id]
|
||||
|
||||
|
|
@ -2342,8 +2338,7 @@ class MatrixMGXS(MGXS):
|
|||
elif self.domain_type == 'distribcell':
|
||||
subdomains = np.arange(self.num_subdomains, dtype=np.int)
|
||||
elif self.domain_type == 'mesh':
|
||||
xyz = [range(1, x + 1) for x in self.domain.dimension]
|
||||
subdomains = list(itertools.product(*xyz))
|
||||
subdomains = list(self.domain.indices)
|
||||
else:
|
||||
subdomains = [self.domain.id]
|
||||
|
||||
|
|
@ -4530,8 +4525,7 @@ class ScatterMatrixXS(MatrixMGXS):
|
|||
elif self.domain_type == 'distribcell':
|
||||
subdomains = np.arange(self.num_subdomains, dtype=np.int)
|
||||
elif self.domain_type == 'mesh':
|
||||
xyz = [range(1, x + 1) for x in self.domain.dimension]
|
||||
subdomains = list(itertools.product(*xyz))
|
||||
subdomains = list(self.domain.indices)
|
||||
else:
|
||||
subdomains = [self.domain.id]
|
||||
|
||||
|
|
|
|||
|
|
@ -1164,9 +1164,7 @@ class Tally(IDManagerMixin):
|
|||
if not user_filter:
|
||||
# Create list of 2- or 3-tuples tuples for mesh cell bins
|
||||
if isinstance(self_filter, openmc.MeshFilter):
|
||||
dimension = self_filter.mesh.dimension
|
||||
xyz = [range(1, x+1) for x in dimension]
|
||||
bins = list(product(*xyz))
|
||||
bins = list(self_filter.mesh.indices)
|
||||
|
||||
# Create list of 2-tuples for energy boundary bins
|
||||
elif isinstance(self_filter, (openmc.EnergyFilter,
|
||||
|
|
|
|||
|
|
@ -1,62 +1,62 @@
|
|||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.762544 0.085298
|
||||
1 1 2 1 1 total 0.653375 0.153317
|
||||
2 2 1 1 1 total 0.644837 0.088457
|
||||
2 1 2 1 1 total 0.644837 0.088457
|
||||
1 2 1 1 1 total 0.653375 0.153317
|
||||
3 2 2 1 1 total 0.676480 0.094215
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.473988 0.088732
|
||||
1 1 2 1 1 total 0.379821 0.167092
|
||||
2 2 1 1 1 total 0.399254 0.091318
|
||||
2 1 2 1 1 total 0.399254 0.091318
|
||||
1 2 1 1 1 total 0.379821 0.167092
|
||||
3 2 2 1 1 total 0.424265 0.099551
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.473988 0.088732
|
||||
1 1 2 1 1 total 0.379821 0.167092
|
||||
2 2 1 1 1 total 0.399254 0.091318
|
||||
2 1 2 1 1 total 0.399254 0.091318
|
||||
1 2 1 1 1 total 0.379821 0.167092
|
||||
3 2 2 1 1 total 0.424265 0.099551
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.027288 0.005813
|
||||
1 1 2 1 1 total 0.019449 0.004420
|
||||
2 2 1 1 1 total 0.020262 0.003701
|
||||
2 1 2 1 1 total 0.020262 0.003701
|
||||
1 2 1 1 1 total 0.019449 0.004420
|
||||
3 2 2 1 1 total 0.021266 0.002869
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.016037 0.006339
|
||||
1 1 2 1 1 total 0.012153 0.003804
|
||||
2 2 1 1 1 total 0.013018 0.003521
|
||||
2 1 2 1 1 total 0.013018 0.003521
|
||||
1 2 1 1 1 total 0.012153 0.003804
|
||||
3 2 2 1 1 total 0.012965 0.002454
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.011251 0.003050
|
||||
1 1 2 1 1 total 0.007296 0.001795
|
||||
2 2 1 1 1 total 0.007243 0.001219
|
||||
2 1 2 1 1 total 0.007243 0.001219
|
||||
1 2 1 1 1 total 0.007296 0.001795
|
||||
3 2 2 1 1 total 0.008301 0.001066
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.027498 0.007445
|
||||
1 1 2 1 1 total 0.017912 0.004426
|
||||
2 2 1 1 1 total 0.017954 0.003077
|
||||
2 1 2 1 1 total 0.017954 0.003077
|
||||
1 2 1 1 1 total 0.017912 0.004426
|
||||
3 2 2 1 1 total 0.020469 0.002617
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 2.177345e+06 589804.299388
|
||||
1 1 2 1 1 total 1.413154e+06 347806.623417
|
||||
2 2 1 1 1 total 1.404096e+06 236476.851953
|
||||
2 1 2 1 1 total 1.404096e+06 236476.851953
|
||||
1 2 1 1 1 total 1.413154e+06 347806.623417
|
||||
3 2 2 1 1 total 1.608259e+06 206502.707865
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.735256 0.080216
|
||||
1 1 2 1 1 total 0.633925 0.149098
|
||||
2 2 1 1 1 total 0.624575 0.084974
|
||||
2 1 2 1 1 total 0.624575 0.084974
|
||||
1 2 1 1 1 total 0.633925 0.149098
|
||||
3 2 2 1 1 total 0.655214 0.091422
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.763779 0.070696
|
||||
1 1 2 1 1 total 0.640809 0.158369
|
||||
2 2 1 1 1 total 0.628158 0.064356
|
||||
2 1 2 1 1 total 0.628158 0.064356
|
||||
1 2 1 1 1 total 0.640809 0.158369
|
||||
3 2 2 1 1 total 0.645171 0.080467
|
||||
mesh 1 group in group out nuclide moment mean std. dev.
|
||||
x y z
|
||||
|
|
@ -64,14 +64,14 @@
|
|||
1 1 1 1 1 1 total P1 0.288556 0.024446
|
||||
2 1 1 1 1 1 total P2 0.082441 0.011443
|
||||
3 1 1 1 1 1 total P3 -0.005627 0.012638
|
||||
4 1 2 1 1 1 total P0 0.640809 0.158369
|
||||
5 1 2 1 1 1 total P1 0.273553 0.066437
|
||||
6 1 2 1 1 1 total P2 0.108446 0.024435
|
||||
7 1 2 1 1 1 total P3 0.012229 0.003785
|
||||
8 2 1 1 1 1 total P0 0.628158 0.064356
|
||||
9 2 1 1 1 1 total P1 0.245583 0.022676
|
||||
10 2 1 1 1 1 total P2 0.086370 0.007833
|
||||
11 2 1 1 1 1 total P3 0.019590 0.005345
|
||||
8 1 2 1 1 1 total P0 0.628158 0.064356
|
||||
9 1 2 1 1 1 total P1 0.245583 0.022676
|
||||
10 1 2 1 1 1 total P2 0.086370 0.007833
|
||||
11 1 2 1 1 1 total P3 0.019590 0.005345
|
||||
4 2 1 1 1 1 total P0 0.640809 0.158369
|
||||
5 2 1 1 1 1 total P1 0.273553 0.066437
|
||||
6 2 1 1 1 1 total P2 0.108446 0.024435
|
||||
7 2 1 1 1 1 total P3 0.012229 0.003785
|
||||
12 2 2 1 1 1 total P0 0.645171 0.080467
|
||||
13 2 2 1 1 1 total P1 0.252215 0.032154
|
||||
14 2 2 1 1 1 total P2 0.089251 0.009734
|
||||
|
|
@ -82,14 +82,14 @@
|
|||
1 1 1 1 1 1 total P1 0.288556 0.024446
|
||||
2 1 1 1 1 1 total P2 0.082441 0.011443
|
||||
3 1 1 1 1 1 total P3 -0.005627 0.012638
|
||||
4 1 2 1 1 1 total P0 0.640809 0.158369
|
||||
5 1 2 1 1 1 total P1 0.273553 0.066437
|
||||
6 1 2 1 1 1 total P2 0.108446 0.024435
|
||||
7 1 2 1 1 1 total P3 0.012229 0.003785
|
||||
8 2 1 1 1 1 total P0 0.628158 0.064356
|
||||
9 2 1 1 1 1 total P1 0.245583 0.022676
|
||||
10 2 1 1 1 1 total P2 0.086370 0.007833
|
||||
11 2 1 1 1 1 total P3 0.019590 0.005345
|
||||
8 1 2 1 1 1 total P0 0.628158 0.064356
|
||||
9 1 2 1 1 1 total P1 0.245583 0.022676
|
||||
10 1 2 1 1 1 total P2 0.086370 0.007833
|
||||
11 1 2 1 1 1 total P3 0.019590 0.005345
|
||||
4 2 1 1 1 1 total P0 0.640809 0.158369
|
||||
5 2 1 1 1 1 total P1 0.273553 0.066437
|
||||
6 2 1 1 1 1 total P2 0.108446 0.024435
|
||||
7 2 1 1 1 1 total P3 0.012229 0.003785
|
||||
12 2 2 1 1 1 total P0 0.645171 0.080467
|
||||
13 2 2 1 1 1 total P1 0.252215 0.032154
|
||||
14 2 2 1 1 1 total P2 0.089251 0.009734
|
||||
|
|
@ -97,20 +97,20 @@
|
|||
mesh 1 group in group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 1 total 1.0 0.108337
|
||||
1 1 2 1 1 1 total 1.0 0.238517
|
||||
2 2 1 1 1 1 total 1.0 0.113128
|
||||
2 1 2 1 1 1 total 1.0 0.113128
|
||||
1 2 1 1 1 1 total 1.0 0.238517
|
||||
3 2 2 1 1 1 total 1.0 0.132597
|
||||
mesh 1 group in group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 1 total 0.015584 0.003404
|
||||
1 1 2 1 1 1 total 0.014200 0.003676
|
||||
2 2 1 1 1 1 total 0.017684 0.002499
|
||||
2 1 2 1 1 1 total 0.017684 0.002499
|
||||
1 2 1 1 1 1 total 0.014200 0.003676
|
||||
3 2 2 1 1 1 total 0.022409 0.002481
|
||||
mesh 1 group in group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 1 total 1.0 0.108337
|
||||
1 1 2 1 1 1 total 1.0 0.238517
|
||||
2 2 1 1 1 1 total 1.0 0.113128
|
||||
2 1 2 1 1 1 total 1.0 0.113128
|
||||
1 2 1 1 1 1 total 1.0 0.238517
|
||||
3 2 2 1 1 1 total 1.0 0.132597
|
||||
mesh 1 group in group out nuclide moment mean std. dev.
|
||||
x y z
|
||||
|
|
@ -118,14 +118,14 @@
|
|||
1 1 1 1 1 1 total P1 0.277780 0.041434
|
||||
2 1 1 1 1 1 total P2 0.079362 0.014706
|
||||
3 1 1 1 1 1 total P3 -0.005417 0.012184
|
||||
4 1 2 1 1 1 total P0 0.633925 0.212349
|
||||
5 1 2 1 1 1 total P1 0.270615 0.089799
|
||||
6 1 2 1 1 1 total P2 0.107281 0.034246
|
||||
7 1 2 1 1 1 total P3 0.012098 0.004637
|
||||
8 2 1 1 1 1 total P0 0.624575 0.110512
|
||||
9 2 1 1 1 1 total P1 0.244182 0.041824
|
||||
10 2 1 1 1 1 total P2 0.085877 0.014634
|
||||
11 2 1 1 1 1 total P3 0.019478 0.006012
|
||||
8 1 2 1 1 1 total P0 0.624575 0.110512
|
||||
9 1 2 1 1 1 total P1 0.244182 0.041824
|
||||
10 1 2 1 1 1 total P2 0.085877 0.014634
|
||||
11 1 2 1 1 1 total P3 0.019478 0.006012
|
||||
4 2 1 1 1 1 total P0 0.633925 0.212349
|
||||
5 2 1 1 1 1 total P1 0.270615 0.089799
|
||||
6 2 1 1 1 1 total P2 0.107281 0.034246
|
||||
7 2 1 1 1 1 total P3 0.012098 0.004637
|
||||
12 2 2 1 1 1 total P0 0.655214 0.126119
|
||||
13 2 2 1 1 1 total P1 0.256141 0.049765
|
||||
14 2 2 1 1 1 total P2 0.090641 0.016563
|
||||
|
|
@ -136,14 +136,14 @@
|
|||
1 1 1 1 1 1 total P1 0.277780 0.051210
|
||||
2 1 1 1 1 1 total P2 0.079362 0.017035
|
||||
3 1 1 1 1 1 total P3 -0.005417 0.012198
|
||||
4 1 2 1 1 1 total P0 0.633925 0.260681
|
||||
5 1 2 1 1 1 total P1 0.270615 0.110590
|
||||
6 1 2 1 1 1 total P2 0.107281 0.042750
|
||||
7 1 2 1 1 1 total P3 0.012098 0.005462
|
||||
8 2 1 1 1 1 total P0 0.624575 0.131169
|
||||
9 2 1 1 1 1 total P1 0.244182 0.050123
|
||||
10 2 1 1 1 1 total P2 0.085877 0.017565
|
||||
11 2 1 1 1 1 total P3 0.019478 0.006403
|
||||
8 1 2 1 1 1 total P0 0.624575 0.131169
|
||||
9 1 2 1 1 1 total P1 0.244182 0.050123
|
||||
10 1 2 1 1 1 total P2 0.085877 0.017565
|
||||
11 1 2 1 1 1 total P3 0.019478 0.006403
|
||||
4 2 1 1 1 1 total P0 0.633925 0.260681
|
||||
5 2 1 1 1 1 total P1 0.270615 0.110590
|
||||
6 2 1 1 1 1 total P2 0.107281 0.042750
|
||||
7 2 1 1 1 1 total P3 0.012098 0.005462
|
||||
12 2 2 1 1 1 total P0 0.655214 0.153147
|
||||
13 2 2 1 1 1 total P1 0.256141 0.060250
|
||||
14 2 2 1 1 1 total P2 0.090641 0.020464
|
||||
|
|
@ -151,32 +151,32 @@
|
|||
mesh 1 group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 1.0 0.300047
|
||||
1 1 2 1 1 total 1.0 0.262180
|
||||
2 2 1 1 1 total 1.0 0.178169
|
||||
2 1 2 1 1 total 1.0 0.178169
|
||||
1 2 1 1 1 total 1.0 0.262180
|
||||
3 2 2 1 1 total 1.0 0.104797
|
||||
mesh 1 group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 1.0 0.300047
|
||||
1 1 2 1 1 total 1.0 0.262180
|
||||
2 2 1 1 1 total 1.0 0.178169
|
||||
2 1 2 1 1 total 1.0 0.178169
|
||||
1 2 1 1 1 total 1.0 0.262180
|
||||
3 2 2 1 1 total 1.0 0.108931
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 7.097008e-07 1.458546e-07
|
||||
1 1 2 1 1 total 3.984535e-07 1.157576e-07
|
||||
2 2 1 1 1 total 4.407745e-07 7.903907e-08
|
||||
2 1 2 1 1 total 4.407745e-07 7.903907e-08
|
||||
1 2 1 1 1 total 3.984535e-07 1.157576e-07
|
||||
3 2 2 1 1 total 4.750476e-07 6.207437e-08
|
||||
mesh 1 group in nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 total 0.027311 0.007397
|
||||
1 1 2 1 1 total 0.017783 0.004394
|
||||
2 2 1 1 1 total 0.017820 0.003054
|
||||
2 1 2 1 1 total 0.017820 0.003054
|
||||
1 2 1 1 1 total 0.017783 0.004394
|
||||
3 2 2 1 1 total 0.020320 0.002598
|
||||
mesh 1 group in group out nuclide mean std. dev.
|
||||
x y z
|
||||
0 1 1 1 1 1 total 0.015584 0.003404
|
||||
1 1 2 1 1 1 total 0.014200 0.003676
|
||||
2 2 1 1 1 1 total 0.017684 0.002499
|
||||
2 1 2 1 1 1 total 0.017684 0.002499
|
||||
1 2 1 1 1 1 total 0.014200 0.003676
|
||||
3 2 2 1 1 1 total 0.022259 0.002508
|
||||
mesh 1 delayedgroup group in nuclide mean std. dev.
|
||||
x y z
|
||||
|
|
@ -186,18 +186,18 @@
|
|||
3 1 1 1 4 1 total 0.000072 1.866015e-05
|
||||
4 1 1 1 5 1 total 0.000031 7.654909e-06
|
||||
5 1 1 1 6 1 total 0.000013 3.206343e-06
|
||||
6 1 2 1 1 1 total 0.000004 1.003100e-06
|
||||
7 1 2 1 2 1 total 0.000022 5.425275e-06
|
||||
8 1 2 1 3 1 total 0.000021 5.324236e-06
|
||||
9 1 2 1 4 1 total 0.000050 1.251572e-05
|
||||
10 1 2 1 5 1 total 0.000022 5.762184e-06
|
||||
11 1 2 1 6 1 total 0.000009 2.391676e-06
|
||||
12 2 1 1 1 1 total 0.000004 6.723192e-07
|
||||
13 2 1 1 2 1 total 0.000022 3.706235e-06
|
||||
14 2 1 1 3 1 total 0.000022 3.674263e-06
|
||||
15 2 1 1 4 1 total 0.000052 8.774048e-06
|
||||
16 2 1 1 5 1 total 0.000024 4.168024e-06
|
||||
17 2 1 1 6 1 total 0.000010 1.726268e-06
|
||||
12 1 2 1 1 1 total 0.000004 6.723192e-07
|
||||
13 1 2 1 2 1 total 0.000022 3.706235e-06
|
||||
14 1 2 1 3 1 total 0.000022 3.674263e-06
|
||||
15 1 2 1 4 1 total 0.000052 8.774048e-06
|
||||
16 1 2 1 5 1 total 0.000024 4.168024e-06
|
||||
17 1 2 1 6 1 total 0.000010 1.726268e-06
|
||||
6 2 1 1 1 1 total 0.000004 1.003100e-06
|
||||
7 2 1 1 2 1 total 0.000022 5.425275e-06
|
||||
8 2 1 1 3 1 total 0.000021 5.324236e-06
|
||||
9 2 1 1 4 1 total 0.000050 1.251572e-05
|
||||
10 2 1 1 5 1 total 0.000022 5.762184e-06
|
||||
11 2 1 1 6 1 total 0.000009 2.391676e-06
|
||||
18 2 2 1 1 1 total 0.000005 5.962367e-07
|
||||
19 2 2 1 2 1 total 0.000025 3.200900e-06
|
||||
20 2 2 1 3 1 total 0.000025 3.127442e-06
|
||||
|
|
@ -212,18 +212,18 @@
|
|||
3 1 1 1 4 1 total 0.0 0.000000
|
||||
4 1 1 1 5 1 total 0.0 0.000000
|
||||
5 1 1 1 6 1 total 0.0 0.000000
|
||||
6 1 2 1 1 1 total 0.0 0.000000
|
||||
7 1 2 1 2 1 total 0.0 0.000000
|
||||
8 1 2 1 3 1 total 0.0 0.000000
|
||||
9 1 2 1 4 1 total 0.0 0.000000
|
||||
10 1 2 1 5 1 total 0.0 0.000000
|
||||
11 1 2 1 6 1 total 0.0 0.000000
|
||||
12 2 1 1 1 1 total 0.0 0.000000
|
||||
13 2 1 1 2 1 total 0.0 0.000000
|
||||
14 2 1 1 3 1 total 0.0 0.000000
|
||||
15 2 1 1 4 1 total 0.0 0.000000
|
||||
16 2 1 1 5 1 total 0.0 0.000000
|
||||
17 2 1 1 6 1 total 0.0 0.000000
|
||||
12 1 2 1 1 1 total 0.0 0.000000
|
||||
13 1 2 1 2 1 total 0.0 0.000000
|
||||
14 1 2 1 3 1 total 0.0 0.000000
|
||||
15 1 2 1 4 1 total 0.0 0.000000
|
||||
16 1 2 1 5 1 total 0.0 0.000000
|
||||
17 1 2 1 6 1 total 0.0 0.000000
|
||||
6 2 1 1 1 1 total 0.0 0.000000
|
||||
7 2 1 1 2 1 total 0.0 0.000000
|
||||
8 2 1 1 3 1 total 0.0 0.000000
|
||||
9 2 1 1 4 1 total 0.0 0.000000
|
||||
10 2 1 1 5 1 total 0.0 0.000000
|
||||
11 2 1 1 6 1 total 0.0 0.000000
|
||||
18 2 2 1 1 1 total 0.0 0.000000
|
||||
19 2 2 1 2 1 total 0.0 0.000000
|
||||
20 2 2 1 3 1 total 1.0 1.414214
|
||||
|
|
@ -238,18 +238,18 @@
|
|||
3 1 1 1 4 1 total 0.002629 0.000950
|
||||
4 1 1 1 5 1 total 0.001125 0.000398
|
||||
5 1 1 1 6 1 total 0.000470 0.000166
|
||||
6 1 2 1 1 1 total 0.000228 0.000057
|
||||
7 1 2 1 2 1 total 0.001222 0.000309
|
||||
8 1 2 1 3 1 total 0.001193 0.000304
|
||||
9 1 2 1 4 1 total 0.002780 0.000713
|
||||
10 1 2 1 5 1 total 0.001250 0.000328
|
||||
11 1 2 1 6 1 total 0.000520 0.000136
|
||||
12 2 1 1 1 1 total 0.000225 0.000044
|
||||
13 2 1 1 2 1 total 0.001232 0.000242
|
||||
14 2 1 1 3 1 total 0.001216 0.000239
|
||||
15 2 1 1 4 1 total 0.002882 0.000570
|
||||
16 2 1 1 5 1 total 0.001345 0.000270
|
||||
17 2 1 1 6 1 total 0.000558 0.000112
|
||||
12 1 2 1 1 1 total 0.000225 0.000044
|
||||
13 1 2 1 2 1 total 0.001232 0.000242
|
||||
14 1 2 1 3 1 total 0.001216 0.000239
|
||||
15 1 2 1 4 1 total 0.002882 0.000570
|
||||
16 1 2 1 5 1 total 0.001345 0.000270
|
||||
17 1 2 1 6 1 total 0.000558 0.000112
|
||||
6 2 1 1 1 1 total 0.000228 0.000057
|
||||
7 2 1 1 2 1 total 0.001222 0.000309
|
||||
8 2 1 1 3 1 total 0.001193 0.000304
|
||||
9 2 1 1 4 1 total 0.002780 0.000713
|
||||
10 2 1 1 5 1 total 0.001250 0.000328
|
||||
11 2 1 1 6 1 total 0.000520 0.000136
|
||||
18 2 2 1 1 1 total 0.000227 0.000027
|
||||
19 2 2 1 2 1 total 0.001225 0.000143
|
||||
20 2 2 1 3 1 total 0.001201 0.000140
|
||||
|
|
@ -264,18 +264,18 @@
|
|||
3 1 1 1 4 1 total 0.304289 0.106753
|
||||
4 1 1 1 5 1 total 0.855760 0.286466
|
||||
5 1 1 1 6 1 total 2.874120 0.965609
|
||||
6 1 2 1 1 1 total 0.013357 0.003345
|
||||
7 1 2 1 2 1 total 0.032590 0.008273
|
||||
8 1 2 1 3 1 total 0.121103 0.031074
|
||||
9 1 2 1 4 1 total 0.306111 0.080011
|
||||
10 1 2 1 5 1 total 0.862660 0.235694
|
||||
11 1 2 1 6 1 total 2.897534 0.788926
|
||||
12 2 1 1 1 1 total 0.013367 0.002548
|
||||
13 2 1 1 2 1 total 0.032520 0.006266
|
||||
14 2 1 1 3 1 total 0.121250 0.023544
|
||||
15 2 1 1 4 1 total 0.307552 0.060464
|
||||
16 2 1 1 5 1 total 0.867665 0.175131
|
||||
17 2 1 1 6 1 total 2.914635 0.587161
|
||||
12 1 2 1 1 1 total 0.013367 0.002548
|
||||
13 1 2 1 2 1 total 0.032520 0.006266
|
||||
14 1 2 1 3 1 total 0.121250 0.023544
|
||||
15 1 2 1 4 1 total 0.307552 0.060464
|
||||
16 1 2 1 5 1 total 0.867665 0.175131
|
||||
17 1 2 1 6 1 total 2.914635 0.587161
|
||||
6 2 1 1 1 1 total 0.013357 0.003345
|
||||
7 2 1 1 2 1 total 0.032590 0.008273
|
||||
8 2 1 1 3 1 total 0.121103 0.031074
|
||||
9 2 1 1 4 1 total 0.306111 0.080011
|
||||
10 2 1 1 5 1 total 0.862660 0.235694
|
||||
11 2 1 1 6 1 total 2.897534 0.788926
|
||||
18 2 2 1 1 1 total 0.013360 0.001587
|
||||
19 2 2 1 2 1 total 0.032564 0.003810
|
||||
20 2 2 1 3 1 total 0.121158 0.014038
|
||||
|
|
@ -290,18 +290,18 @@
|
|||
3 1 1 1 4 1 1 total 0.00000 0.000000
|
||||
4 1 1 1 5 1 1 total 0.00000 0.000000
|
||||
5 1 1 1 6 1 1 total 0.00000 0.000000
|
||||
6 1 2 1 1 1 1 total 0.00000 0.000000
|
||||
7 1 2 1 2 1 1 total 0.00000 0.000000
|
||||
8 1 2 1 3 1 1 total 0.00000 0.000000
|
||||
9 1 2 1 4 1 1 total 0.00000 0.000000
|
||||
10 1 2 1 5 1 1 total 0.00000 0.000000
|
||||
11 1 2 1 6 1 1 total 0.00000 0.000000
|
||||
12 2 1 1 1 1 1 total 0.00000 0.000000
|
||||
13 2 1 1 2 1 1 total 0.00000 0.000000
|
||||
14 2 1 1 3 1 1 total 0.00000 0.000000
|
||||
15 2 1 1 4 1 1 total 0.00000 0.000000
|
||||
16 2 1 1 5 1 1 total 0.00000 0.000000
|
||||
17 2 1 1 6 1 1 total 0.00000 0.000000
|
||||
12 1 2 1 1 1 1 total 0.00000 0.000000
|
||||
13 1 2 1 2 1 1 total 0.00000 0.000000
|
||||
14 1 2 1 3 1 1 total 0.00000 0.000000
|
||||
15 1 2 1 4 1 1 total 0.00000 0.000000
|
||||
16 1 2 1 5 1 1 total 0.00000 0.000000
|
||||
17 1 2 1 6 1 1 total 0.00000 0.000000
|
||||
6 2 1 1 1 1 1 total 0.00000 0.000000
|
||||
7 2 1 1 2 1 1 total 0.00000 0.000000
|
||||
8 2 1 1 3 1 1 total 0.00000 0.000000
|
||||
9 2 1 1 4 1 1 total 0.00000 0.000000
|
||||
10 2 1 1 5 1 1 total 0.00000 0.000000
|
||||
11 2 1 1 6 1 1 total 0.00000 0.000000
|
||||
18 2 2 1 1 1 1 total 0.00000 0.000000
|
||||
19 2 2 1 2 1 1 total 0.00000 0.000000
|
||||
20 2 2 1 3 1 1 total 0.00015 0.000151
|
||||
|
|
|
|||
|
|
@ -48,20 +48,20 @@
|
|||
13 (500, 5000, 50000) 6.25e-01 2.00e+07 U235 nu-fission 0.00e+00 0.00e+00
|
||||
14 (500, 5000, 50000) 6.25e-01 2.00e+07 U238 fission 0.00e+00 0.00e+00
|
||||
15 (500, 5000, 50000) 6.25e-01 2.00e+07 U238 nu-fission 0.00e+00 0.00e+00
|
||||
sum(mesh) energy low [eV] energy high [eV] nuclide score mean std. dev.
|
||||
0 ((1, 1, 1), (1, 2, 1)) 0.00e+00 6.25e-01 U235 fission 1.48e-02 3.65e-03
|
||||
1 ((1, 1, 1), (1, 2, 1)) 0.00e+00 6.25e-01 U235 nu-fission 3.60e-02 8.90e-03
|
||||
2 ((1, 1, 1), (1, 2, 1)) 0.00e+00 6.25e-01 U238 fission 2.06e-08 4.98e-09
|
||||
3 ((1, 1, 1), (1, 2, 1)) 0.00e+00 6.25e-01 U238 nu-fission 5.14e-08 1.24e-08
|
||||
4 ((1, 1, 1), (1, 2, 1)) 6.25e-01 2.00e+07 U235 fission 2.23e-03 3.92e-04
|
||||
5 ((1, 1, 1), (1, 2, 1)) 6.25e-01 2.00e+07 U235 nu-fission 5.45e-03 9.56e-04
|
||||
6 ((1, 1, 1), (1, 2, 1)) 6.25e-01 2.00e+07 U238 fission 5.58e-04 2.08e-04
|
||||
7 ((1, 1, 1), (1, 2, 1)) 6.25e-01 2.00e+07 U238 nu-fission 1.50e-03 5.43e-04
|
||||
8 ((2, 1, 1), (2, 2, 1)) 0.00e+00 6.25e-01 U235 fission 2.56e-02 5.50e-03
|
||||
9 ((2, 1, 1), (2, 2, 1)) 0.00e+00 6.25e-01 U235 nu-fission 6.24e-02 1.34e-02
|
||||
10 ((2, 1, 1), (2, 2, 1)) 0.00e+00 6.25e-01 U238 fission 3.55e-08 7.70e-09
|
||||
11 ((2, 1, 1), (2, 2, 1)) 0.00e+00 6.25e-01 U238 nu-fission 8.85e-08 1.92e-08
|
||||
12 ((2, 1, 1), (2, 2, 1)) 6.25e-01 2.00e+07 U235 fission 5.01e-03 1.38e-03
|
||||
13 ((2, 1, 1), (2, 2, 1)) 6.25e-01 2.00e+07 U235 nu-fission 1.22e-02 3.37e-03
|
||||
14 ((2, 1, 1), (2, 2, 1)) 6.25e-01 2.00e+07 U238 fission 2.40e-03 2.69e-04
|
||||
15 ((2, 1, 1), (2, 2, 1)) 6.25e-01 2.00e+07 U238 nu-fission 6.60e-03 7.63e-04
|
||||
sum(mesh) energy low [eV] energy high [eV] nuclide score mean std. dev.
|
||||
0 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 fission 0.00e+00 0.00e+00
|
||||
1 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 nu-fission 0.00e+00 0.00e+00
|
||||
2 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 fission 0.00e+00 0.00e+00
|
||||
3 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 nu-fission 0.00e+00 0.00e+00
|
||||
4 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 fission 1.60e-04 1.60e-04
|
||||
5 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 nu-fission 3.91e-04 3.91e-04
|
||||
6 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 fission 5.12e-05 5.12e-05
|
||||
7 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 nu-fission 1.36e-04 1.36e-04
|
||||
8 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 fission 4.04e-02 6.60e-03
|
||||
9 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 nu-fission 9.85e-02 1.61e-02
|
||||
10 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 fission 5.61e-08 9.18e-09
|
||||
11 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 nu-fission 1.40e-07 2.29e-08
|
||||
12 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 fission 7.08e-03 1.43e-03
|
||||
13 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 nu-fission 1.73e-02 3.48e-03
|
||||
14 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 fission 2.91e-03 3.36e-04
|
||||
15 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 nu-fission 7.96e-03 9.27e-04
|
||||
|
|
|
|||
|
|
@ -126,10 +126,10 @@ class TallySliceMergeTestHarness(PyAPITestHarness):
|
|||
|
||||
# Sum up a few subdomains from the distribcell tally
|
||||
sum1 = distribcell_tally.summation(filter_type=openmc.DistribcellFilter,
|
||||
filter_bins=[0,100,2000,30000])
|
||||
filter_bins=[0, 100, 2000, 30000])
|
||||
# Sum up a few subdomains from the distribcell tally
|
||||
sum2 = distribcell_tally.summation(filter_type=openmc.DistribcellFilter,
|
||||
filter_bins=[500,5000,50000])
|
||||
filter_bins=[500, 5000, 50000])
|
||||
|
||||
# Merge the distribcell tally slices
|
||||
merge_tally = sum1.merge(sum2)
|
||||
|
|
@ -143,10 +143,10 @@ class TallySliceMergeTestHarness(PyAPITestHarness):
|
|||
|
||||
# Sum up a few subdomains from the mesh tally
|
||||
sum1 = mesh_tally.summation(filter_type=openmc.MeshFilter,
|
||||
filter_bins=[(1,1,1), (1,2,1)])
|
||||
filter_bins=[(1, 1), (1, 2)])
|
||||
# Sum up a few subdomains from the mesh tally
|
||||
sum2 = mesh_tally.summation(filter_type=openmc.MeshFilter,
|
||||
filter_bins=[(2,1,1), (2,2,1)])
|
||||
filter_bins=[(2, 1), (2, 2)])
|
||||
|
||||
# Merge the mesh tally slices
|
||||
merge_tally = sum1.merge(sum2)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue