Compare commits

...
Sign in to create a new pull request.

13 commits
main ... rings

Author SHA1 Message Date
Paul Romano
2bbf21b1d8 Add SMR assembly model 2018-01-19 13:48:31 -06:00
Paul Romano
292dbfd675 Default to a single ring/axial region 2018-01-17 12:34:35 -06:00
Paul Romano
a957d442a8 Special treatment for a single radial/axial region in fuel pins 2018-01-17 12:18:11 -06:00
Paul Romano
dac1af47ad Add number of rings/axial segments as command-line options 2018-01-17 12:15:11 -06:00
Paul Romano
c1082420e4 Use argparse in build-fresh.py 2018-01-17 06:47:03 -06:00
Paul Romano
a20d15c0cb Make number of rings configurable 2018-01-17 06:27:01 -06:00
Paul Romano
96b1ae8513 Generate pin universes within function 2018-01-16 22:44:15 -06:00
Paul Romano
0b1965e27f Put geometry and reflector/assembly universes in functions 2018-01-16 22:28:44 -06:00
Paul Romano
337d4cff69 Make sure sleeve appears on fifth grid spacer 2018-01-16 14:14:06 -06:00
Paul Romano
46e379e169 Don't break up fuel region over multiple universes in z direction 2018-01-16 14:14:06 -06:00
Paul Romano
7e735bec85 Fix number of pellets in SMR 2018-01-16 14:14:06 -06:00
Paul Romano
186c525c8a Add axial subdivision of fuel pins 2018-01-16 14:14:06 -06:00
Paul Romano
6762ab0237 Add ten rings in fuel 2018-01-16 14:14:06 -06:00
25 changed files with 4692 additions and 1960 deletions

1
.gitattributes vendored
View file

@ -2,3 +2,4 @@ assembly/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text
2x2-periodic/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text 2x2-periodic/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text
2x2-reflector/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text 2x2-reflector/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text
smr/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text smr/depleted/materials.xml filter=lfs diff=lfs merge=lfs -text
smr/assembly/materials.xml filter=lfs diff=lfs merge=lfs -text

2630
smr/assembly/geometry.xml Normal file

File diff suppressed because it is too large Load diff

BIN
smr/assembly/materials.xml (Stored with Git LFS) Normal file

Binary file not shown.

16
smr/assembly/settings.xml Normal file
View file

@ -0,0 +1,16 @@
<?xml version='1.0' encoding='utf-8'?>
<settings>
<run_mode>eigenvalue</run_mode>
<particles>10000</particles>
<batches>200</batches>
<inactive>100</inactive>
<source strength="1.0">
<space type="fission">
<parameters>-10.751819999999999 -10.751819999999999 36.007 10.751819999999999 10.751819999999999 236.0066</parameters>
</space>
</source>
<output>
<tallies>false</tallies>
<summary>false</summary>
</output>
</settings>

11
smr/assembly/tallies.xml Normal file

File diff suppressed because one or more lines are too long

123
smr/build-assembly.py Normal file
View file

@ -0,0 +1,123 @@
#!/usr/bin/env python3
import os
import shutil
import copy
import argparse
import numpy as np
import openmc
from smr.materials import materials
from smr.surfaces import surfs, lattice_pitch, bottom_fuel_stack, top_active_core
from smr.assemblies import assembly_universes
# Define command-line options
parser = argparse.ArgumentParser()
parser.add_argument('-m', '--multipole', action='store_true',
help='Whether to use multipole cross sections')
parser.add_argument('-t', '--tallies', choices=('cell', 'mat'), default='mat',
help='Whether to use distribmats or distribcells for tallies')
parser.add_argument('-r', '--rings', type=int, default=10,
help='Number of annular regions in fuel')
parser.add_argument('-a', '--axial', type=int, default=196,
help='Number of axial subdivisions in fuel')
args = parser.parse_args()
# Define geometry with a single assembly
assembly = assembly_universes(args.rings, args.axial)
lattice_sides = openmc.model.get_rectangular_prism(lattice_pitch, lattice_pitch,
boundary_type='reflective')
main_cell = openmc.Cell(
fill=assembly['Assembly (3.1%) 16BA'],
region=lattice_sides & +surfs['lower bound'] & -surfs['upper bound']
)
root_univ = openmc.Universe(cells=[main_cell])
geometry = openmc.Geometry(root_univ)
#### "Differentiate" the geometry if using distribmats
if args.tallies == 'mat':
# Count the number of instances for each cell and material
geometry.determine_paths(instances_only=True)
# Extract all cells filled by a fuel material
fuel_mats = {m for m in materials if 'UO2 Fuel' in m.name}
for cell in geometry.get_all_material_cells().values():
if cell.fill in fuel_mats:
# Fill cell with list of "differentiated" materials
cell.fill = [cell.fill.clone() for i in range(cell.num_instances)]
#### Create OpenMC "materials.xml" file
all_materials = geometry.get_all_materials()
materials = openmc.Materials(all_materials.values())
materials.export_to_xml()
#### Create OpenMC "geometry.xml" file
geometry.export_to_xml()
#### Create OpenMC "settings.xml" file
# Construct uniform initial source distribution over fissionable zones
lower_left = (-lattice_pitch/2, -lattice_pitch/2, bottom_fuel_stack)
upper_right = (lattice_pitch/2, lattice_pitch/2, top_active_core)
source = openmc.source.Source(space=openmc.stats.Box(lower_left, upper_right))
source.space.only_fissionable = True
settings = openmc.Settings()
settings.batches = 200
settings.inactive = 100
settings.particles = 10000
settings.output = {'tallies': False, 'summary': False}
settings.source = source
settings.sourcepoint_write = False
if args.multipole:
settings.temperature = {'multipole': True, 'tolerance': 1000}
settings.export_to_xml()
#### Create OpenMC "tallies.xml" file
tallies = openmc.Tallies()
# Extract all fuel materials
materials = geometry.get_materials_by_name(name='Fuel', matching=False)
# If using distribcells, create distribcell tally needed for depletion
if args.tallies == 'cell':
# Extract all cells filled by a fuel material
fuel_cells = []
for cell in geometry.get_all_cells().values():
if cell.fill in materials:
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = cell.fill.get_nuclides()
tally.filters.append(openmc.DistribcellFilter([cell]))
tallies.append(tally)
# If using distribmats, create material tally needed for depletion
elif args.tallies == 'mat':
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = materials[0].get_nuclides()
tally.filters = [openmc.MaterialFilter(materials)]
tallies.append(tally)
tallies.export_to_xml()
#### Move all XML files to 'fresh' directory
if not os.path.exists('assembly'):
os.makedirs('assembly')
shutil.move('materials.xml', 'assembly/materials.xml')
shutil.move('geometry.xml', 'assembly/geometry.xml')
shutil.move('settings.xml', 'assembly/settings.xml')
shutil.move('tallies.xml', 'assembly/tallies.xml')

View file

@ -64,7 +64,7 @@ settings.entropy_dimension = [15, 15, 1]
# MeV/second cm from CASMO # MeV/second cm from CASMO
settings.power = 2.337e15 * ((17.*17.*37.) / 1.5**2) * height settings.power = 2.337e15 * ((17.*17.*37.) / 1.5**2) * height
settings.dt_vec = dt settings.dt_vec = dt
settings.output_dir = 'depleted' settings.output_dir = 'core-depleted'
op = opendeplete.OpenMCOperator(geometry, settings) op = opendeplete.OpenMCOperator(geometry, settings)

121
smr/build-core-fresh.py Normal file
View file

@ -0,0 +1,121 @@
#!/usr/bin/env python3
import os
import shutil
import copy
import argparse
import numpy as np
import openmc
from smr.materials import materials
from smr.plots import plots
from smr.surfaces import lattice_pitch, bottom_fuel_stack, top_active_core
from smr.core import core_geometry
# Define command-line options
parser = argparse.ArgumentParser()
parser.add_argument('-m', '--multipole', action='store_true',
help='Whether to use multipole cross sections')
parser.add_argument('-t', '--tallies', choices=('cell', 'mat'), default='cell',
help='Whether to use distribmats or distribcells for tallies')
parser.add_argument('-r', '--rings', type=int, default=1,
help='Number of annular regions in fuel')
parser.add_argument('-a', '--axial', type=int, default=1,
help='Number of axial subdivisions in fuel')
args = parser.parse_args()
geometry = core_geometry(args.rings, args.axial)
#### "Differentiate" the geometry if using distribmats
if args.tallies == 'mat':
# Count the number of instances for each cell and material
geometry.determine_paths(instances_only=True)
# Extract all cells filled by a fuel material
fuel_mats = {m for m in materials if 'UO2 Fuel' in m.name}
for cell in geometry.get_all_cells().values():
if cell.fill in fuel_mats:
# Fill cell with list of "differentiated" materials
cell.fill = [cell.fill.clone() for i in range(cell.num_instances)]
#### Create OpenMC "materials.xml" file
all_materials = geometry.get_all_materials()
materials = openmc.Materials(all_materials.values())
materials.export_to_xml()
#### Create OpenMC "geometry.xml" file
geometry.export_to_xml()
#### Create OpenMC "settings.xml" file
# Construct uniform initial source distribution over fissionable zones
lower_left = [-7.*lattice_pitch/2., -7.*lattice_pitch/2., bottom_fuel_stack]
upper_right = [+7.*lattice_pitch/2., +7.*lattice_pitch/2., top_active_core]
source = openmc.source.Source(space=openmc.stats.Box(lower_left, upper_right))
source.space.only_fissionable = True
settings = openmc.Settings()
settings.batches = 200
settings.inactive = 100
settings.particles = 10000
settings.output = {'tallies': False}
settings.source = source
settings.sourcepoint_write = False
if args.multipole:
settings.temperature = {'multipole': True, 'tolerance': 1000}
settings.export_to_xml()
#### Create OpenMC "plots.xml" file
plots.export_to_xml()
#### Create OpenMC "tallies.xml" file
tallies = openmc.Tallies()
# Extract all fuel materials
materials = geometry.get_materials_by_name(name='Fuel', matching=False)
# If using distribcells, create distribcell tally needed for depletion
if args.tallies == 'cell':
# Extract all cells filled by a fuel material
fuel_cells = []
for cell in geometry.get_all_cells().values():
if cell.fill in materials:
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = cell.fill.get_nuclides()
tally.filters.append(openmc.DistribcellFilter([cell]))
tallies.append(tally)
# If using distribmats, create material tally needed for depletion
elif args.tallies == 'mat':
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = materials[0].get_nuclides()
tally.filters = [openmc.MaterialFilter(materials)]
tallies.append(tally)
tallies.export_to_xml()
#### Move all XML files to 'fresh' directory
if not os.path.exists('core-fresh'):
os.makedirs('core-fresh')
shutil.move('materials.xml', 'core-fresh/materials.xml')
shutil.move('geometry.xml', 'core-fresh/geometry.xml')
shutil.move('settings.xml', 'core-fresh/settings.xml')
shutil.move('tallies.xml', 'core-fresh/tallies.xml')
shutil.move('plots.xml', 'core-fresh/plots.xml')

View file

@ -1,163 +0,0 @@
#!/usr/bin/env python3
import os
import shutil
import copy
import numpy as np
import openmc
from smr.materials import materials
from smr.plots import plots
from smr.surfaces import lattice_pitch, bottom_fuel_stack, top_active_core
from smr.core import geometry
#### Query the user for options
# Query the user on whether to use multipole cross sections
multipole = input('Use multipole cross sections? (y/n): ').lower()
multipole = (multipole == 'y')
# Query the user on whether to use distribmats or distribcells
# If using distribmats, the geometry must be "differentiated" with unique
# material instances for each instance of a fuel cell
distrib = input('Use distribmat or distribcells? [mat/cell]: ').lower()
if distrib not in ['cell', 'mat']:
raise InputError('Distrib type "{}" is unsupported'.format(distrib))
#### "Differentiate" the geometry if using distribmats
if distrib == 'mat':
# Count the number of instances for each cell and material
geometry.determine_paths()
# Extract all cells filled by a fuel material
fuel_cells = geometry.get_cells_by_name(
name='(1.6%) (0)', case_sensitive=True)
fuel_cells.extend(geometry.get_cells_by_name(
name='(1.6%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(1.6%) grid (intermediate) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) grid (intermediate) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) grid (intermediate) (0)', case_sensitive=True))
# Assign distribmats for each material
for cell in fuel_cells:
new_materials = []
for i in range(cell.num_instances):
new_materials.append(cell.fill.clone())
# Fill cell with list of "differentiated" materials
cell.fill = new_materials
#### Create OpenMC "materials.xml" file
all_materials = geometry.get_all_materials()
materials = openmc.Materials(all_materials.values())
materials.export_to_xml()
#### Create OpenMC "geometry.xml" file
geometry.export_to_xml()
#### Create OpenMC "settings.xml" file
# Construct uniform initial source distribution over fissionable zones
lower_left = [-7.*lattice_pitch/2., -7.*lattice_pitch/2., bottom_fuel_stack]
upper_right = [+7.*lattice_pitch/2., +7.*lattice_pitch/2., top_active_core]
source = openmc.source.Source(space=openmc.stats.Box(lower_left, upper_right))
source.space.only_fissionable = True
settings = openmc.Settings()
settings.batches = 200
settings.inactive = 100
settings.particles = 10000
settings.output = {'tallies': False}
settings.source = source
settings.sourcepoint_write = False
if multipole:
settings.temperature = {'multipole': True, 'tolerance': 1000}
settings.export_to_xml()
#### Create OpenMC "plots.xml" file
plots.export_to_xml()
#### Create OpenMC "tallies.xml" file
tallies = openmc.Tallies()
# Extract all fuel materials
materials = geometry.get_materials_by_name(name='Fuel', matching=False)
# If using distribcells, create distribcell tally needed for depletion
if distrib == 'cell':
# Extract all cells filled by a fuel material
fuel_cells = geometry.get_cells_by_name(
name='(1.6%) (0)', case_sensitive=True)
fuel_cells.extend(geometry.get_cells_by_name(
name='(1.6%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(1.6%) grid (intermediate) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(2.4%) grid (intermediate) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) grid (bottom) (0)', case_sensitive=True))
fuel_cells.extend(geometry.get_cells_by_name(
name='(3.1%) grid (intermediate) (0)', case_sensitive=True))
for cell in fuel_cells:
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = cell.fill.get_nuclides()
tally.filters.append(openmc.DistribcellFilter([cell.id]))
tallies.append(tally)
# If using distribmats, create material tally needed for depletion
elif distrib == 'mat':
tally = openmc.Tally(name='depletion tally')
tally.scores = ['(n,p)', '(n,a)', '(n,gamma)',
'fission', '(n,2n)', '(n,3n)', '(n,4n)']
tally.nuclides = materials[0].get_nuclides()
material_ids = [material.id for material in materials]
tally.filters.append(openmc.MaterialFilter(material_ids))
tallies.append(tally)
tallies.export_to_xml()
#### Move all XML files to 'fresh' directory
if not os.path.exists('fresh'):
os.makedirs('fresh')
shutil.move('materials.xml', 'fresh/materials.xml')
shutil.move('geometry.xml', 'fresh/geometry.xml')
shutil.move('settings.xml', 'fresh/settings.xml')
shutil.move('tallies.xml', 'fresh/tallies.xml')
shutil.move('plots.xml', 'fresh/plots.xml')

View file

@ -49,7 +49,7 @@
<cell fill="2" id="47" name="GT empty (17)" region="49 -50" universe="10" /> <cell fill="2" id="47" name="GT empty (17)" region="49 -50" universe="10" />
<cell fill="2" id="48" name="GT empty (18)" region="50 -51" universe="10" /> <cell fill="2" id="48" name="GT empty (18)" region="50 -51" universe="10" />
<cell fill="1" id="49" name="GT empty (19)" region="51 -52" universe="10" /> <cell fill="1" id="49" name="GT empty (19)" region="51 -52" universe="10" />
<cell fill="1" id="50" name="GT empty (last)" region="52" universe="10" /> <cell fill="1" id="50" name="GT empty (20)" region="52" universe="10" />
<cell fill="1" id="51" name="GT empty instr (0)" region="-32" universe="11" /> <cell fill="1" id="51" name="GT empty instr (0)" region="-32" universe="11" />
<cell fill="1" id="52" name="GT empty instr (1)" region="32 -33" universe="11" /> <cell fill="1" id="52" name="GT empty instr (1)" region="32 -33" universe="11" />
<cell fill="1" id="53" name="GT empty instr (2)" region="33 -34" universe="11" /> <cell fill="1" id="53" name="GT empty instr (2)" region="33 -34" universe="11" />
@ -70,7 +70,7 @@
<cell fill="10" id="68" name="GT empty instr (17)" region="49 -50" universe="11" /> <cell fill="10" id="68" name="GT empty instr (17)" region="49 -50" universe="11" />
<cell fill="10" id="69" name="GT empty instr (18)" region="50 -51" universe="11" /> <cell fill="10" id="69" name="GT empty instr (18)" region="50 -51" universe="11" />
<cell fill="1" id="70" name="GT empty instr (19)" region="51 -52" universe="11" /> <cell fill="1" id="70" name="GT empty instr (19)" region="51 -52" universe="11" />
<cell fill="1" id="71" name="GT empty instr (last)" region="52" universe="11" /> <cell fill="1" id="71" name="GT empty instr (20)" region="52" universe="11" />
<cell id="72" material="2" name="IT (0)" region="-16" universe="12" /> <cell id="72" material="2" name="IT (0)" region="-16" universe="12" />
<cell id="73" material="6" name="IT (1)" region="16 -17" universe="12" /> <cell id="73" material="6" name="IT (1)" region="16 -17" universe="12" />
<cell id="74" material="8" name="IT (2)" region="17 -5" universe="12" /> <cell id="74" material="8" name="IT (2)" region="17 -5" universe="12" />
@ -111,7 +111,7 @@
<cell fill="12" id="114" name="GT instr (17)" region="49 -50" universe="17" /> <cell fill="12" id="114" name="GT instr (17)" region="49 -50" universe="17" />
<cell fill="12" id="115" name="GT instr (18)" region="50 -51" universe="17" /> <cell fill="12" id="115" name="GT instr (18)" region="50 -51" universe="17" />
<cell fill="16" id="116" name="GT instr (19)" region="51 -52" universe="17" /> <cell fill="16" id="116" name="GT instr (19)" region="51 -52" universe="17" />
<cell fill="1" id="117" name="GT instr (last)" region="52" universe="17" /> <cell fill="1" id="117" name="GT instr (20)" region="52" universe="17" />
<cell id="118" material="7" name="CR (0)" region="-9" universe="18" /> <cell id="118" material="7" name="CR (0)" region="-9" universe="18" />
<cell id="119" material="2" name="CR (1)" region="9 -10" universe="18" /> <cell id="119" material="2" name="CR (1)" region="9 -10" universe="18" />
<cell id="120" material="4" name="CR (2)" region="10 -5" universe="18" /> <cell id="120" material="4" name="CR (2)" region="10 -5" universe="18" />
@ -169,27 +169,27 @@
<cell fill="6" id="310" name="GT CR bank D dummy (1)" region="34 -48" universe="46" /> <cell fill="6" id="310" name="GT CR bank D dummy (1)" region="34 -48" universe="46" />
<cell fill="10" id="311" name="GT CR bank D dummy (2)" region="48 -70" universe="46" /> <cell fill="10" id="311" name="GT CR bank D dummy (2)" region="48 -70" universe="46" />
<cell fill="18" id="312" name="GT CR bank D dummy (3)" region="70 -69" universe="46" /> <cell fill="18" id="312" name="GT CR bank D dummy (3)" region="70 -69" universe="46" />
<cell fill="22" id="313" name="GT CR bank D dummy (last)" region="69" universe="46" /> <cell fill="22" id="313" name="GT CR bank D dummy (4)" region="69" universe="46" />
<cell fill="1" id="314" name="GT CR bank D dummy grid (bottom) (0)" region="-34" universe="47" /> <cell fill="1" id="314" name="GT CR bank D dummy grid (bottom) (0)" region="-34" universe="47" />
<cell fill="7" id="315" name="GT CR bank D dummy grid (bottom) (1)" region="34 -48" universe="47" /> <cell fill="7" id="315" name="GT CR bank D dummy grid (bottom) (1)" region="34 -48" universe="47" />
<cell fill="3" id="316" name="GT CR bank D dummy grid (bottom) (2)" region="48 -70" universe="47" /> <cell fill="3" id="316" name="GT CR bank D dummy grid (bottom) (2)" region="48 -70" universe="47" />
<cell fill="19" id="317" name="GT CR bank D dummy grid (bottom) (3)" region="70 -69" universe="47" /> <cell fill="19" id="317" name="GT CR bank D dummy grid (bottom) (3)" region="70 -69" universe="47" />
<cell fill="23" id="318" name="GT CR bank D dummy grid (bottom) (last)" region="69" universe="47" /> <cell fill="23" id="318" name="GT CR bank D dummy grid (bottom) (4)" region="69" universe="47" />
<cell fill="1" id="319" name="GT CR bank D dummy grid (intermediate) (0)" region="-34" universe="48" /> <cell fill="1" id="319" name="GT CR bank D dummy grid (intermediate) (0)" region="-34" universe="48" />
<cell fill="8" id="320" name="GT CR bank D dummy grid (intermediate) (1)" region="34 -48" universe="48" /> <cell fill="8" id="320" name="GT CR bank D dummy grid (intermediate) (1)" region="34 -48" universe="48" />
<cell fill="4" id="321" name="GT CR bank D dummy grid (intermediate) (2)" region="48 -70" universe="48" /> <cell fill="4" id="321" name="GT CR bank D dummy grid (intermediate) (2)" region="48 -70" universe="48" />
<cell fill="20" id="322" name="GT CR bank D dummy grid (intermediate) (3)" region="70 -69" universe="48" /> <cell fill="20" id="322" name="GT CR bank D dummy grid (intermediate) (3)" region="70 -69" universe="48" />
<cell fill="24" id="323" name="GT CR bank D dummy grid (intermediate) (last)" region="69" universe="48" /> <cell fill="24" id="323" name="GT CR bank D dummy grid (intermediate) (4)" region="69" universe="48" />
<cell fill="1" id="324" name="GT CR bank D dummy nozzle (0)" region="-34" universe="49" /> <cell fill="1" id="324" name="GT CR bank D dummy nozzle (0)" region="-34" universe="49" />
<cell fill="9" id="325" name="GT CR bank D dummy nozzle (1)" region="34 -48" universe="49" /> <cell fill="9" id="325" name="GT CR bank D dummy nozzle (1)" region="34 -48" universe="49" />
<cell fill="5" id="326" name="GT CR bank D dummy nozzle (2)" region="48 -70" universe="49" /> <cell fill="5" id="326" name="GT CR bank D dummy nozzle (2)" region="48 -70" universe="49" />
<cell fill="21" id="327" name="GT CR bank D dummy nozzle (3)" region="70 -69" universe="49" /> <cell fill="21" id="327" name="GT CR bank D dummy nozzle (3)" region="70 -69" universe="49" />
<cell fill="25" id="328" name="GT CR bank D dummy nozzle (last)" region="69" universe="49" /> <cell fill="25" id="328" name="GT CR bank D dummy nozzle (4)" region="69" universe="49" />
<cell fill="1" id="329" name="GT CR bank D dummy bare (0)" region="-34" universe="50" /> <cell fill="1" id="329" name="GT CR bank D dummy bare (0)" region="-34" universe="50" />
<cell fill="9" id="330" name="GT CR bank D dummy bare (1)" region="34 -48" universe="50" /> <cell fill="9" id="330" name="GT CR bank D dummy bare (1)" region="34 -48" universe="50" />
<cell fill="5" id="331" name="GT CR bank D dummy bare (2)" region="48 -70" universe="50" /> <cell fill="5" id="331" name="GT CR bank D dummy bare (2)" region="48 -70" universe="50" />
<cell fill="27" id="332" name="GT CR bank D dummy bare (3)" region="70 -69" universe="50" /> <cell fill="27" id="332" name="GT CR bank D dummy bare (3)" region="70 -69" universe="50" />
<cell fill="26" id="333" name="GT CR bank D dummy bare (last)" region="69" universe="50" /> <cell fill="26" id="333" name="GT CR bank D dummy bare (4)" region="69" universe="50" />
<cell fill="1" id="334" name="GT CR bank D (0)" region="-32" universe="51" /> <cell fill="1" id="334" name="GT CR bank D (0)" region="-32" universe="51" />
<cell fill="49" id="335" name="GT CR bank D (1)" region="32 -33" universe="51" /> <cell fill="49" id="335" name="GT CR bank D (1)" region="32 -33" universe="51" />
<cell fill="49" id="336" name="GT CR bank D (2)" region="33 -34" universe="51" /> <cell fill="49" id="336" name="GT CR bank D (2)" region="33 -34" universe="51" />
@ -210,7 +210,7 @@
<cell fill="46" id="351" name="GT CR bank D (17)" region="49 -50" universe="51" /> <cell fill="46" id="351" name="GT CR bank D (17)" region="49 -50" universe="51" />
<cell fill="46" id="352" name="GT CR bank D (18)" region="50 -51" universe="51" /> <cell fill="46" id="352" name="GT CR bank D (18)" region="50 -51" universe="51" />
<cell fill="50" id="353" name="GT CR bank D (19)" region="51 -52" universe="51" /> <cell fill="50" id="353" name="GT CR bank D (19)" region="51 -52" universe="51" />
<cell fill="50" id="354" name="GT CR bank D (last)" region="52" universe="51" /> <cell fill="50" id="354" name="GT CR bank D (20)" region="52" universe="51" />
<cell id="585" material="2" name="BA (0)" region="-12" universe="82" /> <cell id="585" material="2" name="BA (0)" region="-12" universe="82" />
<cell id="586" material="4" name="BA (1)" region="12 -13" universe="82" /> <cell id="586" material="4" name="BA (1)" region="12 -13" universe="82" />
<cell id="587" material="2" name="BA (2)" region="13 -14" universe="82" /> <cell id="587" material="2" name="BA (2)" region="13 -14" universe="82" />
@ -276,7 +276,7 @@
<cell fill="88" id="667" name="BA stack (18)" region="49 -50" universe="90" /> <cell fill="88" id="667" name="BA stack (18)" region="49 -50" universe="90" />
<cell fill="88" id="668" name="BA stack (19)" region="50 -51" universe="90" /> <cell fill="88" id="668" name="BA stack (19)" region="50 -51" universe="90" />
<cell fill="89" id="669" name="BA stack (20)" region="51 -52" universe="90" /> <cell fill="89" id="669" name="BA stack (20)" region="51 -52" universe="90" />
<cell fill="1" id="670" name="BA stack (last)" region="52" universe="90" /> <cell fill="1" id="670" name="BA stack (21)" region="52" universe="90" />
<cell id="671" material="4" name="SS pin (0)" region="-4" universe="91" /> <cell id="671" material="4" name="SS pin (0)" region="-4" universe="91" />
<cell id="672" material="8" name="SS pin (last)" region="4" universe="91" /> <cell id="672" material="8" name="SS pin (last)" region="4" universe="91" />
<cell id="673" material="6" name="end plug (0)" region="-4" universe="92" /> <cell id="673" material="6" name="end plug (0)" region="-4" universe="92" />
@ -290,350 +290,333 @@
<cell id="681" material="6" name="pin plenum grid (intermediate) (2)" region="3 -4" universe="94" /> <cell id="681" material="6" name="pin plenum grid (intermediate) (2)" region="3 -4" universe="94" />
<cell id="682" material="8" name="pin plenum grid (intermediate) (last)" region="4 20 -21 22 -23" universe="94" /> <cell id="682" material="8" name="pin plenum grid (intermediate) (last)" region="4 20 -21 22 -23" universe="94" />
<cell id="683" material="6" name="pin plenum grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="94" /> <cell id="683" material="6" name="pin plenum grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="94" />
<cell id="684" material="10" name="Fuel (1.6%) (0)" region="-1" universe="95" /> <cell id="684" material="1" name="Outside pin (0)" region="-3" universe="95" />
<cell id="685" material="1" name="Fuel (1.6%) (1)" region="1 -3" universe="95" /> <cell id="685" material="6" name="Outside pin (1)" region="3 -4" universe="95" />
<cell id="686" material="6" name="Fuel (1.6%) (2)" region="3 -4" universe="95" /> <cell id="686" material="8" name="Outside pin (last)" region="4" universe="95" />
<cell id="687" material="8" name="Fuel (1.6%) (last)" region="4" universe="95" /> <cell id="687" material="1" name="Outside pin grid (bottom) (0)" region="-3" universe="96" />
<cell id="688" material="10" name="Fuel (1.6%) grid (bottom) (0)" region="-1" universe="96" /> <cell id="688" material="6" name="Outside pin grid (bottom) (1)" region="3 -4" universe="96" />
<cell id="689" material="1" name="Fuel (1.6%) grid (bottom) (1)" region="1 -3" universe="96" /> <cell id="689" material="8" name="Outside pin grid (bottom) (last)" region="4 20 -21 22 -23" universe="96" />
<cell id="690" material="6" name="Fuel (1.6%) grid (bottom) (2)" region="3 -4" universe="96" /> <cell id="690" material="3" name="Outside pin grid (bottom) (grid)" region="~(20 -21 22 -23)" universe="96" />
<cell id="691" material="8" name="Fuel (1.6%) grid (bottom) (last)" region="4 20 -21 22 -23" universe="96" /> <cell id="691" material="1" name="Outside pin grid (intermediate) (0)" region="-3" universe="97" />
<cell id="692" material="3" name="Fuel (1.6%) grid (bottom) (grid)" region="~(20 -21 22 -23)" universe="96" /> <cell id="692" material="6" name="Outside pin grid (intermediate) (1)" region="3 -4" universe="97" />
<cell id="693" material="10" name="Fuel (1.6%) grid (intermediate) (0)" region="-1" universe="97" /> <cell id="693" material="8" name="Outside pin grid (intermediate) (last)" region="4 20 -21 22 -23" universe="97" />
<cell id="694" material="1" name="Fuel (1.6%) grid (intermediate) (1)" region="1 -3" universe="97" /> <cell id="694" material="6" name="Outside pin grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="97" />
<cell id="695" material="6" name="Fuel (1.6%) grid (intermediate) (2)" region="3 -4" universe="97" /> <cell fill="95" id="695" name="Fuel pin (1.6%) stack (o0)" region="-38 1" universe="98" />
<cell id="696" material="8" name="Fuel (1.6%) grid (intermediate) (last)" region="4 20 -21 22 -23" universe="97" /> <cell fill="96" id="696" name="Fuel pin (1.6%) stack (o1)" region="38 -39 1" universe="98" />
<cell id="697" material="6" name="Fuel (1.6%) grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="97" /> <cell fill="95" id="697" name="Fuel pin (1.6%) stack (o2)" region="39 -48 1" universe="98" />
<cell fill="1" id="698" name="Fuel (1.6%) stack (0)" region="-32" universe="98" /> <cell fill="95" id="698" name="Fuel pin (1.6%) stack (o3)" region="48 -40 1" universe="98" />
<cell fill="91" id="699" name="Fuel (1.6%) stack (1)" region="32 -33" universe="98" /> <cell fill="97" id="699" name="Fuel pin (1.6%) stack (o4)" region="40 -41 1" universe="98" />
<cell fill="91" id="700" name="Fuel (1.6%) stack (2)" region="33 -34" universe="98" /> <cell fill="95" id="700" name="Fuel pin (1.6%) stack (o5)" region="41 -42 1" universe="98" />
<cell fill="92" id="701" name="Fuel (1.6%) stack (3)" region="34 -35" universe="98" /> <cell fill="97" id="701" name="Fuel pin (1.6%) stack (o6)" region="42 -43 1" universe="98" />
<cell fill="95" id="702" name="Fuel (1.6%) stack (4)" region="35 -38" universe="98" /> <cell fill="95" id="702" name="Fuel pin (1.6%) stack (o7)" region="43 -44 1" universe="98" />
<cell fill="96" id="703" name="Fuel (1.6%) stack (5)" region="38 -39" universe="98" /> <cell fill="97" id="703" name="Fuel pin (1.6%) stack (o8)" region="44 -45 1" universe="98" />
<cell fill="95" id="704" name="Fuel (1.6%) stack (6)" region="39 -48" universe="98" /> <cell fill="95" id="704" name="Fuel pin (1.6%) stack (o9)" region="45 1" universe="98" />
<cell fill="95" id="705" name="Fuel (1.6%) stack (7)" region="48 -40" universe="98" /> <cell id="705" material="10" name="Fuel pin (1.6%) stack (i)" region="-1" universe="98" />
<cell fill="97" id="706" name="Fuel (1.6%) stack (8)" region="40 -41" universe="98" /> <cell fill="1" id="706" name="Fuel (1.6%) stack (0)" region="-32" universe="99" />
<cell fill="95" id="707" name="Fuel (1.6%) stack (9)" region="41 -42" universe="98" /> <cell fill="91" id="707" name="Fuel (1.6%) stack (1)" region="32 -33" universe="99" />
<cell fill="97" id="708" name="Fuel (1.6%) stack (10)" region="42 -43" universe="98" /> <cell fill="91" id="708" name="Fuel (1.6%) stack (2)" region="33 -34" universe="99" />
<cell fill="95" id="709" name="Fuel (1.6%) stack (11)" region="43 -44" universe="98" /> <cell fill="92" id="709" name="Fuel (1.6%) stack (3)" region="34 -35" universe="99" />
<cell fill="97" id="710" name="Fuel (1.6%) stack (12)" region="44 -45" universe="98" /> <cell fill="98" id="710" name="Fuel (1.6%) stack (4)" region="35 -36" universe="99" />
<cell fill="95" id="711" name="Fuel (1.6%) stack (13)" region="45 -36" universe="98" /> <cell fill="93" id="711" name="Fuel (1.6%) stack (5)" region="36 -46" universe="99" />
<cell fill="93" id="712" name="Fuel (1.6%) stack (14)" region="36 -46" universe="98" /> <cell fill="94" id="712" name="Fuel (1.6%) stack (6)" region="46 -47" universe="99" />
<cell fill="94" id="713" name="Fuel (1.6%) stack (15)" region="46 -47" universe="98" /> <cell fill="93" id="713" name="Fuel (1.6%) stack (7)" region="47 -49" universe="99" />
<cell fill="93" id="714" name="Fuel (1.6%) stack (16)" region="47 -49" universe="98" /> <cell fill="92" id="714" name="Fuel (1.6%) stack (8)" region="49 -50" universe="99" />
<cell fill="92" id="715" name="Fuel (1.6%) stack (17)" region="49 -50" universe="98" /> <cell fill="1" id="715" name="Fuel (1.6%) stack (9)" region="50 -51" universe="99" />
<cell fill="1" id="716" name="Fuel (1.6%) stack (18)" region="50 -51" universe="98" /> <cell fill="91" id="716" name="Fuel (1.6%) stack (10)" region="51 -52" universe="99" />
<cell fill="91" id="717" name="Fuel (1.6%) stack (19)" region="51 -52" universe="98" /> <cell fill="1" id="717" name="Fuel (1.6%) stack (11)" region="52" universe="99" />
<cell fill="1" id="718" name="Fuel (1.6%) stack (last)" region="52" universe="98" /> <cell fill="95" id="718" name="Fuel pin (2.4%) stack (o0)" region="-38 1" universe="100" />
<cell id="719" material="11" name="Fuel (2.4%) (0)" region="-1" universe="99" /> <cell fill="96" id="719" name="Fuel pin (2.4%) stack (o1)" region="38 -39 1" universe="100" />
<cell id="720" material="1" name="Fuel (2.4%) (1)" region="1 -3" universe="99" /> <cell fill="95" id="720" name="Fuel pin (2.4%) stack (o2)" region="39 -48 1" universe="100" />
<cell id="721" material="6" name="Fuel (2.4%) (2)" region="3 -4" universe="99" /> <cell fill="95" id="721" name="Fuel pin (2.4%) stack (o3)" region="48 -40 1" universe="100" />
<cell id="722" material="8" name="Fuel (2.4%) (last)" region="4" universe="99" /> <cell fill="97" id="722" name="Fuel pin (2.4%) stack (o4)" region="40 -41 1" universe="100" />
<cell id="723" material="11" name="Fuel (2.4%) grid (bottom) (0)" region="-1" universe="100" /> <cell fill="95" id="723" name="Fuel pin (2.4%) stack (o5)" region="41 -42 1" universe="100" />
<cell id="724" material="1" name="Fuel (2.4%) grid (bottom) (1)" region="1 -3" universe="100" /> <cell fill="97" id="724" name="Fuel pin (2.4%) stack (o6)" region="42 -43 1" universe="100" />
<cell id="725" material="6" name="Fuel (2.4%) grid (bottom) (2)" region="3 -4" universe="100" /> <cell fill="95" id="725" name="Fuel pin (2.4%) stack (o7)" region="43 -44 1" universe="100" />
<cell id="726" material="8" name="Fuel (2.4%) grid (bottom) (last)" region="4 20 -21 22 -23" universe="100" /> <cell fill="97" id="726" name="Fuel pin (2.4%) stack (o8)" region="44 -45 1" universe="100" />
<cell id="727" material="3" name="Fuel (2.4%) grid (bottom) (grid)" region="~(20 -21 22 -23)" universe="100" /> <cell fill="95" id="727" name="Fuel pin (2.4%) stack (o9)" region="45 1" universe="100" />
<cell id="728" material="11" name="Fuel (2.4%) grid (intermediate) (0)" region="-1" universe="101" /> <cell id="728" material="11" name="Fuel pin (2.4%) stack (i)" region="-1" universe="100" />
<cell id="729" material="1" name="Fuel (2.4%) grid (intermediate) (1)" region="1 -3" universe="101" /> <cell fill="1" id="729" name="Fuel (2.4%) stack (0)" region="-32" universe="101" />
<cell id="730" material="6" name="Fuel (2.4%) grid (intermediate) (2)" region="3 -4" universe="101" /> <cell fill="91" id="730" name="Fuel (2.4%) stack (1)" region="32 -33" universe="101" />
<cell id="731" material="8" name="Fuel (2.4%) grid (intermediate) (last)" region="4 20 -21 22 -23" universe="101" /> <cell fill="91" id="731" name="Fuel (2.4%) stack (2)" region="33 -34" universe="101" />
<cell id="732" material="6" name="Fuel (2.4%) grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="101" /> <cell fill="92" id="732" name="Fuel (2.4%) stack (3)" region="34 -35" universe="101" />
<cell fill="1" id="733" name="Fuel (2.4%) stack (0)" region="-32" universe="102" /> <cell fill="100" id="733" name="Fuel (2.4%) stack (4)" region="35 -36" universe="101" />
<cell fill="91" id="734" name="Fuel (2.4%) stack (1)" region="32 -33" universe="102" /> <cell fill="93" id="734" name="Fuel (2.4%) stack (5)" region="36 -46" universe="101" />
<cell fill="91" id="735" name="Fuel (2.4%) stack (2)" region="33 -34" universe="102" /> <cell fill="94" id="735" name="Fuel (2.4%) stack (6)" region="46 -47" universe="101" />
<cell fill="92" id="736" name="Fuel (2.4%) stack (3)" region="34 -35" universe="102" /> <cell fill="93" id="736" name="Fuel (2.4%) stack (7)" region="47 -49" universe="101" />
<cell fill="99" id="737" name="Fuel (2.4%) stack (4)" region="35 -38" universe="102" /> <cell fill="92" id="737" name="Fuel (2.4%) stack (8)" region="49 -50" universe="101" />
<cell fill="100" id="738" name="Fuel (2.4%) stack (5)" region="38 -39" universe="102" /> <cell fill="1" id="738" name="Fuel (2.4%) stack (9)" region="50 -51" universe="101" />
<cell fill="99" id="739" name="Fuel (2.4%) stack (6)" region="39 -48" universe="102" /> <cell fill="91" id="739" name="Fuel (2.4%) stack (10)" region="51 -52" universe="101" />
<cell fill="99" id="740" name="Fuel (2.4%) stack (7)" region="48 -40" universe="102" /> <cell fill="1" id="740" name="Fuel (2.4%) stack (11)" region="52" universe="101" />
<cell fill="101" id="741" name="Fuel (2.4%) stack (8)" region="40 -41" universe="102" /> <cell fill="95" id="741" name="Fuel pin (3.1%) stack (o0)" region="-38 1" universe="102" />
<cell fill="99" id="742" name="Fuel (2.4%) stack (9)" region="41 -42" universe="102" /> <cell fill="96" id="742" name="Fuel pin (3.1%) stack (o1)" region="38 -39 1" universe="102" />
<cell fill="101" id="743" name="Fuel (2.4%) stack (10)" region="42 -43" universe="102" /> <cell fill="95" id="743" name="Fuel pin (3.1%) stack (o2)" region="39 -48 1" universe="102" />
<cell fill="99" id="744" name="Fuel (2.4%) stack (11)" region="43 -44" universe="102" /> <cell fill="95" id="744" name="Fuel pin (3.1%) stack (o3)" region="48 -40 1" universe="102" />
<cell fill="101" id="745" name="Fuel (2.4%) stack (12)" region="44 -45" universe="102" /> <cell fill="97" id="745" name="Fuel pin (3.1%) stack (o4)" region="40 -41 1" universe="102" />
<cell fill="99" id="746" name="Fuel (2.4%) stack (13)" region="45 -36" universe="102" /> <cell fill="95" id="746" name="Fuel pin (3.1%) stack (o5)" region="41 -42 1" universe="102" />
<cell fill="93" id="747" name="Fuel (2.4%) stack (14)" region="36 -46" universe="102" /> <cell fill="97" id="747" name="Fuel pin (3.1%) stack (o6)" region="42 -43 1" universe="102" />
<cell fill="94" id="748" name="Fuel (2.4%) stack (15)" region="46 -47" universe="102" /> <cell fill="95" id="748" name="Fuel pin (3.1%) stack (o7)" region="43 -44 1" universe="102" />
<cell fill="93" id="749" name="Fuel (2.4%) stack (16)" region="47 -49" universe="102" /> <cell fill="97" id="749" name="Fuel pin (3.1%) stack (o8)" region="44 -45 1" universe="102" />
<cell fill="92" id="750" name="Fuel (2.4%) stack (17)" region="49 -50" universe="102" /> <cell fill="95" id="750" name="Fuel pin (3.1%) stack (o9)" region="45 1" universe="102" />
<cell fill="1" id="751" name="Fuel (2.4%) stack (18)" region="50 -51" universe="102" /> <cell id="751" material="12" name="Fuel pin (3.1%) stack (i)" region="-1" universe="102" />
<cell fill="91" id="752" name="Fuel (2.4%) stack (19)" region="51 -52" universe="102" /> <cell fill="1" id="752" name="Fuel (3.1%) stack (0)" region="-32" universe="103" />
<cell fill="1" id="753" name="Fuel (2.4%) stack (last)" region="52" universe="102" /> <cell fill="91" id="753" name="Fuel (3.1%) stack (1)" region="32 -33" universe="103" />
<cell id="754" material="12" name="Fuel (3.1%) (0)" region="-1" universe="103" /> <cell fill="91" id="754" name="Fuel (3.1%) stack (2)" region="33 -34" universe="103" />
<cell id="755" material="1" name="Fuel (3.1%) (1)" region="1 -3" universe="103" /> <cell fill="92" id="755" name="Fuel (3.1%) stack (3)" region="34 -35" universe="103" />
<cell id="756" material="6" name="Fuel (3.1%) (2)" region="3 -4" universe="103" /> <cell fill="102" id="756" name="Fuel (3.1%) stack (4)" region="35 -36" universe="103" />
<cell id="757" material="8" name="Fuel (3.1%) (last)" region="4" universe="103" /> <cell fill="93" id="757" name="Fuel (3.1%) stack (5)" region="36 -46" universe="103" />
<cell id="758" material="12" name="Fuel (3.1%) grid (bottom) (0)" region="-1" universe="104" /> <cell fill="94" id="758" name="Fuel (3.1%) stack (6)" region="46 -47" universe="103" />
<cell id="759" material="1" name="Fuel (3.1%) grid (bottom) (1)" region="1 -3" universe="104" /> <cell fill="93" id="759" name="Fuel (3.1%) stack (7)" region="47 -49" universe="103" />
<cell id="760" material="6" name="Fuel (3.1%) grid (bottom) (2)" region="3 -4" universe="104" /> <cell fill="92" id="760" name="Fuel (3.1%) stack (8)" region="49 -50" universe="103" />
<cell id="761" material="8" name="Fuel (3.1%) grid (bottom) (last)" region="4 20 -21 22 -23" universe="104" /> <cell fill="1" id="761" name="Fuel (3.1%) stack (9)" region="50 -51" universe="103" />
<cell id="762" material="3" name="Fuel (3.1%) grid (bottom) (grid)" region="~(20 -21 22 -23)" universe="104" /> <cell fill="91" id="762" name="Fuel (3.1%) stack (10)" region="51 -52" universe="103" />
<cell id="763" material="12" name="Fuel (3.1%) grid (intermediate) (0)" region="-1" universe="105" /> <cell fill="1" id="763" name="Fuel (3.1%) stack (11)" region="52" universe="103" />
<cell id="764" material="1" name="Fuel (3.1%) grid (intermediate) (1)" region="1 -3" universe="105" /> <cell fill="122" id="881" name="Assembly (1.6%) no BAs instr lattice" region="24 -25 26 -27" universe="123" />
<cell id="765" material="6" name="Fuel (3.1%) grid (intermediate) (2)" region="3 -4" universe="105" /> <cell id="882" material="8" name="Assembly (1.6%) no BAs instr lattice outer water" region="~(28 -29 30 -31)" universe="123" />
<cell id="766" material="8" name="Fuel (3.1%) grid (intermediate) (last)" region="4 20 -21 22 -23" universe="105" /> <cell id="883" material="8" name="Assembly (1.6%) no BAs instr lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="123" />
<cell id="767" material="6" name="Fuel (3.1%) grid (intermediate) (grid)" region="~(20 -21 22 -23)" universe="105" /> <cell id="884" material="3" name="Assembly (1.6%) no BAs instr lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="123" />
<cell fill="1" id="768" name="Fuel (3.1%) stack (0)" region="-32" universe="106" /> <cell id="885" material="8" name="Assembly (1.6%) no BAs instr lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="123" />
<cell fill="91" id="769" name="Fuel (3.1%) stack (1)" region="32 -33" universe="106" /> <cell id="886" material="6" name="Assembly (1.6%) no BAs instr lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="123" />
<cell fill="91" id="770" name="Fuel (3.1%) stack (2)" region="33 -34" universe="106" /> <cell id="887" material="8" name="Assembly (1.6%) no BAs instr lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="123" />
<cell fill="92" id="771" name="Fuel (3.1%) stack (3)" region="34 -35" universe="106" /> <cell id="888" material="6" name="Assembly (1.6%) no BAs instr lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="123" />
<cell fill="103" id="772" name="Fuel (3.1%) stack (4)" region="35 -38" universe="106" /> <cell id="889" material="8" name="Assembly (1.6%) no BAs instr lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="123" />
<cell fill="104" id="773" name="Fuel (3.1%) stack (5)" region="38 -39" universe="106" /> <cell id="890" material="6" name="Assembly (1.6%) no BAs instr lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="123" />
<cell fill="103" id="774" name="Fuel (3.1%) stack (6)" region="39 -48" universe="106" /> <cell id="891" material="8" name="Assembly (1.6%) no BAs instr lattice axial (8)" region="28 -29 30 -31 ~(24 -25 26 -27) 45 -46" universe="123" />
<cell fill="103" id="775" name="Fuel (3.1%) stack (7)" region="48 -40" universe="106" /> <cell id="892" material="6" name="Assembly (1.6%) no BAs instr lattice axial (9)" region="28 -29 30 -31 ~(24 -25 26 -27) 46 -47" universe="123" />
<cell fill="105" id="776" name="Fuel (3.1%) stack (8)" region="40 -41" universe="106" /> <cell id="893" material="8" name="Assembly (1.6%) no BAs instr lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 47" universe="123" />
<cell fill="103" id="777" name="Fuel (3.1%) stack (9)" region="41 -42" universe="106" /> <cell fill="142" id="1011" name="Assembly (2.4%) CR D lattice" region="24 -25 26 -27" universe="143" />
<cell fill="105" id="778" name="Fuel (3.1%) stack (10)" region="42 -43" universe="106" /> <cell id="1012" material="8" name="Assembly (2.4%) CR D lattice outer water" region="~(28 -29 30 -31)" universe="143" />
<cell fill="103" id="779" name="Fuel (3.1%) stack (11)" region="43 -44" universe="106" /> <cell id="1013" material="8" name="Assembly (2.4%) CR D lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="143" />
<cell fill="105" id="780" name="Fuel (3.1%) stack (12)" region="44 -45" universe="106" /> <cell id="1014" material="3" name="Assembly (2.4%) CR D lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="143" />
<cell fill="103" id="781" name="Fuel (3.1%) stack (13)" region="45 -36" universe="106" /> <cell id="1015" material="8" name="Assembly (2.4%) CR D lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="143" />
<cell fill="93" id="782" name="Fuel (3.1%) stack (14)" region="36 -46" universe="106" /> <cell id="1016" material="6" name="Assembly (2.4%) CR D lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="143" />
<cell fill="94" id="783" name="Fuel (3.1%) stack (15)" region="46 -47" universe="106" /> <cell id="1017" material="8" name="Assembly (2.4%) CR D lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="143" />
<cell fill="93" id="784" name="Fuel (3.1%) stack (16)" region="47 -49" universe="106" /> <cell id="1018" material="6" name="Assembly (2.4%) CR D lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="143" />
<cell fill="92" id="785" name="Fuel (3.1%) stack (17)" region="49 -50" universe="106" /> <cell id="1019" material="8" name="Assembly (2.4%) CR D lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="143" />
<cell fill="1" id="786" name="Fuel (3.1%) stack (18)" region="50 -51" universe="106" /> <cell id="1020" material="6" name="Assembly (2.4%) CR D lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="143" />
<cell fill="91" id="787" name="Fuel (3.1%) stack (19)" region="51 -52" universe="106" /> <cell id="1021" material="8" name="Assembly (2.4%) CR D lattice axial (8)" region="28 -29 30 -31 ~(24 -25 26 -27) 45 -46" universe="143" />
<cell fill="1" id="788" name="Fuel (3.1%) stack (last)" region="52" universe="106" /> <cell id="1022" material="6" name="Assembly (2.4%) CR D lattice axial (9)" region="28 -29 30 -31 ~(24 -25 26 -27) 46 -47" universe="143" />
<cell fill="125" id="888" name="Assembly (1.6%) no BAs instr lattice" region="24 -25 26 -27" universe="126" /> <cell id="1023" material="8" name="Assembly (2.4%) CR D lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 47" universe="143" />
<cell fill="1" id="889" name="Assembly (1.6%) no BAs instr lattice outer water" region="~(28 -29 30 -31)" universe="126" /> <cell fill="162" id="1141" name="Assembly (3.1%) 16BA lattice" region="24 -25 26 -27" universe="163" />
<cell id="890" material="8" name="Assembly (1.6%) no BAs instr lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="126" /> <cell id="1142" material="8" name="Assembly (3.1%) 16BA lattice outer water" region="~(28 -29 30 -31)" universe="163" />
<cell id="891" material="4" name="Assembly (1.6%) no BAs instr lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="126" /> <cell id="1143" material="8" name="Assembly (3.1%) 16BA lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="163" />
<cell id="892" material="8" name="Assembly (1.6%) no BAs instr lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="126" /> <cell id="1144" material="3" name="Assembly (3.1%) 16BA lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="163" />
<cell id="893" material="6" name="Assembly (1.6%) no BAs instr lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="126" /> <cell id="1145" material="8" name="Assembly (3.1%) 16BA lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="163" />
<cell id="894" material="8" name="Assembly (1.6%) no BAs instr lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="126" /> <cell id="1146" material="6" name="Assembly (3.1%) 16BA lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="163" />
<cell id="895" material="6" name="Assembly (1.6%) no BAs instr lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="126" /> <cell id="1147" material="8" name="Assembly (3.1%) 16BA lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="163" />
<cell id="896" material="8" name="Assembly (1.6%) no BAs instr lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="126" /> <cell id="1148" material="6" name="Assembly (3.1%) 16BA lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="163" />
<cell id="897" material="4" name="Assembly (1.6%) no BAs instr lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="126" /> <cell id="1149" material="8" name="Assembly (3.1%) 16BA lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="163" />
<cell id="898" material="8" name="Assembly (1.6%) no BAs instr lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 45" universe="126" /> <cell id="1150" material="6" name="Assembly (3.1%) 16BA lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="163" />
<cell fill="145" id="998" name="Assembly (2.4%) CR D lattice" region="24 -25 26 -27" universe="146" /> <cell id="1151" material="8" name="Assembly (3.1%) 16BA lattice axial (8)" region="28 -29 30 -31 ~(24 -25 26 -27) 45 -46" universe="163" />
<cell fill="1" id="999" name="Assembly (2.4%) CR D lattice outer water" region="~(28 -29 30 -31)" universe="146" /> <cell id="1152" material="6" name="Assembly (3.1%) 16BA lattice axial (9)" region="28 -29 30 -31 ~(24 -25 26 -27) 46 -47" universe="163" />
<cell id="1000" material="8" name="Assembly (2.4%) CR D lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="146" /> <cell id="1153" material="8" name="Assembly (3.1%) 16BA lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 47" universe="163" />
<cell id="1001" material="4" name="Assembly (2.4%) CR D lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="146" /> <cell fill="180" id="1258" name="Assembly (3.1%) no BAs instr lattice" region="24 -25 26 -27" universe="181" />
<cell id="1002" material="8" name="Assembly (2.4%) CR D lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="146" /> <cell id="1259" material="8" name="Assembly (3.1%) no BAs instr lattice outer water" region="~(28 -29 30 -31)" universe="181" />
<cell id="1003" material="6" name="Assembly (2.4%) CR D lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="146" /> <cell id="1260" material="8" name="Assembly (3.1%) no BAs instr lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="181" />
<cell id="1004" material="8" name="Assembly (2.4%) CR D lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="146" /> <cell id="1261" material="3" name="Assembly (3.1%) no BAs instr lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="181" />
<cell id="1005" material="6" name="Assembly (2.4%) CR D lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="146" /> <cell id="1262" material="8" name="Assembly (3.1%) no BAs instr lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="181" />
<cell id="1006" material="8" name="Assembly (2.4%) CR D lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="146" /> <cell id="1263" material="6" name="Assembly (3.1%) no BAs instr lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="181" />
<cell id="1007" material="4" name="Assembly (2.4%) CR D lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="146" /> <cell id="1264" material="8" name="Assembly (3.1%) no BAs instr lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="181" />
<cell id="1008" material="8" name="Assembly (2.4%) CR D lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 45" universe="146" /> <cell id="1265" material="6" name="Assembly (3.1%) no BAs instr lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="181" />
<cell fill="165" id="1108" name="Assembly (3.1%) 16BA lattice" region="24 -25 26 -27" universe="166" /> <cell id="1266" material="8" name="Assembly (3.1%) no BAs instr lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="181" />
<cell fill="1" id="1109" name="Assembly (3.1%) 16BA lattice outer water" region="~(28 -29 30 -31)" universe="166" /> <cell id="1267" material="6" name="Assembly (3.1%) no BAs instr lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="181" />
<cell id="1110" material="8" name="Assembly (3.1%) 16BA lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="166" /> <cell id="1268" material="8" name="Assembly (3.1%) no BAs instr lattice axial (8)" region="28 -29 30 -31 ~(24 -25 26 -27) 45 -46" universe="181" />
<cell id="1111" material="4" name="Assembly (3.1%) 16BA lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="166" /> <cell id="1269" material="6" name="Assembly (3.1%) no BAs instr lattice axial (9)" region="28 -29 30 -31 ~(24 -25 26 -27) 46 -47" universe="181" />
<cell id="1112" material="8" name="Assembly (3.1%) 16BA lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="166" /> <cell id="1270" material="8" name="Assembly (3.1%) no BAs instr lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 47" universe="181" />
<cell id="1113" material="6" name="Assembly (3.1%) 16BA lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="166" /> <cell id="1414" material="8" region="-82" universe="204" />
<cell id="1114" material="8" name="Assembly (3.1%) 16BA lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="166" /> <cell id="1415" material="8" region="-83" universe="204" />
<cell id="1115" material="6" name="Assembly (3.1%) 16BA lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="166" /> <cell id="1416" material="8" region="-84" universe="204" />
<cell id="1116" material="8" name="Assembly (3.1%) 16BA lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="166" /> <cell id="1417" material="8" region="-85" universe="204" />
<cell id="1117" material="4" name="Assembly (3.1%) 16BA lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="166" /> <cell id="1418" material="8" region="-86" universe="204" />
<cell id="1118" material="8" name="Assembly (3.1%) 16BA lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 45" universe="166" /> <cell id="1419" material="8" region="-87" universe="204" />
<cell fill="183" id="1207" name="Assembly (3.1%) no BAs instr lattice" region="24 -25 26 -27" universe="184" /> <cell id="1420" material="8" region="-88" universe="204" />
<cell fill="1" id="1208" name="Assembly (3.1%) no BAs instr lattice outer water" region="~(28 -29 30 -31)" universe="184" /> <cell id="1421" material="8" region="-89" universe="204" />
<cell id="1209" material="8" name="Assembly (3.1%) no BAs instr lattice axial (0)" region="28 -29 30 -31 ~(24 -25 26 -27) -38" universe="184" /> <cell id="1422" material="8" region="-90" universe="204" />
<cell id="1210" material="4" name="Assembly (3.1%) no BAs instr lattice axial (1)" region="28 -29 30 -31 ~(24 -25 26 -27) 38 -39" universe="184" /> <cell id="1423" material="8" region="-91" universe="204" />
<cell id="1211" material="8" name="Assembly (3.1%) no BAs instr lattice axial (2)" region="28 -29 30 -31 ~(24 -25 26 -27) 39 -40" universe="184" /> <cell id="1424" material="8" region="-92" universe="204" />
<cell id="1212" material="6" name="Assembly (3.1%) no BAs instr lattice axial (3)" region="28 -29 30 -31 ~(24 -25 26 -27) 40 -41" universe="184" /> <cell id="1425" material="8" region="-93" universe="204" />
<cell id="1213" material="8" name="Assembly (3.1%) no BAs instr lattice axial (4)" region="28 -29 30 -31 ~(24 -25 26 -27) 41 -42" universe="184" /> <cell id="1426" material="8" region="-94" universe="204" />
<cell id="1214" material="6" name="Assembly (3.1%) no BAs instr lattice axial (5)" region="28 -29 30 -31 ~(24 -25 26 -27) 42 -43" universe="184" /> <cell id="1427" material="4" name="reflector NW SS" region="82 83 84 85 86 87 88 89 90 91 92 93 94" universe="204" />
<cell id="1215" material="8" name="Assembly (3.1%) no BAs instr lattice axial (6)" region="28 -29 30 -31 ~(24 -25 26 -27) 43 -44" universe="184" /> <cell id="1428" material="8" region="-95" universe="205" />
<cell id="1216" material="4" name="Assembly (3.1%) no BAs instr lattice axial (7)" region="28 -29 30 -31 ~(24 -25 26 -27) 44 -45" universe="184" /> <cell id="1429" material="8" region="-96" universe="205" />
<cell id="1217" material="8" name="Assembly (3.1%) no BAs instr lattice axial (last)" region="28 -29 30 -31 ~(24 -25 26 -27) 45" universe="184" /> <cell id="1430" material="8" region="-97" universe="205" />
<cell id="1339" material="8" region="-82" universe="207" /> <cell id="1431" material="4" name="reflector 1,1 SS" region="95 96 97" universe="205" />
<cell id="1340" material="8" region="-83" universe="207" /> <cell id="1432" material="8" region="-98" universe="206" />
<cell id="1341" material="8" region="-84" universe="207" /> <cell id="1433" material="8" region="-99" universe="206" />
<cell id="1342" material="8" region="-85" universe="207" /> <cell id="1434" material="8" region="-100" universe="206" />
<cell id="1343" material="8" region="-86" universe="207" /> <cell id="1435" material="8" region="-101" universe="206" />
<cell id="1344" material="8" region="-87" universe="207" /> <cell id="1436" material="8" region="-102" universe="206" />
<cell id="1345" material="8" region="-88" universe="207" /> <cell id="1437" material="8" region="-103" universe="206" />
<cell id="1346" material="8" region="-89" universe="207" /> <cell id="1438" material="8" region="-104" universe="206" />
<cell id="1347" material="8" region="-90" universe="207" /> <cell id="1439" material="8" region="-105" universe="206" />
<cell id="1348" material="8" region="-91" universe="207" /> <cell id="1440" material="8" region="-106" universe="206" />
<cell id="1349" material="8" region="-92" universe="207" /> <cell id="1441" material="8" region="-107" universe="206" />
<cell id="1350" material="8" region="-93" universe="207" /> <cell id="1442" material="8" region="-108" universe="206" />
<cell id="1351" material="8" region="-94" universe="207" /> <cell id="1443" material="4" name="reflector 4,0 SS" region="98 99 100 101 102 103 104 105 106 107 108" universe="206" />
<cell id="1352" material="4" name="heavy reflector NW SS" region="82 83 84 85 86 87 88 89 90 91 92 93 94" universe="207" /> <cell id="1444" material="8" region="-109" universe="207" />
<cell id="1353" material="8" region="-95" universe="208" /> <cell id="1445" material="8" region="-110" universe="207" />
<cell id="1354" material="8" region="-96" universe="208" /> <cell id="1446" material="8" region="-111" universe="207" />
<cell id="1355" material="8" region="-97" universe="208" /> <cell id="1447" material="8" region="-112" universe="207" />
<cell id="1356" material="4" name="heavy reflector 1,1 SS" region="95 96 97" universe="208" /> <cell id="1448" material="8" region="-113" universe="207" />
<cell id="1357" material="8" region="-98" universe="209" /> <cell id="1449" material="8" region="-114" universe="207" />
<cell id="1358" material="8" region="-99" universe="209" /> <cell id="1450" material="8" region="-115" universe="207" />
<cell id="1359" material="8" region="-100" universe="209" /> <cell id="1451" material="8" region="-116" universe="207" />
<cell id="1360" material="8" region="-101" universe="209" /> <cell id="1452" material="8" region="-117" universe="207" />
<cell id="1361" material="8" region="-102" universe="209" /> <cell id="1453" material="8" region="-118" universe="207" />
<cell id="1362" material="8" region="-103" universe="209" /> <cell id="1454" material="4" name="reflector 3,0 SS" region="109 110 111 112 113 114 115 116 117 118" universe="207" />
<cell id="1363" material="8" region="-104" universe="209" /> <cell id="1455" material="8" region="-119" universe="208" />
<cell id="1364" material="8" region="-105" universe="209" /> <cell id="1456" material="8" region="-120" universe="208" />
<cell id="1365" material="8" region="-106" universe="209" /> <cell id="1457" material="8" region="-121" universe="208" />
<cell id="1366" material="8" region="-107" universe="209" /> <cell id="1458" material="8" region="-122" universe="208" />
<cell id="1367" material="8" region="-108" universe="209" /> <cell id="1459" material="8" region="-123" universe="208" />
<cell id="1368" material="4" name="heavy reflector 4,0 SS" region="98 99 100 101 102 103 104 105 106 107 108" universe="209" /> <cell id="1460" material="8" region="-124" universe="208" />
<cell id="1369" material="8" region="-109" universe="210" /> <cell id="1461" material="8" region="-125" universe="208" />
<cell id="1370" material="8" region="-110" universe="210" /> <cell id="1462" material="8" region="-126" universe="208" />
<cell id="1371" material="8" region="-111" universe="210" /> <cell id="1463" material="8" region="-127" universe="208" />
<cell id="1372" material="8" region="-112" universe="210" /> <cell id="1464" material="8" region="-128" universe="208" />
<cell id="1373" material="8" region="-113" universe="210" /> <cell id="1465" material="4" name="reflector 5,0 SS" region="119 120 121 122 123 124 125 126 127 128" universe="208" />
<cell id="1374" material="8" region="-114" universe="210" /> <cell id="1466" material="8" region="-129" universe="209" />
<cell id="1375" material="8" region="-115" universe="210" /> <cell id="1467" material="4" name="reflector 2,0 SS" region="129" universe="209" />
<cell id="1376" material="8" region="-116" universe="210" /> <cell fill="204" id="1468" name="reflector NE" rotation="0 0 -90" universe="210" />
<cell id="1377" material="8" region="-117" universe="210" /> <cell fill="204" id="1469" name="reflector SW" rotation="0 0 90" universe="211" />
<cell id="1378" material="8" region="-118" universe="210" /> <cell fill="204" id="1470" name="reflector SE" rotation="0 0 180" universe="212" />
<cell id="1379" material="4" name="heavy reflector 3,0 SS" region="109 110 111 112 113 114 115 116 117 118" universe="210" /> <cell fill="209" id="1471" name="reflector 0,2" rotation="0 180 -90" universe="213" />
<cell id="1380" material="8" region="-119" universe="211" /> <cell fill="208" id="1472" name="reflector 0,3" rotation="0 0 -90" universe="214" />
<cell id="1381" material="8" region="-120" universe="211" /> <cell fill="206" id="1473" name="reflector 0,4" rotation="0 0 -90" universe="215" />
<cell id="1382" material="8" region="-121" universe="211" /> <cell fill="207" id="1474" name="reflector 0,5" rotation="0 0 -90" universe="216" />
<cell id="1383" material="8" region="-122" universe="211" /> <cell fill="209" id="1475" name="reflector 0,6" rotation="0 0 -90" universe="217" />
<cell id="1384" material="8" region="-123" universe="211" /> <cell fill="205" id="1476" name="reflector 1,7" rotation="0 0 -90" universe="218" />
<cell id="1385" material="8" region="-124" universe="211" /> <cell fill="209" id="1477" name="reflector 2,8" rotation="0 180 0" universe="219" />
<cell id="1386" material="8" region="-125" universe="211" /> <cell fill="207" id="1478" name="reflector 3,8" rotation="0 180 0" universe="220" />
<cell id="1387" material="8" region="-126" universe="211" /> <cell fill="206" id="1479" name="reflector 4,8" rotation="0 180 0" universe="221" />
<cell id="1388" material="8" region="-127" universe="211" /> <cell fill="207" id="1480" name="reflector 5,8" rotation="0 0 180" universe="222" />
<cell id="1389" material="8" region="-128" universe="211" /> <cell fill="209" id="1481" name="reflector 6,0" rotation="180 0 0" universe="223" />
<cell id="1390" material="4" name="heavy reflector 5,0 SS" region="119 120 121 122 123 124 125 126 127 128" universe="211" /> <cell fill="209" id="1482" name="reflector 6,8" rotation="0 0 180" universe="224" />
<cell id="1391" material="8" region="-129" universe="212" /> <cell fill="205" id="1483" name="reflector 7,1" rotation="180 0 0" universe="225" />
<cell id="1392" material="4" name="heavy reflector 2,0 SS" region="129" universe="212" /> <cell fill="205" id="1484" name="reflector 7,7" rotation="0 0 180" universe="226" />
<cell fill="207" id="1393" name="heavy reflector NE" rotation="0 0 -90" universe="213" /> <cell fill="209" id="1485" name="reflector 8,2" rotation="0 0 90" universe="227" />
<cell fill="207" id="1394" name="heavy reflector SW" rotation="0 0 90" universe="214" /> <cell fill="207" id="1486" name="reflector 8,3" rotation="0 0 90" universe="228" />
<cell fill="207" id="1395" name="heavy reflector SE" rotation="0 0 180" universe="215" /> <cell fill="206" id="1487" name="reflector 8,4" rotation="0 0 90" universe="229" />
<cell fill="212" id="1396" name="heavy reflector 0,2" rotation="0 180 -90" universe="216" /> <cell fill="208" id="1488" name="reflector 8,5" rotation="0 0 90" universe="230" />
<cell fill="211" id="1397" name="heavy reflector 0,3" rotation="0 0 -90" universe="217" /> <cell fill="209" id="1489" name="reflector 8,6" rotation="0 0 180" universe="231" />
<cell fill="209" id="1398" name="heavy reflector 0,4" rotation="0 0 -90" universe="218" /> <cell id="1490" material="4" name="heavy reflector" universe="232" />
<cell fill="210" id="1399" name="heavy reflector 0,5" rotation="0 0 -90" universe="219" /> <cell fill="233" id="1491" name="Main core" region="-71 81 -80" universe="0" />
<cell fill="212" id="1400" name="heavy reflector 0,6" rotation="0 0 -90" universe="220" /> <cell id="1492" material="4" name="core barrel" region="71 -72 81 -80" universe="0" />
<cell fill="208" id="1401" name="heavy reflector 1,7" rotation="0 0 -90" universe="221" /> <cell id="1493" material="4" name="neutron shield panel NW" region="72 -73 74 -75 81 -80" universe="0" />
<cell fill="212" id="1402" name="heavy reflector 2,8" rotation="0 180 0" universe="222" /> <cell id="1494" material="8" name="neutron shield panel N" region="72 -73 75 -77 81 -80" universe="0" />
<cell fill="210" id="1403" name="heavy reflector 3,8" rotation="0 180 0" universe="223" /> <cell id="1495" material="4" name="neutron shield panel SE" region="72 -73 -74 75 81 -80" universe="0" />
<cell fill="209" id="1404" name="heavy reflector 4,8" rotation="0 180 0" universe="224" /> <cell id="1496" material="8" name="neutron shield panel E" region="72 -73 74 76 81 -80" universe="0" />
<cell fill="210" id="1405" name="heavy reflector 5,8" rotation="0 0 180" universe="225" /> <cell id="1497" material="4" name="neutron shield panel NE" region="72 -73 76 -77 81 -80" universe="0" />
<cell fill="212" id="1406" name="heavy reflector 6,0" rotation="180 0 0" universe="226" /> <cell id="1498" material="8" name="neutron shield panel S" region="72 -73 -75 77 81 -80" universe="0" />
<cell fill="212" id="1407" name="heavy reflector 6,8" rotation="0 0 180" universe="227" /> <cell id="1499" material="4" name="neutron shield panel SW" region="72 -73 -76 77 81 -80" universe="0" />
<cell fill="208" id="1408" name="heavy reflector 7,1" rotation="180 0 0" universe="228" /> <cell id="1500" material="8" name="neutron shield panel W" region="72 -73 -74 -76 81 -80" universe="0" />
<cell fill="208" id="1409" name="heavy reflector 7,7" rotation="0 0 180" universe="229" /> <cell id="1501" material="8" name="downcomer" region="73 -78 81 -80" universe="0" />
<cell fill="212" id="1410" name="heavy reflector 8,2" rotation="0 0 90" universe="230" /> <cell id="1502" material="5" name="reactor pressure vessel" region="78 -79 81 -80" universe="0" />
<cell fill="210" id="1411" name="heavy reflector 8,3" rotation="0 0 90" universe="231" /> <lattice id="122" name="Assembly (1.6%) no BAs instr">
<cell fill="209" id="1412" name="heavy reflector 8,4" rotation="0 0 90" universe="232" />
<cell fill="211" id="1413" name="heavy reflector 8,5" rotation="0 0 90" universe="233" />
<cell fill="212" id="1414" name="heavy reflector 8,6" rotation="0 0 180" universe="234" />
<cell id="1415" material="4" name="heavy reflector" universe="235" />
<cell fill="236" id="1416" name="Main core" region="-71 81 -80" universe="0" />
<cell id="1417" material="4" name="core barrel" region="71 -72 81 -80" universe="0" />
<cell id="1418" material="4" name="neutron shield panel NW" region="72 -73 74 -75 81 -80" universe="0" />
<cell id="1419" material="8" name="neutron shield panel N" region="72 -73 75 -77 81 -80" universe="0" />
<cell id="1420" material="4" name="neutron shield panel SE" region="72 -73 -74 75 81 -80" universe="0" />
<cell id="1421" material="8" name="neutron shield panel E" region="72 -73 74 76 81 -80" universe="0" />
<cell id="1422" material="4" name="neutron shield panel NE" region="72 -73 76 -77 81 -80" universe="0" />
<cell id="1423" material="8" name="neutron shield panel S" region="72 -73 -75 77 81 -80" universe="0" />
<cell id="1424" material="4" name="neutron shield panel SW" region="72 -73 -76 77 81 -80" universe="0" />
<cell id="1425" material="8" name="neutron shield panel W" region="72 -73 -74 -76 81 -80" universe="0" />
<cell id="1426" material="8" name="downcomer" region="73 -78 81 -80" universe="0" />
<cell id="1427" material="5" name="reactor pressure vessel" region="78 -79 81 -80" universe="0" />
<lattice id="125" name="Assembly (1.6%) no BAs instr">
<pitch>1.25984 1.25984</pitch> <pitch>1.25984 1.25984</pitch>
<dimension>17 17</dimension> <dimension>17 17</dimension>
<lower_left>-10.70864 -10.70864</lower_left> <lower_left>-10.70864 -10.70864</lower_left>
<universes> <universes>
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 98 98 10 98 98 10 98 98 10 98 98 98 98 98 99 99 99 99 99 10 99 99 10 99 99 10 99 99 99 99 99
98 98 98 10 98 98 98 98 98 98 98 98 98 10 98 98 98 99 99 99 10 99 99 99 99 99 99 99 99 99 10 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 10 98 98 10 98 98 10 98 98 10 98 98 10 98 98 99 99 10 99 99 10 99 99 10 99 99 10 99 99 10 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 10 98 98 10 98 98 17 98 98 10 98 98 10 98 98 99 99 10 99 99 10 99 99 17 99 99 10 99 99 10 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 10 98 98 10 98 98 10 98 98 10 98 98 10 98 98 99 99 10 99 99 10 99 99 10 99 99 10 99 99 10 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 10 98 98 98 98 98 98 98 98 98 10 98 98 98 99 99 99 10 99 99 99 99 99 99 99 99 99 10 99 99 99
98 98 98 98 98 10 98 98 10 98 98 10 98 98 98 98 98 99 99 99 99 99 10 99 99 10 99 99 10 99 99 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98 </universes> 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 </universes>
</lattice> </lattice>
<lattice id="145" name="Assembly (2.4%) CR D"> <lattice id="142" name="Assembly (2.4%) CR D">
<pitch>1.25984 1.25984</pitch> <pitch>1.25984 1.25984</pitch>
<dimension>17 17</dimension> <dimension>17 17</dimension>
<lower_left>-10.70864 -10.70864</lower_left> <lower_left>-10.70864 -10.70864</lower_left>
<universes> <universes>
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 102 102 51 102 102 51 102 102 51 102 102 102 102 102 101 101 101 101 101 51 101 101 51 101 101 51 101 101 101 101 101
102 102 102 51 102 102 102 102 102 102 102 102 102 51 102 102 102 101 101 101 51 101 101 101 101 101 101 101 101 101 51 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 51 102 102 51 102 102 51 102 102 51 102 102 51 102 102 101 101 51 101 101 51 101 101 51 101 101 51 101 101 51 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 51 102 102 51 102 102 11 102 102 51 102 102 51 102 102 101 101 51 101 101 51 101 101 11 101 101 51 101 101 51 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 51 102 102 51 102 102 51 102 102 51 102 102 51 102 102 101 101 51 101 101 51 101 101 51 101 101 51 101 101 51 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 51 102 102 102 102 102 102 102 102 102 51 102 102 102 101 101 101 51 101 101 101 101 101 101 101 101 101 51 101 101 101
102 102 102 102 102 51 102 102 51 102 102 51 102 102 102 102 102 101 101 101 101 101 51 101 101 51 101 101 51 101 101 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101
102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 102 </universes> 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 101 </universes>
</lattice> </lattice>
<lattice id="165" name="Assembly (3.1%) 16BA"> <lattice id="162" name="Assembly (3.1%) 16BA">
<pitch>1.25984 1.25984</pitch> <pitch>1.25984 1.25984</pitch>
<dimension>17 17</dimension> <dimension>17 17</dimension>
<lower_left>-10.70864 -10.70864</lower_left> <lower_left>-10.70864 -10.70864</lower_left>
<universes> <universes>
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 90 106 106 90 106 106 90 106 106 106 106 106 103 103 103 103 103 90 103 103 90 103 103 90 103 103 103 103 103
106 106 106 90 106 106 106 106 106 106 106 106 106 90 106 106 106 103 103 103 90 103 103 103 103 103 103 103 103 103 90 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 90 106 106 10 106 106 10 106 106 10 106 106 90 106 106 103 103 90 103 103 10 103 103 10 103 103 10 103 103 90 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 90 106 106 10 106 106 11 106 106 10 106 106 90 106 106 103 103 90 103 103 10 103 103 11 103 103 10 103 103 90 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 90 106 106 10 106 106 10 106 106 10 106 106 90 106 106 103 103 90 103 103 10 103 103 10 103 103 10 103 103 90 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 90 106 106 106 106 106 106 106 106 106 90 106 106 106 103 103 103 90 103 103 103 103 103 103 103 103 103 90 103 103 103
106 106 106 106 106 90 106 106 90 106 106 90 106 106 106 106 106 103 103 103 103 103 90 103 103 90 103 103 90 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 </universes> 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 </universes>
</lattice> </lattice>
<lattice id="183" name="Assembly (3.1%) no BAs instr"> <lattice id="180" name="Assembly (3.1%) no BAs instr">
<pitch>1.25984 1.25984</pitch> <pitch>1.25984 1.25984</pitch>
<dimension>17 17</dimension> <dimension>17 17</dimension>
<lower_left>-10.70864 -10.70864</lower_left> <lower_left>-10.70864 -10.70864</lower_left>
<universes> <universes>
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 10 106 106 10 106 106 10 106 106 106 106 106 103 103 103 103 103 10 103 103 10 103 103 10 103 103 103 103 103
106 106 106 10 106 106 106 106 106 106 106 106 106 10 106 106 106 103 103 103 10 103 103 103 103 103 103 103 103 103 10 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 10 106 106 10 106 106 10 106 106 10 106 106 10 106 106 103 103 10 103 103 10 103 103 10 103 103 10 103 103 10 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 10 106 106 10 106 106 17 106 106 10 106 106 10 106 106 103 103 10 103 103 10 103 103 17 103 103 10 103 103 10 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 10 106 106 10 106 106 10 106 106 10 106 106 10 106 106 103 103 10 103 103 10 103 103 10 103 103 10 103 103 10 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 10 106 106 106 106 106 106 106 106 106 10 106 106 106 103 103 103 10 103 103 103 103 103 103 103 103 103 10 103 103 103
106 106 106 106 106 10 106 106 10 106 106 10 106 106 106 106 106 103 103 103 103 103 10 103 103 10 103 103 10 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103
106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 106 </universes> 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 103 </universes>
</lattice> </lattice>
<lattice id="236" name="Main core"> <lattice id="233" name="Main core">
<pitch>21.503639999999997 21.503639999999997</pitch> <pitch>21.503639999999997 21.503639999999997</pitch>
<dimension>9 9</dimension> <dimension>9 9</dimension>
<lower_left>-96.76637999999998 -96.76637999999998</lower_left> <lower_left>-96.76637999999998 -96.76637999999998</lower_left>
<universes> <universes>
235 235 216 217 218 219 220 235 235 232 232 213 214 215 216 217 232 232
235 208 207 184 146 184 213 221 235 232 205 204 181 143 181 210 218 232
212 207 184 146 166 146 184 213 222 209 204 181 143 163 143 181 210 219
210 184 146 166 146 166 146 184 223 207 181 143 163 143 163 143 181 220
209 146 166 146 126 146 166 146 224 206 143 163 143 123 143 163 143 221
211 184 146 166 146 166 146 184 225 208 181 143 163 143 163 143 181 222
226 214 184 146 166 146 184 215 227 223 211 181 143 163 143 181 212 224
235 228 214 184 146 184 215 229 235 232 225 211 181 143 181 212 226 232
235 235 230 231 232 233 234 235 235 </universes> 232 232 227 228 229 230 231 232 232 </universes>
</lattice> </lattice>
<surface coeffs="0.0 0.0 0.405765" id="1" name="Pellet OR" type="z-cylinder" /> <surface coeffs="0.0 0.0 0.405765" id="1" name="Pellet OR" type="z-cylinder" />
<surface coeffs="0.0 0.0 0.06459" id="2" name="FR Plenum Spring OR" type="z-cylinder" /> <surface coeffs="0.0 0.0 0.06459" id="2" name="FR Plenum Spring OR" type="z-cylinder" />

View file

@ -172,14 +172,14 @@
<material id="9" name="Borosilicate Glass"> <material id="9" name="Borosilicate Glass">
<temperature>300</temperature> <temperature>300</temperature>
<density units="g/cc" value="2.26" /> <density units="g/cc" value="2.26" />
<nuclide ao="0.012259454378427138" name="B10" />
<nuclide ao="0.06018253698401973" name="B11" />
<nuclide ao="0.6509787013744828" name="O16" /> <nuclide ao="0.6509787013744828" name="O16" />
<nuclide ao="0.00024681447050525047" name="O17" /> <nuclide ao="0.00024681447050525047" name="O17" />
<nuclide ao="0.23640592474731761" name="Si28" /> <nuclide ao="0.23640592474731761" name="Si28" />
<nuclide ao="0.01200401834354893" name="Si29" /> <nuclide ao="0.01200401834354893" name="Si29" />
<nuclide ao="0.007913102535354443" name="Si30" /> <nuclide ao="0.007913102535354443" name="Si30" />
<nuclide ao="0.024236195272461444" name="Al27" /> <nuclide ao="0.024236195272461444" name="Al27" />
<nuclide ao="0.012259454378427138" name="B10" />
<nuclide ao="0.06018253698401973" name="B11" />
</material> </material>
<material id="10" name="1.6% Enr. UO2 Fuel"> <material id="10" name="1.6% Enr. UO2 Fuel">
<temperature>300</temperature> <temperature>300</temperature>

View file

@ -76,4 +76,17 @@
<color id="11" rgb="255 215 0" /> <color id="11" rgb="255 215 0" />
<color id="12" rgb="0 0 128" /> <color id="12" rgb="0 0 128" />
</plot> </plot>
<!--assembly no spacer cell-->
<plot basis="xy" color_by="cell" filename="assm_no_spacer_cell" id="5" type="slice">
<origin>0.0 0.0 90.0</origin>
<width>32.25546 32.25546</width>
<pixels>2000 2000</pixels>
<background>255 255 255</background>
</plot>
<!--z slice-->
<plot basis="xz" color_by="cell" filename="assm_xz" id="6" type="slice">
<origin>0.0 0.0 141.61599999999999</origin>
<width>32.25546 283.23199999999997</width>
<pixels>455 4000</pixels>
</plot>
</plots> </plots>

View file

@ -0,0 +1,27 @@
<?xml version='1.0' encoding='utf-8'?>
<tallies>
<filter id="1" type="distribcell">
<bins>751</bins>
</filter>
<filter id="2" type="distribcell">
<bins>728</bins>
</filter>
<filter id="3" type="distribcell">
<bins>705</bins>
</filter>
<tally id="1" name="depletion tally">
<filters>1</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="2" name="depletion tally">
<filters>2</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="3" name="depletion tally">
<filters>3</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
</tallies>

View file

@ -1,75 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<tallies>
<filter id="1" type="distribcell">
<bins>684</bins>
</filter>
<filter id="2" type="distribcell">
<bins>688</bins>
</filter>
<filter id="3" type="distribcell">
<bins>693</bins>
</filter>
<filter id="4" type="distribcell">
<bins>719</bins>
</filter>
<filter id="5" type="distribcell">
<bins>723</bins>
</filter>
<filter id="6" type="distribcell">
<bins>728</bins>
</filter>
<filter id="7" type="distribcell">
<bins>754</bins>
</filter>
<filter id="8" type="distribcell">
<bins>758</bins>
</filter>
<filter id="9" type="distribcell">
<bins>763</bins>
</filter>
<tally id="1" name="depletion tally">
<filters>1</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="2" name="depletion tally">
<filters>2</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="3" name="depletion tally">
<filters>3</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="4" name="depletion tally">
<filters>4</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="5" name="depletion tally">
<filters>5</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="6" name="depletion tally">
<filters>6</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="7" name="depletion tally">
<filters>7</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="8" name="depletion tally">
<filters>8</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
<tally id="9" name="depletion tally">
<filters>9</filters>
<nuclides>O16 O17 U234 U235 U238 U236</nuclides>
<scores>(n,p) (n,a) (n,gamma) fission (n,2n) (n,3n) (n,4n)</scores>
</tally>
</tallies>

View file

@ -6,7 +6,7 @@ import openmc
from .materials import mats from .materials import mats
from .surfaces import surfs, pin_pitch from .surfaces import surfs, pin_pitch
from .pins import univs from .pins import pin_universes
def make_assembly(name, universes): def make_assembly(name, universes):
@ -30,12 +30,12 @@ def make_assembly(name, universes):
# Instantiate the lattice # Instantiate the lattice
lattice = openmc.RectLattice(name=name) lattice = openmc.RectLattice(name=name)
lattice.lower_left = [-17.*pin_pitch/2., -17.*pin_pitch/2.] lattice.lower_left = (-17.*pin_pitch/2., -17.*pin_pitch/2.)
lattice.pitch = [pin_pitch, pin_pitch] lattice.pitch = (pin_pitch, pin_pitch)
lattice.universes = universes lattice.universes = universes
# Create rectangular prism for lattice grid box # Create rectangular prism for lattice grid box
lat_grid_box = (surfs['lat grid box outer'] & ~surfs['lat grid box inner']) lat_grid_box = surfs['lat grid box outer'] & ~surfs['lat grid box inner']
# Add lattice to bounding cell # Add lattice to bounding cell
univ_name = name + ' lattice' univ_name = name + ' lattice'
@ -47,7 +47,7 @@ def make_assembly(name, universes):
# Add outer water cell # Add outer water cell
cell = openmc.Cell(name=univ_name + ' outer water') cell = openmc.Cell(name=univ_name + ' outer water')
cell.fill = univs['water pin'] cell.fill = mats['H2O']
cell.region = ~surfs['lat grid box outer'] cell.region = ~surfs['lat grid box outer']
universe.add_cell(cell) universe.add_cell(cell)
@ -59,7 +59,7 @@ def make_assembly(name, universes):
# Make axial cell for outside of assembly (with sleeve) # Make axial cell for outside of assembly (with sleeve)
cell = openmc.Cell(name=univ_name + ' axial (1)') cell = openmc.Cell(name=univ_name + ' axial (1)')
cell.fill = mats['SS'] cell.fill = mats['In']
cell.region = lat_grid_box & +surfs['grid1bot'] & -surfs['grid1top'] cell.region = lat_grid_box & +surfs['grid1bot'] & -surfs['grid1top']
universe.add_cell(cell) universe.add_cell(cell)
@ -95,290 +95,325 @@ def make_assembly(name, universes):
# Make axial cell for outside of assembly (with sleeve) # Make axial cell for outside of assembly (with sleeve)
cell = openmc.Cell(name=univ_name + ' axial (7)') cell = openmc.Cell(name=univ_name + ' axial (7)')
cell.fill = mats['SS'] cell.fill = mats['Zr']
cell.region = lat_grid_box & +surfs['grid4bot'] & -surfs['grid4top'] cell.region = lat_grid_box & +surfs['grid4bot'] & -surfs['grid4top']
universe.add_cell(cell) universe.add_cell(cell)
# Make top axial cell for outside of assembly (without sleeve)
cell = openmc.Cell(name=univ_name + ' axial (8)')
cell.fill = mats['H2O']
cell.region = lat_grid_box & +surfs['grid4top'] & -surfs['grid5bot']
universe.add_cell(cell)
# Make axial cell for outside of assembly (with sleeve)
cell = openmc.Cell(name=univ_name + ' axial (9)')
cell.fill = mats['Zr']
cell.region = lat_grid_box & +surfs['grid5bot'] & -surfs['grid5top']
universe.add_cell(cell)
# Make top axial cell for outside of assembly (without sleeve) # Make top axial cell for outside of assembly (without sleeve)
cell = openmc.Cell(name=univ_name + ' axial (last)') cell = openmc.Cell(name=univ_name + ' axial (last)')
cell.fill = mats['H2O'] cell.fill = mats['H2O']
cell.region = lat_grid_box & +surfs['grid4top'] cell.region = lat_grid_box & +surfs['grid5top']
universe.add_cell(cell) universe.add_cell(cell)
return universe return universe
# commonly needed universes def assembly_universes(num_rings, num_axial):
gtu = univs['GT empty'] """Generate universes for SMR fuel assemblies.
gti = univs['GT empty instr']
bas = univs['BA stack'] Parameters
ins = univs['IT stack'] ----------
crA = univs['GT CR bank A'] num_rings : int
crB = univs['GT CR bank B'] Number of annual regions in fuel
crC = univs['GT CR bank C'] num_axial : int
crD = univs['GT CR bank D'] Number of axial subdivisions in fuel
crSA = univs['GT CR bank SA']
crSB = univs['GT CR bank SB'] Returns
crSC = univs['GT CR bank SC'] -------
crSD = univs['GT CR bank SD'] dict
crSE = univs['GT CR bank SE'] Dictionary mapping a universe name to a openmc.Universe object
"""
pins = pin_universes(num_rings, num_axial)
# Create dictionary to store assembly universes
univs = {}
# commonly needed universes
gtu = pins['GT empty']
gti = pins['GT empty instr']
bas = pins['BA stack']
ins = pins['IT stack']
crA = pins['GT CR bank A']
crB = pins['GT CR bank B']
crC = pins['GT CR bank C']
crD = pins['GT CR bank D']
crSA = pins['GT CR bank SA']
crSB = pins['GT CR bank SB']
crSC = pins['GT CR bank SC']
crSD = pins['GT CR bank SD']
crSE = pins['GT CR bank SE']
# Define the NumPy array indices for assembly locations where there # Define the NumPy array indices for assembly locations where there
# may be CR guide tubes, instrument tubes and burnable absorbers # may be CR guide tubes, instrument tubes and burnable absorbers
nonfuel_y = \ nonfuel_y = \
np.array([2,2,2,3,3,5,5,5,5,5,8,8,8,8,8,11,11,11,11,11,13,13,14,14,14]) np.array([2,2,2,3,3,5,5,5,5,5,8,8,8,8,8,11,11,11,11,11,13,13,14,14,14])
nonfuel_x = \ nonfuel_x = \
np.array([5,8,11,3,13,2,5,8,11,14,2,5,8,11,14,2,5,8,11,14,3,13,5,8,11]) np.array([5,8,11,3,13,2,5,8,11,14,2,5,8,11,14,2,5,8,11,14,3,13,5,8,11])
#### 1.6% ENRICHED ASSEMBLIES #### 1.6% ENRICHED ASSEMBLIES
for cent, comment in [(gti, ''), (ins, ' instr')]: for cent, comment in [(gti, ''), (ins, ' instr')]:
# NO BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (1.6%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu,
gtu, gtu, gtu, gtu, gtu,
gtu, gtu, cent, gtu, gtu,
gtu, gtu, gtu, gtu, gtu,
gtu, gtu,
gtu, gtu, gtu ]
univs['Assembly (1.6%)' + comment] = \
make_assembly('Assembly (1.6%) no BAs' + comment, universes)
# WITH EACH CONTROL ROD BANK
for bank, comment2 in [(crA, 'A'), (crB, 'B'), (crC, 'C'), (crD, 'D'),
(crSB, 'SB'), (crSC, 'SC'), (crSD, 'SD'), (crSE, 'SE')]:
# NO BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (1.6%) stack'] universes[:,:] = pins['Fuel (1.6%) stack']
universes[nonfuel_y, nonfuel_x] = [ bank, bank, bank, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
bank, bank, gtu, gtu,
bank, bank, bank, bank, bank, gtu, gtu, gtu, gtu, gtu,
bank, bank, cent, bank, bank, gtu, gtu, cent, gtu, gtu,
bank, bank, bank, bank, bank, gtu, gtu, gtu, gtu, gtu,
bank, bank, gtu, gtu,
bank, bank, bank ] gtu, gtu, gtu ]
univs['Assembly (1.6%) CR {}'.format(comment2) + comment] = \ univs['Assembly (1.6%)' + comment] = \
make_assembly('Assembly (1.6%) CR {}'.format(comment2) + comment, universes) make_assembly('Assembly (1.6%) no BAs' + comment, universes)
# WITH EACH CONTROL ROD BANK
for bank, comment2 in [(crA, 'A'), (crB, 'B'), (crC, 'C'), (crD, 'D'),
(crSB, 'SB'), (crSC, 'SC'), (crSD, 'SD'), (crSE, 'SE')]:
universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = pins['Fuel (1.6%) stack']
universes[nonfuel_y, nonfuel_x] = [ bank, bank, bank,
bank, bank,
bank, bank, bank, bank, bank,
bank, bank, cent, bank, bank,
bank, bank, bank, bank, bank,
bank, bank,
bank, bank, bank ]
univs['Assembly (1.6%) CR {}'.format(comment2) + comment] = \
make_assembly('Assembly (1.6%) CR {}'.format(comment2) + comment, universes)
#### 2.4% ENRICHED ASSEMBLIES #### 2.4% ENRICHED ASSEMBLIES
for cent, comment in [(gti, ''), (ins, ' instr')]: for cent, comment in [(gti, ''), (ins, ' instr')]:
# NO BURNABLE ABSORBERS # NO BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (2.4%) stack'] universes[:,:] = pins['Fuel (2.4%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu ] gtu, gtu, gtu ]
univs['Assembly (2.4%) no BAs' + comment] = \ univs['Assembly (2.4%) no BAs' + comment] = \
make_assembly('Assembly (2.4%) no BAs' + comment, universes) make_assembly('Assembly (2.4%) no BAs' + comment, universes)
# WITH CONTROL ROD D BANK # WITH CONTROL ROD D BANK
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (2.4%) stack'] universes[:,:] = pins['Fuel (2.4%) stack']
universes[nonfuel_y, nonfuel_x] = [ crD, crD, crD, universes[nonfuel_y, nonfuel_x] = [ crD, crD, crD,
crD, crD, crD, crD,
crD, crD, crD, crD, crD, crD, crD, crD, crD, crD,
crD, crD, cent, crD, crD, crD, crD, cent, crD, crD,
crD, crD, crD, crD, crD, crD, crD, crD, crD, crD,
crD, crD, crD, crD,
crD, crD, crD ] crD, crD, crD ]
univs['Assembly (2.4%) CR D' + comment] = \ univs['Assembly (2.4%) CR D' + comment] = \
make_assembly('Assembly (2.4%) CR D' + comment, universes) make_assembly('Assembly (2.4%) CR D' + comment, universes)
# WITH 12 BURNABLE ABSORBERS # WITH 12 BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (2.4%) stack'] universes[:,:] = pins['Fuel (2.4%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, gtu, bas, universes[nonfuel_y, nonfuel_x] = [ bas, gtu, bas,
bas, bas, bas, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, bas, bas, bas,
bas, gtu, bas ] bas, gtu, bas ]
univs['Assembly (2.4%) 12BA' + comment] = \ univs['Assembly (2.4%) 12BA' + comment] = \
make_assembly('Assembly (2.4%) 12BA' + comment, universes) make_assembly('Assembly (2.4%) 12BA' + comment, universes)
# WITH 16 BURNABLE ABSORBERS # WITH 16 BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (2.4%) stack'] universes[:,:] = pins['Fuel (2.4%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas, universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas,
bas, bas, bas, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, gtu, cent, gtu, bas, bas, gtu, cent, gtu, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, bas, bas, bas,
bas, bas, bas ] bas, bas, bas ]
univs['Assembly (2.4%) 16BA' + comment] = \ univs['Assembly (2.4%) 16BA' + comment] = \
make_assembly('Assembly (2.4%) 16BA' + comment, universes) make_assembly('Assembly (2.4%) 16BA' + comment, universes)
#### 3.1% ENRICHED ASSEMBLIES #### 3.1% ENRICHED ASSEMBLIES
for cent, comment in [(gti, ''), (ins, ' instr')]: for cent, comment in [(gti, ''), (ins, ' instr')]:
# NO BURNABLE ABSORBERS # NO BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu ] gtu, gtu, gtu ]
univs['Assembly (3.1%)' + comment] = \ univs['Assembly (3.1%)' + comment] = \
make_assembly('Assembly (3.1%) no BAs' + comment, universes) make_assembly('Assembly (3.1%) no BAs' + comment, universes)
# WITH CONTROL ROD SA BANK # WITH CONTROL ROD SA BANK
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ crSA, crSA, crSA, universes[nonfuel_y, nonfuel_x] = [ crSA, crSA, crSA,
crSA, crSA, crSA, crSA,
crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA,
crSA, crSA, cent, crSA, crSA, crSA, crSA, cent, crSA, crSA,
crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA, crSA,
crSA, crSA, crSA, crSA,
crSA, crSA, crSA ] crSA, crSA, crSA ]
univs['Assembly (3.1%) CR SA' + comment] = \ univs['Assembly (3.1%) CR SA' + comment] = \
make_assembly('Assembly (3.1%) CR SA' + comment, universes) make_assembly('Assembly (3.1%) CR SA' + comment, universes)
# WITH 20 BURNABLE ABSORBERS # WITH 20 BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas, universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas,
bas, bas, bas, bas,
bas, bas, gtu, bas, bas, bas, bas, gtu, bas, bas,
bas, gtu, cent, gtu, bas, bas, gtu, cent, gtu, bas,
bas, bas, gtu, bas, bas, bas, bas, gtu, bas, bas,
bas, bas, bas, bas,
bas, bas, bas ] bas, bas, bas ]
univs['Assembly (3.1%) 20BA' + comment] = \ univs['Assembly (3.1%) 20BA' + comment] = \
make_assembly('Assembly (3.1%) 20BA' + comment, universes) make_assembly('Assembly (3.1%) 20BA' + comment, universes)
# WITH 16 BURNABLE ABSORBERS # WITH 16 BURNABLE ABSORBERS
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas, universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas,
bas, bas, bas, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, gtu, cent, gtu, bas, bas, gtu, cent, gtu, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, bas, bas, bas,
bas, bas, bas ] bas, bas, bas ]
univs['Assembly (3.1%) 16BA' + comment] = \ univs['Assembly (3.1%) 16BA' + comment] = \
make_assembly('Assembly (3.1%) 16BA' + comment, universes) make_assembly('Assembly (3.1%) 16BA' + comment, universes)
# WITH 15 BURNABLE ABSORBERS NW # WITH 15 BURNABLE ABSORBERS NW
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, bas, bas, bas, bas, gtu, bas, bas, bas, bas,
gtu, bas, cent, bas, bas, gtu, bas, cent, bas, bas,
gtu, bas, bas, bas, bas, gtu, bas, bas, bas, bas,
gtu, bas, gtu, bas,
bas, bas, bas ] bas, bas, bas ]
univs['Assembly (3.1%) 15BANW' + comment] = \ univs['Assembly (3.1%) 15BANW' + comment] = \
make_assembly('Assembly (3.1%) 15BANW' + comment, universes) make_assembly('Assembly (3.1%) 15BANW' + comment, universes)
# WITH 15 BURNABLE ABSORBERS NE # WITH 15 BURNABLE ABSORBERS NE
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
bas, bas, bas, bas, gtu, bas, bas, bas, bas, gtu,
bas, bas, cent, bas, gtu, bas, bas, cent, bas, gtu,
bas, bas, bas, bas, gtu, bas, bas, bas, bas, gtu,
bas, gtu, bas, gtu,
bas, bas, bas ] bas, bas, bas ]
univs['Assembly (3.1%) 15BANE' + comment] = \ univs['Assembly (3.1%) 15BANE' + comment] = \
make_assembly('Assembly (3.1%) 15BANE' + comment, universes) make_assembly('Assembly (3.1%) 15BANE' + comment, universes)
# WITH 15 BURNABLE ABSORBERS SW # WITH 15 BURNABLE ABSORBERS SW
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas, universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas,
gtu, bas, gtu, bas,
gtu, bas, bas, bas, bas, gtu, bas, bas, bas, bas,
gtu, bas, cent, bas, bas, gtu, bas, cent, bas, bas,
gtu, bas, bas, bas, bas, gtu, bas, bas, bas, bas,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu ] gtu, gtu, gtu ]
univs['Assembly (3.1%) 15BASW' + comment] = \ univs['Assembly (3.1%) 15BASW' + comment] = \
make_assembly('Assembly (3.1%) 15BASW' + comment, universes) make_assembly('Assembly (3.1%) 15BASW' + comment, universes)
# WITH 15 BURNABLE ABSORBERS SE # WITH 15 BURNABLE ABSORBERS SE
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas, universes[nonfuel_y, nonfuel_x] = [ bas, bas, bas,
bas, gtu, bas, gtu,
bas, bas, bas, bas, gtu, bas, bas, bas, bas, gtu,
bas, bas, cent, bas, gtu, bas, bas, cent, bas, gtu,
bas, bas, bas, bas, gtu, bas, bas, bas, bas, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu ] gtu, gtu, gtu ]
univs['Assembly (3.1%) 15BASE' + comment] = \ univs['Assembly (3.1%) 15BASE' + comment] = \
make_assembly('Assembly (3.1%) 15BASE' + comment, universes) make_assembly('Assembly (3.1%) 15BASE' + comment, universes)
# WITH 6 BURNABLE ABSORBERS N # WITH 6 BURNABLE ABSORBERS N
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
bas, bas, bas, bas,
bas, gtu, bas ] bas, gtu, bas ]
univs['Assembly (3.1%) 6BAN' + comment] = \ univs['Assembly (3.1%) 6BAN' + comment] = \
make_assembly('Assembly (3.1%) 6BAN' + comment, universes) make_assembly('Assembly (3.1%) 6BAN' + comment, universes)
# WITH 6 BURNABLE ABSORBERS S # WITH 6 BURNABLE ABSORBERS S
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, gtu, bas, universes[nonfuel_y, nonfuel_x] = [ bas, gtu, bas,
bas, bas, bas, bas,
bas, gtu, gtu, gtu, bas, bas, gtu, gtu, gtu, bas,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu, gtu,
gtu, gtu, gtu, gtu,
gtu, gtu, gtu ] gtu, gtu, gtu ]
univs['Assembly (3.1%) 6BAS' + comment] = \ univs['Assembly (3.1%) 6BAS' + comment] = \
make_assembly('Assembly (3.1%) 6BAS' + comment, universes) make_assembly('Assembly (3.1%) 6BAS' + comment, universes)
# WITH 6 BURNABLE ABSORBERS W # WITH 6 BURNABLE ABSORBERS W
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, bas, universes[nonfuel_y, nonfuel_x] = [ gtu, gtu, bas,
gtu, bas, gtu, bas,
gtu, gtu, gtu, gtu, bas, gtu, gtu, gtu, gtu, bas,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
gtu, gtu, gtu, gtu, bas, gtu, gtu, gtu, gtu, bas,
gtu, bas, gtu, bas,
gtu, gtu, bas ] gtu, gtu, bas ]
univs['Assembly (3.1%) 6BAW' + comment] = \ univs['Assembly (3.1%) 6BAW' + comment] = \
make_assembly('Assembly (3.1%) 6BAW' + comment, universes) make_assembly('Assembly (3.1%) 6BAW' + comment, universes)
# WITH 6 BURNABLE ABSORBERS E # WITH 6 BURNABLE ABSORBERS E
universes = np.empty((17,17), dtype=openmc.Universe) universes = np.empty((17,17), dtype=openmc.Universe)
universes[:,:] = univs['Fuel (3.1%) stack'] universes[:,:] = pins['Fuel (3.1%) stack']
universes[nonfuel_y, nonfuel_x] = [ bas, gtu, gtu, universes[nonfuel_y, nonfuel_x] = [ bas, gtu, gtu,
bas, gtu, bas, gtu,
bas, gtu, gtu, gtu, gtu, bas, gtu, gtu, gtu, gtu,
gtu, gtu, cent, gtu, gtu, gtu, gtu, cent, gtu, gtu,
bas, gtu, gtu, gtu, gtu, bas, gtu, gtu, gtu, gtu,
bas, gtu, bas, gtu,
bas, gtu, gtu ] bas, gtu, gtu ]
univs['Assembly (3.1%) 6BAE' + comment] = \ univs['Assembly (3.1%) 6BAE' + comment] = \
make_assembly('Assembly (3.1%) 6BAE' + comment, universes) make_assembly('Assembly (3.1%) 6BAE' + comment, universes)
return univs

View file

@ -6,202 +6,209 @@ import openmc
from .materials import mats from .materials import mats
from .surfaces import surfs, lattice_pitch from .surfaces import surfs, lattice_pitch
from .reflector import univs from .reflector import reflector_universes
from .assemblies import assembly_universes
#### CONSTRUCT MAIN CORE LATTICE def core_geometry(num_rings, num_axial):
"""Generate full core SMR geometry.
core = openmc.RectLattice(name='Main core') Parameters
core.lower_left = [-9*lattice_pitch/2, -9*lattice_pitch/2] ----------
core.pitch = [lattice_pitch, lattice_pitch] num_rings : int
universes = np.tile(univs['heavy reflector'], (9,9)) Number of annual regions in fuel
num_axial : int
Number of axial subdivisions in fuel
universes[0, 2] = univs['heavy reflector 0,2'] Returns
universes[0, 3] = univs['heavy reflector 0,3'] -------
universes[0, 4] = univs['heavy reflector 0,4'] openmc.Geometry
universes[0, 5] = univs['heavy reflector 0,5'] SMR full core geometry
universes[0, 6] = univs['heavy reflector 0,6']
universes[1, 1] = univs['heavy reflector 1,1'] """
universes[1, 2] = univs['heavy reflector NW'] assembly = assembly_universes(num_rings, num_axial)
universes[1, 3] = univs['Assembly (3.1%) instr'] reflector = reflector_universes()
universes[1, 4] = univs['Assembly (2.4%) CR D']
universes[1, 5] = univs['Assembly (3.1%) instr']
universes[1, 6] = univs['heavy reflector NE']
universes[1, 7] = univs['heavy reflector 1,7']
universes[2, 0] = univs['heavy reflector 2,0'] # Construct main core lattice
universes[2, 1] = univs['heavy reflector NW'] core = openmc.RectLattice(name='Main core')
universes[2, 2] = univs['Assembly (3.1%) instr'] core.lower_left = (-9*lattice_pitch/2, -9*lattice_pitch/2)
universes[2, 3] = univs['Assembly (2.4%) CR D'] core.pitch = (lattice_pitch, lattice_pitch)
universes[2, 4] = univs['Assembly (3.1%) 16BA'] universes = np.tile(reflector['solid'], (9, 9))
universes[2, 5] = univs['Assembly (2.4%) CR D']
universes[2, 6] = univs['Assembly (3.1%) instr']
universes[2, 7] = univs['heavy reflector NE']
universes[2, 8] = univs['heavy reflector 2,8']
universes[3, 0] = univs['heavy reflector 3,0'] universes[0, 2] = reflector['0,2']
universes[3, 1] = univs['Assembly (3.1%) instr'] universes[0, 3] = reflector['0,3']
universes[3, 2] = univs['Assembly (2.4%) CR D'] universes[0, 4] = reflector['0,4']
universes[3, 3] = univs['Assembly (3.1%) 16BA'] universes[0, 5] = reflector['0,5']
universes[3, 4] = univs['Assembly (2.4%) CR D'] universes[0, 6] = reflector['0,6']
universes[3, 5] = univs['Assembly (3.1%) 16BA']
universes[3, 6] = univs['Assembly (2.4%) CR D']
universes[3, 7] = univs['Assembly (3.1%) instr']
universes[3, 8] = univs['heavy reflector 3,8']
universes[4, 0] = univs['heavy reflector 4,0'] universes[1, 1] = reflector['1,1']
universes[4, 1] = univs['Assembly (2.4%) CR D'] universes[1, 2] = reflector['NW']
universes[4, 2] = univs['Assembly (3.1%) 16BA'] universes[1, 3] = assembly['Assembly (3.1%) instr']
universes[4, 3] = univs['Assembly (2.4%) CR D'] universes[1, 4] = assembly['Assembly (2.4%) CR D']
universes[4, 4] = univs['Assembly (1.6%) instr'] universes[1, 5] = assembly['Assembly (3.1%) instr']
universes[4, 5] = univs['Assembly (2.4%) CR D'] universes[1, 6] = reflector['NE']
universes[4, 6] = univs['Assembly (3.1%) 16BA'] universes[1, 7] = reflector['1,7']
universes[4, 7] = univs['Assembly (2.4%) CR D']
universes[4, 8] = univs['heavy reflector 4,8']
universes[5, 0] = univs['heavy reflector 5,0'] universes[2, 0] = reflector['2,0']
universes[5, 1] = univs['Assembly (3.1%) instr'] universes[2, 1] = reflector['NW']
universes[5, 2] = univs['Assembly (2.4%) CR D'] universes[2, 2] = assembly['Assembly (3.1%) instr']
universes[5, 3] = univs['Assembly (3.1%) 16BA'] universes[2, 3] = assembly['Assembly (2.4%) CR D']
universes[5, 4] = univs['Assembly (2.4%) CR D'] universes[2, 4] = assembly['Assembly (3.1%) 16BA']
universes[5, 5] = univs['Assembly (3.1%) 16BA'] universes[2, 5] = assembly['Assembly (2.4%) CR D']
universes[5, 6] = univs['Assembly (2.4%) CR D'] universes[2, 6] = assembly['Assembly (3.1%) instr']
universes[5, 7] = univs['Assembly (3.1%) instr'] universes[2, 7] = reflector['NE']
universes[5, 8] = univs['heavy reflector 5,8'] universes[2, 8] = reflector['2,8']
universes[6, 0] = univs['heavy reflector 6,0'] universes[3, 0] = reflector['3,0']
universes[6, 1] = univs['heavy reflector SW'] universes[3, 1] = assembly['Assembly (3.1%) instr']
universes[6, 2] = univs['Assembly (3.1%) instr'] universes[3, 2] = assembly['Assembly (2.4%) CR D']
universes[6, 3] = univs['Assembly (2.4%) CR D'] universes[3, 3] = assembly['Assembly (3.1%) 16BA']
universes[6, 4] = univs['Assembly (3.1%) 16BA'] universes[3, 4] = assembly['Assembly (2.4%) CR D']
universes[6, 5] = univs['Assembly (2.4%) CR D'] universes[3, 5] = assembly['Assembly (3.1%) 16BA']
universes[6, 6] = univs['Assembly (3.1%) instr'] universes[3, 6] = assembly['Assembly (2.4%) CR D']
universes[6, 7] = univs['heavy reflector SE'] universes[3, 7] = assembly['Assembly (3.1%) instr']
universes[6, 8] = univs['heavy reflector 6,8'] universes[3, 8] = reflector['3,8']
universes[7, 1] = univs['heavy reflector 7,1'] universes[4, 0] = reflector['4,0']
universes[7, 2] = univs['heavy reflector SW'] universes[4, 1] = assembly['Assembly (2.4%) CR D']
universes[7, 3] = univs['Assembly (3.1%) instr'] universes[4, 2] = assembly['Assembly (3.1%) 16BA']
universes[7, 4] = univs['Assembly (2.4%) CR D'] universes[4, 3] = assembly['Assembly (2.4%) CR D']
universes[7, 5] = univs['Assembly (3.1%) instr'] universes[4, 4] = assembly['Assembly (1.6%) instr']
universes[7, 6] = univs['heavy reflector SE'] universes[4, 5] = assembly['Assembly (2.4%) CR D']
universes[7, 7] = univs['heavy reflector 7,7'] universes[4, 6] = assembly['Assembly (3.1%) 16BA']
universes[4, 7] = assembly['Assembly (2.4%) CR D']
universes[4, 8] = reflector['4,8']
universes[8, 2] = univs['heavy reflector 8,2'] universes[5, 0] = reflector['5,0']
universes[8, 3] = univs['heavy reflector 8,3'] universes[5, 1] = assembly['Assembly (3.1%) instr']
universes[8, 4] = univs['heavy reflector 8,4'] universes[5, 2] = assembly['Assembly (2.4%) CR D']
universes[8, 5] = univs['heavy reflector 8,5'] universes[5, 3] = assembly['Assembly (3.1%) 16BA']
universes[8, 6] = univs['heavy reflector 8,6'] universes[5, 4] = assembly['Assembly (2.4%) CR D']
universes[5, 5] = assembly['Assembly (3.1%) 16BA']
universes[5, 6] = assembly['Assembly (2.4%) CR D']
universes[5, 7] = assembly['Assembly (3.1%) instr']
universes[5, 8] = reflector['5,8']
core.universes = universes universes[6, 0] = reflector['6,0']
universes[6, 1] = reflector['SW']
universes[6, 2] = assembly['Assembly (3.1%) instr']
universes[6, 3] = assembly['Assembly (2.4%) CR D']
universes[6, 4] = assembly['Assembly (3.1%) 16BA']
universes[6, 5] = assembly['Assembly (2.4%) CR D']
universes[6, 6] = assembly['Assembly (3.1%) instr']
universes[6, 7] = reflector['SE']
universes[6, 8] = reflector['6,8']
universes[7, 1] = reflector['7,1']
universes[7, 2] = reflector['SW']
universes[7, 3] = assembly['Assembly (3.1%) instr']
universes[7, 4] = assembly['Assembly (2.4%) CR D']
universes[7, 5] = assembly['Assembly (3.1%) instr']
universes[7, 6] = reflector['SE']
universes[7, 7] = reflector['7,7']
#### CONSTRUCT ROOT UNIVERSE AND CELLS universes[8, 2] = reflector['8,2']
universes[8, 3] = reflector['8,3']
universes[8, 4] = reflector['8,4']
universes[8, 5] = reflector['8,5']
universes[8, 6] = reflector['8,6']
root_univ = openmc.Universe(universe_id=0, name='root universe') core.universes = universes
cell = openmc.Cell(name='Main core') root_univ = openmc.Universe(universe_id=0, name='root universe')
cell.fill = core
cell.region = \
-surfs['core barrel IR'] & +surfs['lower bound'] & -surfs['upper bound']
root_univ.add_cell(cell)
# Cylinder filled with core lattice
cell = openmc.Cell(name='Main core')
cell.fill = core
cell.region = \
-surfs['core barrel IR'] & +surfs['lower bound'] & -surfs['upper bound']
root_univ.add_cell(cell)
# CONSTRUCT CORE BARREL # Core barrel
cell = openmc.Cell(name='core barrel')
cell.fill = mats['SS']
cell.region = (+surfs['core barrel IR'] & -surfs['core barrel OR'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
cell = openmc.Cell(name='core barrel') # Neutron shield panels
cell.fill = mats['SS'] cell = openmc.Cell(name='neutron shield panel NW')
cell.region = (+surfs['core barrel IR'] & -surfs['core barrel OR'] & cell.fill = mats['SS']
+surfs['lower bound'] & -surfs['upper bound']) cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
root_univ.add_cell(cell) +surfs['neutron shield NWbot SEtop'] &
-surfs['neutron shield NWtop SEbot'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel N')
cell.fill = mats['H2O']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
+surfs['neutron shield NWtop SEbot'] &
-surfs['neutron shield NEtop SWbot'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
#### CONSTRUCT NEUTRON SHIELD PANELS cell = openmc.Cell(name='neutron shield panel SE')
cell.fill = mats['SS']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
-surfs['neutron shield NWbot SEtop'] &
+surfs['neutron shield NWtop SEbot'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel NW') cell = openmc.Cell(name='neutron shield panel E')
cell.fill = mats['SS'] cell.fill = mats['H2O']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
+surfs['neutron shield NWbot SEtop'] & +surfs['neutron shield NWbot SEtop'] &
-surfs['neutron shield NWtop SEbot'] & +surfs['neutron shield NEbot SWtop'] &
+surfs['lower bound'] & -surfs['upper bound']) +surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell) root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel N') cell = openmc.Cell(name='neutron shield panel NE')
cell.fill = mats['H2O'] cell.fill = mats['SS']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
+surfs['neutron shield NWtop SEbot'] & +surfs['neutron shield NEbot SWtop'] &
-surfs['neutron shield NEtop SWbot'] & -surfs['neutron shield NEtop SWbot'] &
+surfs['lower bound'] & -surfs['upper bound']) +surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell) root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel SE') cell = openmc.Cell(name='neutron shield panel S')
cell.fill = mats['SS'] cell.fill = mats['H2O']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
-surfs['neutron shield NWbot SEtop'] & -surfs['neutron shield NWtop SEbot'] &
+surfs['neutron shield NWtop SEbot'] & +surfs['neutron shield NEtop SWbot'] &
+surfs['lower bound'] & -surfs['upper bound']) +surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell) root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel E') cell = openmc.Cell(name='neutron shield panel SW')
cell.fill = mats['H2O'] cell.fill = mats['SS']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
+surfs['neutron shield NWbot SEtop'] & -surfs['neutron shield NEbot SWtop'] &
+surfs['neutron shield NEbot SWtop'] & +surfs['neutron shield NEtop SWbot'] &
+surfs['lower bound'] & -surfs['upper bound']) +surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell) root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel NE') cell = openmc.Cell(name='neutron shield panel W')
cell.fill = mats['SS'] cell.fill = mats['H2O']
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
+surfs['neutron shield NEbot SWtop'] & -surfs['neutron shield NWbot SEtop'] &
-surfs['neutron shield NEtop SWbot'] & -surfs['neutron shield NEbot SWtop'] &
+surfs['lower bound'] & -surfs['upper bound']) +surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell) root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel S') # Downcomer
cell.fill = mats['H2O'] cell = openmc.Cell(name='downcomer')
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.fill = mats['H2O']
-surfs['neutron shield NWtop SEbot'] & cell.region = (+surfs['neutron shield OR'] & -surfs['RPV IR'] &
+surfs['neutron shield NEtop SWbot'] & +surfs['lower bound'] & -surfs['upper bound'])
+surfs['lower bound'] & -surfs['upper bound']) root_univ.add_cell(cell)
root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel SW') # Reactor pressure vessel
cell.fill = mats['SS'] cell = openmc.Cell(name='reactor pressure vessel')
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] & cell.fill = mats['CS']
-surfs['neutron shield NEbot SWtop'] & cell.region = (+surfs['RPV IR'] & -surfs['RPV OR'] &
+surfs['neutron shield NEtop SWbot'] & +surfs['lower bound'] & -surfs['upper bound'])
+surfs['lower bound'] & -surfs['upper bound']) root_univ.add_cell(cell)
root_univ.add_cell(cell)
cell = openmc.Cell(name='neutron shield panel W') # Return geometry
cell.fill = mats['H2O'] return openmc.Geometry(root_univ)
cell.region = (+surfs['core barrel OR'] & -surfs['neutron shield OR'] &
-surfs['neutron shield NWbot SEtop'] &
-surfs['neutron shield NEbot SWtop'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
#### CONSTRUCT DOWNCOMER
cell = openmc.Cell(name='downcomer')
cell.fill = mats['H2O']
cell.region = (+surfs['neutron shield OR'] & -surfs['RPV IR'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
#### CONSTRUCT REACTOR PRESSURE VESSEL
cell = openmc.Cell(name='reactor pressure vessel')
cell.fill = mats['CS']
cell.region = (+surfs['RPV IR'] & -surfs['RPV OR'] &
+surfs['lower bound'] & -surfs['upper bound'])
root_univ.add_cell(cell)
#### CONSTRUCT GEOMETRY
geometry = openmc.Geometry(root_univ)

File diff suppressed because it is too large Load diff

View file

@ -33,7 +33,7 @@ plot.filename = 'radial_xy_slice'
plot.colors = colors plot.colors = colors
plot.background = [255, 255, 255] plot.background = [255, 255, 255]
plot.pixels = [1000, 1000] plot.pixels = [1000, 1000]
plots += [plot] plots.append(plot)
plot = openmc.Plot(name='axial slice') plot = openmc.Plot(name='axial slice')
plot.basis = 'xz' plot.basis = 'xz'
@ -44,7 +44,7 @@ plot.filename = 'axial_xz_slice'
plot.colors = colors plot.colors = colors
plot.background = [255, 255, 255] plot.background = [255, 255, 255]
plot.pixels = [1000, 1000] plot.pixels = [1000, 1000]
plots += [plot] plots.append(plot)
plot = openmc.Plot(name='assembly grid spacer') plot = openmc.Plot(name='assembly grid spacer')
plot.basis = 'xy' plot.basis = 'xy'
@ -55,7 +55,7 @@ plot.filename = 'assm_grid_spacer'
plot.colors = colors plot.colors = colors
plot.background = [255, 255, 255] plot.background = [255, 255, 255]
plot.pixels = [2000, 2000] plot.pixels = [2000, 2000]
plots += [plot] plots.append(plot)
plot = openmc.Plot(name='assembly no spacer') plot = openmc.Plot(name='assembly no spacer')
plot.basis = 'xy' plot.basis = 'xy'
@ -66,4 +66,23 @@ plot.filename = 'assm_no_spacer'
plot.colors = colors plot.colors = colors
plot.background = [255, 255, 255] plot.background = [255, 255, 255]
plot.pixels = [2000, 2000] plot.pixels = [2000, 2000]
plots += [plot] plots.append(plot)
plot = openmc.Plot(name='assembly no spacer cell')
plot.basis = 'xy'
plot.color_by = 'cell'
plot.origin = [0., 0., 90.]
plot.width = [lattice_pitch*1.5, lattice_pitch*1.5]
plot.filename = 'assm_no_spacer_cell'
plot.background = [255, 255, 255]
plot.pixels = [2000, 2000]
plots.append(plot)
plot = openmc.Plot(name='z slice')
plot.basis = 'xz'
plot.color_by = 'cell'
plot.filename = 'assm_xz'
plot.origin = (0., 0., lowest_extent + (highest_extent - lowest_extent)/2)
plot.width = (lattice_pitch*1.5, highest_extent - lowest_extent)
plot.pixels = (int(plot.width[0]/plot.width[1]*4000), 4000)
plots.append(plot)

View file

@ -12,8 +12,7 @@ converted to actual dimensions by scaling according to the width of an assembly.
import openmc import openmc
from .materials import mats from .materials import mats
from .surfaces import surfs, lattice_pitch from .surfaces import lattice_pitch
from .assemblies import univs
def make_reflector(name, parameters): def make_reflector(name, parameters):
@ -27,6 +26,11 @@ def make_reflector(name, parameters):
Iterable containing tuple with the (x,y) coordinates of the center and Iterable containing tuple with the (x,y) coordinates of the center and
the radius of a Z-cylinder and the the radius of a Z-cylinder and the
Returns
-------
openmc.Universe
Universe containing reflector block
""" """
water_holes = [] water_holes = []
for x, y, r in parameters: for x, y, r in parameters:
@ -35,277 +39,191 @@ def make_reflector(name, parameters):
water_holes.append(hole) water_holes.append(hole)
ss_region = openmc.Intersection(~c.region for c in water_holes) ss_region = openmc.Intersection(~c.region for c in water_holes)
ss_cell = openmc.Cell(name='{} SS'.format(name), fill=mats['SS'], ss_cell = openmc.Cell(name='reflector {} SS'.format(name), fill=mats['SS'],
region=ss_region) region=ss_region)
univs[name] = openmc.Universe(name=name) univ = openmc.Universe(name='reflector {}'.format(name))
univs[name].add_cells(water_holes) univ.add_cells(water_holes)
univs[name].add_cell(ss_cell) univ.add_cell(ss_cell)
return univ
# Reflector at northwest corner (fuel assemblies to the right and below) def reflector_universes():
"""Generate universes for SMR heavy neutron reflector blocks.
width = 276 Parameters
p1 = 59 ----------
p2 = 126 num_rings : int
p3 = 196 Number of annual regions in fuel
p4 = 264 num_axial : int
Number of axial subdivisions in fuel
p5 = 105 Returns
-------
dict
Dictionary mapping a universe name to a openmc.Universe object
p6 = 122 """
p7 = 164 # Create dictionary to store universes
univs = {}
p8 = 138 # Reflector at northwest corner (fuel assemblies to the right and below)
p9 = 222 width = 276
p1 = 59
p2 = 126
p3 = 196
p4 = 264
p10 = 247 p5 = 105
# There are 8 large water holes and all others appear to have the same, smaller p6 = 122
# diameter p7 = 164
d_small = 13
d_large = 30
# All pixel widths are scaled according to the actual width of an assembly p8 = 138
# divided by the width of an assembly in pixels p9 = 222
scale = lattice_pitch/width
# Physical positions p10 = 247
x1 = -lattice_pitch/2 + scale*(width - p4)
x2 = -lattice_pitch/2 + scale*(width - p3)
x3 = -lattice_pitch/2 + scale*(width - p2)
x4 = -lattice_pitch/2 + scale*(width - p1)
y1 = -lattice_pitch/2 + scale*p1
y2 = -lattice_pitch/2 + scale*p2
y3 = -lattice_pitch/2 + scale*p3
y4 = -lattice_pitch/2 + scale*p4
x5 = -lattice_pitch/2 + scale*(width - p5) # There are 8 large water holes and all others appear to have the same, smaller
y5 = -lattice_pitch/2 + scale*p5 # diameter
x6 = -lattice_pitch/2 + scale*(width - p7) d_small = 13
y6 = -lattice_pitch/2 + scale*p6 d_large = 30
x7 = -lattice_pitch/2 + scale*(width - p6)
y7 = -lattice_pitch/2 + scale*p7
x8 = -lattice_pitch/2 + scale*(width - p9)
y8 = -lattice_pitch/2 + scale*p8
x9 = -lattice_pitch/2 + scale*(width - p8)
y9 = -lattice_pitch/2 + scale*p9
y10 = -lattice_pitch/2 + scale*p10 # All pixel widths are scaled according to the actual width of an assembly
# divided by the width of an assembly in pixels
scale = lattice_pitch/width
# Radius of small/large water holes # Physical positions
r1 = scale*d_small/2 x1 = -lattice_pitch/2 + scale*(width - p4)
r2 = scale*d_large/2 x2 = -lattice_pitch/2 + scale*(width - p3)
x3 = -lattice_pitch/2 + scale*(width - p2)
x4 = -lattice_pitch/2 + scale*(width - p1)
y1 = -lattice_pitch/2 + scale*p1
y2 = -lattice_pitch/2 + scale*p2
y3 = -lattice_pitch/2 + scale*p3
y4 = -lattice_pitch/2 + scale*p4
params = [ x5 = -lattice_pitch/2 + scale*(width - p5)
(x1, y1, r1), (x2, y1, r1), (x3, y1, r1), (x4, y1, r2), y5 = -lattice_pitch/2 + scale*p5
(x4, y2, r1), (x4, y3, r1), (x4, y4, r1), (x5, y5, r1), x6 = -lattice_pitch/2 + scale*(width - p7)
(x6, y6, r1), (x7, y7, r1), (x8, y8, r1), (x9, y9, r1), y6 = -lattice_pitch/2 + scale*p6
(x1, y10, r1) x7 = -lattice_pitch/2 + scale*(width - p6)
] y7 = -lattice_pitch/2 + scale*p7
x8 = -lattice_pitch/2 + scale*(width - p9)
y8 = -lattice_pitch/2 + scale*p8
x9 = -lattice_pitch/2 + scale*(width - p8)
y9 = -lattice_pitch/2 + scale*p9
make_reflector('heavy reflector NW', params) y10 = -lattice_pitch/2 + scale*p10
# Reflector at (1, 1) # Radius of small/large water holes
r1 = scale*d_small/2
r2 = scale*d_large/2
params = [ params = [
(x4, y1, r1), (x1, y1, r1), (x2, y1, r1), (x3, y1, r1), (x4, y1, r2),
(lattice_pitch/2 - scale*103, -lattice_pitch/2 + scale*156, r1), (x4, y2, r1), (x4, y3, r1), (x4, y4, r1), (x5, y5, r1),
(lattice_pitch/2 - scale*158, -lattice_pitch/2 + scale*103, r1) (x6, y6, r1), (x7, y7, r1), (x8, y8, r1), (x9, y9, r1),
] (x1, y10, r1)
make_reflector('heavy reflector 1,1', params) ]
univs['NW'] = make_reflector('NW', params)
# Left reflector (4,0) # Reflector at (1, 1)
left1 = 58 params = [
left2 = 118 (x4, y1, r1),
left3 = 173 (lattice_pitch/2 - scale*103, -lattice_pitch/2 + scale*156, r1),
up3 = 76 (lattice_pitch/2 - scale*158, -lattice_pitch/2 + scale*103, r1)
]
univs['1,1'] = make_reflector('1,1', params)
x1 = -lattice_pitch/2 + scale*(width - left1) # Left reflector (4,0)
x2 = -lattice_pitch/2 + scale*(width - left2)
d_y = scale*67
x3 = -lattice_pitch/2 + scale*(width - left3)
y3 = scale*up3
params = [ left1 = 58
(x1, 0, r1), (x1, d_y, r1), (x1, 2*d_y, r1), (x1, -d_y, r1), (x1, -2*d_y, r1), left2 = 118
(x2, d_y/2, r1), (x2, 3/2*d_y, r1), (x2, -d_y/2, r1), (x2, -3/2*d_y, r1), left3 = 173
(x3, y3, r1), (x3, -y3, r1) up3 = 76
]
make_reflector('heavy reflector 4,0', params) x1 = -lattice_pitch/2 + scale*(width - left1)
x2 = -lattice_pitch/2 + scale*(width - left2)
d_y = scale*67
x3 = -lattice_pitch/2 + scale*(width - left3)
y3 = scale*up3
# Reflector at (3,0) params = [
(x1, 0, r1), (x1, d_y, r1), (x1, 2*d_y, r1), (x1, -d_y, r1), (x1, -2*d_y, r1),
(x2, d_y/2, r1), (x2, 3/2*d_y, r1), (x2, -d_y/2, r1), (x2, -3/2*d_y, r1),
(x3, y3, r1), (x3, -y3, r1)
]
univs['4,0'] = make_reflector('4,0', params)
params = [] # Reflector at (3,0)
for i in range(2, 7):
params.append((x1, i*d_y - lattice_pitch, r1))
for i in (5, 7, 11):
params.append((x2, i*d_y/2 - lattice_pitch, r1))
left3 = 140 params = []
left4 = 183 for i in range(2, 7):
up3 = 159 params.append((x1, i*d_y - lattice_pitch, r1))
up4 = 47 for i in (5, 7, 11):
params.append((x2, i*d_y/2 - lattice_pitch, r1))
x3 = -lattice_pitch/2 + scale*(width - left3) left3 = 140
y3 = -lattice_pitch/2 + scale*up3 left4 = 183
x4 = -lattice_pitch/2 + scale*(width - left4) up3 = 159
y4 = -lattice_pitch/2 + scale*up4 up4 = 47
params += [(x3, y3, r1), (x4, y4, r1)]
make_reflector('heavy reflector 3,0', params) x3 = -lattice_pitch/2 + scale*(width - left3)
y3 = -lattice_pitch/2 + scale*up3
x4 = -lattice_pitch/2 + scale*(width - left4)
y4 = -lattice_pitch/2 + scale*up4
params += [(x3, y3, r1), (x4, y4, r1)]
# Reflector at (5,0) univs['3,0'] = make_reflector('3,0', params)
params = [(x, -y, r) for x, y, r in params] # Reflector at (5,0)
make_reflector('heavy reflector 5,0', params) params = [(x, -y, r) for x, y, r in params]
univs['5,0'] = make_reflector('5,0', params)
# Reflector at (2, 0) # Reflector at (2, 0)
params = [(-lattice_pitch/2 + scale*(width - 78), params = [(-lattice_pitch/2 + scale*(width - 78),
-lattice_pitch/2 + scale*98, r1)] -lattice_pitch/2 + scale*98, r1)]
make_reflector('heavy reflector 2,0', params) univs['2,0'] = make_reflector('2,0', params)
################################################################################ ################################################################################
# Beyond this point, all universes are just copies of the ones previously # Beyond this point, all universes are just copies of the ones previously
# created with a rotation applied # created with a rotation applied
# NE corner # First define helper function to create new universe by rotating an
cell = openmc.Cell(name='heavy reflector NE', fill=univs['heavy reflector NW']) # existing one
cell.rotation = (0, 0, -90) def rotate_universe(univ, rotation, name):
univs['heavy reflector NE'] = openmc.Universe(name='heavy reflector NE') cell = openmc.Cell(name='reflector {}'.format(name), fill=univ)
univs['heavy reflector NE'].add_cell(cell) cell.rotation = rotation
return openmc.Universe(name=name, cells=[cell])
# SW corner univs['NE'] = rotate_universe(univs['NW'], (0, 0, -90), 'NE')
cell = openmc.Cell(name='heavy reflector SW', fill=univs['heavy reflector NW']) univs['SW'] = rotate_universe(univs['NW'], (0, 0, 90), 'SW')
cell.rotation = (0, 0, 90) univs['SE'] = rotate_universe(univs['NW'], (0, 0, 180), 'SE')
univs['heavy reflector SW'] = openmc.Universe(name='heavy reflector SW') univs['0,2'] = rotate_universe(univs['2,0'], (0, 180, -90), '0,2')
univs['heavy reflector SW'].add_cell(cell) univs['0,3'] = rotate_universe(univs['5,0'], (0, 0, -90), '0,3')
univs['0,4'] = rotate_universe(univs['4,0'], (0, 0, -90), '0,4')
univs['0,5'] = rotate_universe(univs['3,0'], (0, 0, -90), '0,5')
univs['0,6'] = rotate_universe(univs['2,0'], (0, 0, -90), '0,6')
univs['1,7'] = rotate_universe(univs['1,1'], (0, 0, -90), '1,7')
univs['2,8'] = rotate_universe(univs['2,0'], (0, 180, 0), '2,8')
univs['3,8'] = rotate_universe(univs['3,0'], (0, 180, 0), '3,8')
univs['4,8'] = rotate_universe(univs['4,0'], (0, 180, 0), '4,8')
univs['5,8'] = rotate_universe(univs['3,0'], (0, 0, 180), '5,8')
univs['6,0'] = rotate_universe(univs['2,0'], (180, 0, 0), '6,0')
univs['6,8'] = rotate_universe(univs['2,0'], (0, 0, 180), '6,8')
univs['7,1'] = rotate_universe(univs['1,1'], (180, 0, 0), '7,1')
univs['7,7'] = rotate_universe(univs['1,1'], (0, 0, 180), '7,7')
univs['8,2'] = rotate_universe(univs['2,0'], (0, 0, 90), '8,2')
univs['8,3'] = rotate_universe(univs['3,0'], (0, 0, 90), '8,3')
univs['8,4'] = rotate_universe(univs['4,0'], (0, 0, 90), '8,4')
univs['8,5'] = rotate_universe(univs['5,0'], (0, 0, 90), '8,5')
univs['8,6'] = rotate_universe(univs['2,0'], (0, 0, 180), '8,6')
# SE corner # Solid stainless steel universe
cell = openmc.Cell(name='heavy reflector SE', fill=univs['heavy reflector NW']) all_ss = openmc.Cell(name='heavy reflector', fill=mats['SS'])
cell.rotation = (0, 0, 180) univs['solid'] = openmc.Universe(name='solid', cells=[all_ss])
univs['heavy reflector SE'] = openmc.Universe(name='heavy reflector SE')
univs['heavy reflector SE'].add_cell(cell)
# Reflector at (0, 2) return univs
name = 'heavy reflector 0,2'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 180, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (0, 3)
name = 'heavy reflector 0,3'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 5,0'])
cell.rotation = (0, 0, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (0, 4)
name = 'heavy reflector 0,4'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 4,0'])
cell.rotation = (0, 0, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (0, 5)
name = 'heavy reflector 0,5'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 3,0'])
cell.rotation = (0, 0, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (0, 6)
name = 'heavy reflector 0,6'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 0, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (1, 7)
name = 'heavy reflector 1,7'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 1,1'])
cell.rotation = (0, 0, -90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (2, 8)
name = 'heavy reflector 2,8'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 180, 0)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (3, 8)
name = 'heavy reflector 3,8'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 3,0'])
cell.rotation = (0, 180, 0)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (4, 8)
name = 'heavy reflector 4,8'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 4,0'])
cell.rotation = (0, 180, 0)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (5, 8)
name = 'heavy reflector 5,8'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 3,0'])
cell.rotation = (0, 0, 180)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (6, 0)
name = 'heavy reflector 6,0'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (180, 0, 0)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (6, 8)
name = 'heavy reflector 6,8'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 0, 180)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (7, 1)
name = 'heavy reflector 7,1'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 1,1'])
cell.rotation = (180, 0, 0)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (7, 7)
name = 'heavy reflector 7,7'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 1,1'])
cell.rotation = (0, 0, 180)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (8, 2)
name = 'heavy reflector 8,2'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 0, 90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (8, 3)
name = 'heavy reflector 8,3'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 3,0'])
cell.rotation = (0, 0, 90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (8, 4)
name = 'heavy reflector 8,4'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 4,0'])
cell.rotation = (0, 0, 90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (8, 5)
name = 'heavy reflector 8,5'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 5,0'])
cell.rotation = (0, 0, 90)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Reflector at (8, 6)
name = 'heavy reflector 8,6'
cell = openmc.Cell(name=name, fill=univs['heavy reflector 2,0'])
cell.rotation = (0, 0, 180)
univs[name] = openmc.Universe(name=name, cells=[cell])
# Solid stainless steel universe
all_ss = openmc.Cell(name='heavy reflector', fill=mats['SS'])
univs['heavy reflector'] = openmc.Universe(
name='heavy reflector', cells=[all_ss])

View file

@ -34,6 +34,7 @@ INCHES = 2.54
# fuel rod parameters # fuel rod parameters
pellet_OR = 0.3195*INCHES/2 # ML17013A274, Table 4.1-2 pellet_OR = 0.3195*INCHES/2 # ML17013A274, Table 4.1-2
pellet_length = 0.4*INCHES # ML17013A274, Table 4.1-2
clad_IR = 0.326*INCHES/2 # ML17013A274, Table 4.1-2 clad_IR = 0.326*INCHES/2 # ML17013A274, Table 4.1-2
clad_OR = 0.374*INCHES/2 # ML17013A274, Table 4.1-2 clad_OR = 0.374*INCHES/2 # ML17013A274, Table 4.1-2
active_fuel_length = 78.74*INCHES # ML17013A274, Figure 4.2-10 active_fuel_length = 78.74*INCHES # ML17013A274, Figure 4.2-10