TRIGA Mark II Reactor

[1]:
import os

import numpy as np
import openmc

# remove previous model
if os.path.exists('settings.xml'):
    os.system("rm *.xml")
    os.system("rm summary.h5")
    os.system("rm statepoint*")

Materials

[2]:
# Nomenclature for thermal libraries: https://docs.openmc.org/en/stable/_modules/openmc/data/thermal.html

T_ref_w = 294
T_ref_f = 294
T_ref_struct = 294

# Water
Water = openmc.Material(name='Water')
Water.set_density('g/cm3',0.9985)
Water.add_nuclide('H1', 2, 'ao')
Water.add_nuclide('O16', 1, 'ao')
Water.add_s_alpha_beta('c_H_in_H2O')
Water.temperature = T_ref_w # (K)

# Fuel 101 @ Pavia
Fuel101 = openmc.Material(name='Fuel 101')
Fuel101.set_density('g/cm3', 6.3)
Fuel101.add_nuclide('U235', 1.58, 'wo')
Fuel101.add_nuclide('U238', 6.42, 'wo')
Fuel101.add_nuclide('H1', 1, 'wo')
Fuel101.add_nuclide('Zr90', 46.1, 'wo')
Fuel101.add_nuclide('Zr91', 10.2, 'wo')
Fuel101.add_nuclide('Zr92', 15.7, 'wo')
Fuel101.add_nuclide('Zr94', 16.3, 'wo')
Fuel101.add_nuclide('Zr96', 2.68, 'wo')
Fuel101.add_s_alpha_beta('c_H_in_ZrH')
#Fuel101.add_s_alpha_beta('c_Zr_in_ZrH')
Fuel101.temperature = T_ref_f

# Fuel 103 @ Pavia
Fuel103 = openmc.Material(name='Fuel 103')
Fuel103.set_density('g/cm3', 5.95)
Fuel103.add_nuclide('U235', 1.58, 'wo')
Fuel103.add_nuclide('U238', 6.42, 'wo')
Fuel103.add_nuclide('H1', 1.59, 'wo')
Fuel103.add_nuclide('Zr90', 45.8, 'wo')
Fuel103.add_nuclide('Zr91', 10.1, 'wo')
Fuel103.add_nuclide('Zr92', 15.6, 'wo')
Fuel103.add_nuclide('Zr94', 16.2, 'wo')
Fuel103.add_nuclide('Zr96', 2.66, 'wo')
Fuel103.add_s_alpha_beta('c_H_in_ZrH')
#Fuel103.add_s_alpha_beta('c_Zr_in_ZrH')
Fuel103.temperature= T_ref_f

# Graphite
Graphite = openmc.Material(name='Graphite')
Graphite.set_density('g/cm3', 1.675)
Graphite.add_element('C', 0.99, 'wo')
Graphite.add_nuclide('Fe54', 0.00045164, 'wo')
Graphite.add_nuclide('Fe56', 0.00735212, 'wo')
Graphite.add_nuclide('Fe57', 0.00017283, 'wo')
Graphite.add_nuclide('Fe58', 0.00002340, 'wo')
Graphite.add_nuclide('O16', 0.0013, 'wo')
Graphite.add_nuclide('Ti46', 7.92E-05, 'wo')
Graphite.add_nuclide('Ti47', 7.30E-05, 'wo')
Graphite.add_nuclide('Ti48', 7.38E-04, 'wo')
Graphite.add_nuclide('Ti49', 5.53E-05, 'wo')
Graphite.add_nuclide('Ti50', 5.40E-05, 'wo')
Graphite.add_nuclide('Na23', 0.0001, 'wo')
Graphite.add_nuclide('Mg24', 7.795E-05, 'wo')
Graphite.add_nuclide('Mg25', 1.028E-05, 'wo')
Graphite.add_nuclide('Mg26', 1.177E-05, 'wo')
Graphite.add_nuclide('Cu63', 6.85E-04, 'wo')
Graphite.add_nuclide('Cu65', 3.15E-04, 'wo')
Graphite.add_nuclide('Co59', 0.00005, 'wo')
Graphite.add_nuclide('H1', 0.000037, 'wo')
Graphite.add_nuclide('F19', 0.000025, 'wo')
Graphite.add_element('Cl', 0.000025, 'wo')
Graphite.add_nuclide('B11', 0.0000005, 'wo')
Graphite.add_s_alpha_beta('c_Graphite')
Graphite.temperature = T_ref_struct

# Cladding Al (from Chiesa PhD Thesis)
CladdingAl = openmc.Material(name='Cladding Al')
CladdingAl.set_density('g/cm3' , 2.713)
CladdingAl.add_nuclide('Al27', 0.9957, 'wo')
CladdingAl.add_nuclide('Cu63', 0.0006917, 'wo')
CladdingAl.add_nuclide('Cu65', 0.0003083, 'wo')
CladdingAl.temperature = T_ref_struct

# Cladding SS
CladdingSS = openmc.Material(name='Cladding SS')
CladdingSS.set_density('g/cm3' , 8.03)
CladdingSS.add_nuclide('Fe54' , 0.039980, 'wo')
CladdingSS.add_nuclide('Fe56' , 0.650820, 'wo')
CladdingSS.add_nuclide('Fe57' , 0.015299, 'wo')
CladdingSS.add_nuclide('Fe58' , 0.002072, 'wo')
CladdingSS.add_nuclide('Cr50' , 7.72E-03, 'wo')
CladdingSS.add_nuclide('Cr52' , 1.49E-01, 'wo')
CladdingSS.add_nuclide('Cr53' , 1.69E-02, 'wo')
CladdingSS.add_nuclide('Cr54' , 4.19E-03, 'wo')
CladdingSS.add_nuclide('Ni58' , 7.42E-02, 'wo')
CladdingSS.add_nuclide('Ni60' , 2.86E-02, 'wo')
CladdingSS.add_nuclide('Ni61' , 1.24E-03, 'wo')
CladdingSS.add_nuclide('Ni62' , 3.95E-03, 'wo')
CladdingSS.add_nuclide('Ni64' , 1.01E-03, 'wo')
CladdingSS.add_nuclide('Si28' , 5.02E-03, 'wo')
CladdingSS.add_nuclide('Si29' , 2.55E-04, 'wo')
CladdingSS.add_nuclide('Si30' , 1.68E-04, 'wo')
CladdingSS.temperature = T_ref_struct

# Cladding for Control Rods (Aluminum)
CladdingCR = openmc.Material(name='Cladding CR')
CladdingCR.set_density('g/cm3' , 2.71)
CladdingCR.add_nuclide('Al27', 0.9795, 'wo')
CladdingCR.add_nuclide('Cu63', 0.00172925, 'wo')
CladdingCR.add_nuclide('Cu65', 0.00077075, 'wo')
CladdingCR.add_nuclide('Cr52', 0.0020, 'wo')
CladdingCR.add_nuclide('Mg24' , 7.80E-03 , 'wo')
CladdingCR.add_nuclide('Mg25' , 1.03E-03 , 'wo')
CladdingCR.add_nuclide('Mg26' , 1.18E-03 , 'wo')
CladdingCR.add_nuclide('Si28', 0.006, 'wo')
CladdingCR.temperature = T_ref_struct

# Zirconium thin rod
Zirconium = openmc.Material(name='Zirconium')
Zirconium.set_density('g/cm3', 6.52)
Zirconium.add_nuclide('Zr90', 0.5145, 'ao')
Zirconium.add_nuclide('Zr91', 0.1122, 'ao')
Zirconium.add_nuclide('Zr92', 0.1715, 'ao')
Zirconium.add_nuclide('Zr94', 0.1738, 'ao')
Zirconium.add_nuclide('Zr96', 0.028, 'ao')
Zirconium.temperature = T_ref_f

# Poison disk
Samarium = openmc.Material(name='Sm poison disk')
Samarium.set_density('g/cm3', 2.4203)
Samarium.add_nuclide('Sm147', 0.001035, 'wo')
Samarium.add_nuclide('Sm148', 0.000782, 'wo')
Samarium.add_nuclide('Sm149', 0.000968, 'wo')
Samarium.add_nuclide('Sm150', 0.000520, 'wo')
Samarium.add_nuclide('Sm152', 0.001911, 'wo')
Samarium.add_nuclide('Sm154', 0.001647, 'wo')
Samarium.add_nuclide('O16', 0.468019, 'wo')
Samarium.add_nuclide('Al27', 0.524910, 'wo')
Samarium.temperature = T_ref_f

# Vacuum
Vacuum = openmc.Material(name='Vacuum')
Vacuum.set_density('g/cm3', 0.0012041)
Vacuum.add_element('C', 0.000125, 'wo')
Vacuum.add_nuclide('N14', 0.6869, 'wo')
Vacuum.add_nuclide('O16', 0.301248, 'wo')
Vacuum.temperature = 294

# SHIM - REG
ControlRodB4C = openmc.Material(name='Control rods (SHIM, REG)')
ControlRodB4C.set_density('g/cm3' , 2.52)
ControlRodB4C.add_nuclide('B11' , 64.2, 'ao')
ControlRodB4C.add_nuclide('B10' , 15.8, 'ao')
ControlRodB4C.add_element('C' , 20, 'ao')
ControlRodB4C.add_s_alpha_beta('c_Graphite')
ControlRodB4C.temperature = T_ref_struct

# TRANS
ControlRodBorated = openmc.Material(name='Control rods (TRANS)')
ControlRodBorated.set_density('g/cm3' , 2.23)
ControlRodBorated.add_nuclide('B11' , 21.7, 'ao')
ControlRodBorated.add_nuclide('B10' , 5.35, 'ao')
ControlRodBorated.add_element('C' , 72.3, 'ao')
ControlRodBorated.add_s_alpha_beta('c_Graphite')
ControlRodBorated.temperature = T_ref_struct


# Instantiate a Materials collection and export to xml
materials_file = openmc.Materials([CladdingAl, CladdingSS, CladdingCR, Graphite, Fuel101, Fuel103, Water, Vacuum, ControlRodB4C, ControlRodBorated, Samarium, Zirconium ])

Geometry: planes and surfaces

[3]:
# Control rod position: 0 = all in, 47 = all out
z0_reg_value = 45 # cm
z0_shim_value = 45 # cm
z0_trans_value = 45 # cm
[27]:
# Planes, cylinders and stuff

r_fuel_101 = openmc.ZCylinder(r=1.791) #fuel radius
r_clad_101 = openmc.ZCylinder(r=1.88)  #cladding radius
bot_active_101 = openmc.ZPlane(z0=10.20) #start active region 101
top_active_101 = openmc.ZPlane(z0=45.76) #end active region 101
Sm_bot_101 = openmc.ZPlane(z0=10.07) # samarium disk bot end
Sm_top_101 = openmc.ZPlane(z0=45.89) # samarium disk top end
reflector_bot_101 = openmc.ZPlane(z0=0) #bottom 101 reflector
reflector_top_101 = openmc.ZPlane(z0=55.83) #top 101 reflector
clad_bot_101 = openmc.ZPlane(z0=-1.27) #end bottom cladding 101
clad_top_101 = openmc.ZPlane(z0=57.1) #end top cladding 101
plug_top_101 = openmc.ZPlane(z0=64.26) #end plug 101
plug_radius_101 = openmc.ZCylinder(r=0.395)


# Geometry definitions for the Fuel Rod 103
r_fuel_inner_103 = openmc.ZCylinder(r=0.285) #fuel radius
r_fuel_outer_103 = openmc.ZCylinder(r=1.82) #fuel radius
r_clad_103 = openmc.ZCylinder(r=1.88)  #cladding radius
bot_active_103 = openmc.ZPlane(z0=8.81) #start active region 103
top_active_103 = openmc.ZPlane(z0=46.91) #end active region 103
reflector_bot_103 = openmc.ZPlane(z0=0) #bottom 103 reflector
reflector_top_103 = openmc.ZPlane(z0=55.65) #top 103 reflector
clad_bot_103 = openmc.ZPlane(z0=-1.39) #end bottom cladding 103
clad_top_103 = openmc.ZPlane(z0=57.31) #end top cladding 103
plug_top_103 = openmc.ZPlane(z0=64.47) #end plug 103
plug_radius_103 = openmc.ZCylinder(r=0.395)

# Geometry for dummy element (graphite)
r_dummy_graphite = openmc.ZCylinder(r=1.791)
r_dummy_clad = openmc.ZCylinder(r=1.88)
dummy_bot =  openmc.ZPlane(z0=0) #bottom 101 reflector
dummy_top = openmc.ZPlane(z0=55.83) #top 101 reflector
dummy_bot_clad = openmc.ZPlane(z0=-1.27) #end bottom cladding 101
dummy_top_clad = openmc.ZPlane(z0=57.1) #end top cladding 101

# Geometry for central channel (with Al case for void feedback measurements)
r_central_channel = openmc.ZCylinder(r=1.69)
r_central_channel_clad = openmc.ZCylinder(r=1.905)

r_Al_out = 3/2 # (cm)
r_Al_in = 2.4/2 # (cm)
l_Al_out = 28 # (cm)
l_Al_in = 26.5258238 # (cm)
midplane = 27.86
plane_mat_separation = l_Al_in - 0.01

s_void_r_out = openmc.ZCylinder(r = r_Al_out)
s_void_r_in = openmc.ZCylinder(r = r_Al_in)
s_void_bot_in = openmc.ZPlane(z0 = midplane - l_Al_in/2)
s_void_bot_out = openmc.ZPlane(z0 = midplane - l_Al_out/2)
s_void_sep = openmc.ZPlane(z0 = midplane - l_Al_in/2 + plane_mat_separation)
s_void_top_in = openmc.ZPlane(z0 = midplane + l_Al_in/2)
s_void_top_out = openmc.ZPlane(z0 = midplane + l_Al_out/2)

# Geometry for rabbit channel
r_rabbit_inner = openmc.ZCylinder(r=1.804)
r_rabbit_outer = openmc.ZCylinder(r=1.88)

# Geometry for source
r_source = openmc.ZCylinder(r=1.88)

# Geometry for SHIM
r_shim_inner = openmc.ZCylinder(r=1.425)
r_shim_outer = openmc.ZCylinder(r=1.59)
r_shim_bot_plug = openmc.ZCylinder(r=0.795)

# Geometry for REG
r_reg_inner = openmc.ZCylinder(r=0.965)
r_reg_outer = openmc.ZCylinder(r=1.11)
r_reg_bot_plug = openmc.ZCylinder(r=0.555)

# Geometry for TRANS
r_trans_inner = openmc.ZCylinder(r=1.105)
r_trans_outer = openmc.ZCylinder(r=1.27)
r_trans_bot_plug = openmc.ZCylinder(r=0.635)

# CR heigths: length=45.47 cm, the starting position is zero.
#             I define three quantities, z_reg, z_shim and z_trans
#             such that they can be moved

# CR position from their 0
z0_reg= z0_reg_value
z0_shim = z0_shim_value
z0_trans = z0_trans_value

# CALIBRAZIONE: cambiare le altezze delle barre di controllo per calcolare il k
#               (0 = rod tutta inserita, )
# valori reg:  0.27 , 4.57 , 9.85 , 13.77, 17.69, 21.55, 24.77, 27.21, 38.1
# valori shim: 19.92, 19.92, 19.38, 18.45, 16.93, 15.51, 13.93, 12.74, 11.81
# valori trans: sempre estratta

# Model offset (z=+10.4 means that the rod is 'all in')
offset= 10.40

z0_reg = z0_reg + offset
z0_shim = z0_shim + offset
z0_trans = z0_trans + offset

bot_reg = openmc.ZPlane(z0=z0_reg) #plane for the bottom reg
bot_shim = openmc.ZPlane(z0=z0_shim) #plane for the bottom shim
bot_trans = openmc.ZPlane(z0=z0_trans) #plane for the bottom trans

bot_reg_clad = openmc.ZPlane(z0=z0_reg-0.8) #plane for the bottom clad
bot_shim_clad = openmc.ZPlane(z0=z0_shim-0.8)
bot_trans_clad = openmc.ZPlane(z0=z0_trans-0.8)

bot_reg_plug = openmc.ZPlane(z0= z0_reg -1.6) #plane for the bottom of plug
bot_shim_plug = openmc.ZPlane(z0= z0_shim -1.6)
bot_trans_plug = openmc.ZPlane(z0= z0_trans -1.6)

top_reg = openmc.ZPlane(z0=z0_reg+45.47) #plane for the bottom reg
top_shim = openmc.ZPlane(z0=z0_shim+45.47) #plane for the bottom shim
top_trans = openmc.ZPlane(z0=z0_trans+45.47) #plane for the bottom trans

#top plug has width of 2.54 cm
top_clad_reg = openmc.ZPlane(z0=z0_reg+45.47+2.54)
top_clad_shim = openmc.ZPlane(z0=z0_shim+45.47+2.54)
top_clad_trans = openmc.ZPlane(z0=z0_trans+45.47+2.54)

top_CR = openmc.ZPlane(z0=45.47) #control rod length from 0
start_position_CR = openmc.ZPlane(z0=0) #zero position for CR

# Reflector dimensions planes
bot_reflector = openmc.ZPlane(z0=1.27) #start of side reflector
top_reflector = openmc.ZPlane(z0=57.17) #end of side reflector

bot_clad_reflector = openmc.ZPlane(z0=0.0) #start of side reflector's clad
top_clad_reflector = openmc.ZPlane(z0=59.04) #end of side reflector's clad

#Grid at the top of the core
top_grid_bot = openmc.ZPlane(z0=59.04)
top_grid_top = openmc.ZPlane(z0=60.94)

# Grid at the bottom of core
bottom_grid_bot = openmc.ZPlane(z0=-6.995)
bottom_grid_top = openmc.ZPlane(z0=-5.05) # true


# Void in reflector (lazy susan)
refl_void_inner = openmc.ZCylinder(r=30.5)
refl_void_outer = openmc.ZCylinder(r=37)
refl_void_b = openmc.ZPlane(z0=31.35)

#IRRADIATION CHANNELS
#--> Since OpenMC treat badly rotations, the channels' eqns have been defined as quadric (matlab script)
#    Also, a discriminator plane need to be defined since the cylinder is bi-directional.
#    Finally, a "filling" graphite region need to be defined to fill the water gap.

channel_1_discriminator = openmc.YPlane(y0=0.0)
channel_1_inner = openmc.Quadric(a=0.9963, b=0.0037, c=1, d=-0.1213, e=0, f=0, g=0, h=0, j=-42.7, k=396.5325)
channel_1_outer = openmc.Quadric(a=0.9963, b=0.0037, c=1, d=-0.1213, e=0, f=0, g=0, h=0, j=-42.7, k=385.2625)

channel_2_discriminator = openmc.YPlane(y0=0.0)
channel_2_inner = openmc.Quadric(a=361, b=739.5735, c=1100.6, d=-1033.4, e=0, f=0, g=0, h=0, j=-46994, k=436413.1471)
channel_2_outer = openmc.Quadric(a=361, b=739.5735, c=1100.6, d=-1033.4, e=0, f=0, g=0, h=0, j=-46994, k=424009.68)

channel_3_discriminator = openmc.Plane(a=-19, b=+27.195, c=0, d=0) #3D plane which cut in half channel 2
channel_3_inner = openmc.Quadric(a=67.1597, b=4.7337, c=71.8933, d=35.6602, e=0, f=0, g=4330.4, h=1149.7, j=-3069.8, k=98312, boundary_type = "transmission")
channel_3_outer = openmc.Quadric(a=67.1597, b=4.7337, c=71.8933, d=35.6602, e=0, f=0, g=4330.4, h=1149.7, j=-3069.8, k=97502, boundary_type = "transmission")


# Core delimitations
core_radius = openmc.ZCylinder(r=22.3, boundary_type = 'transmission') #true
inner_radius_reflector = openmc.ZCylinder(r=23.15)
outer_radius_reflector = openmc.ZCylinder(r=53.35)
s1 = openmc.ZCylinder(r=54.62, boundary_type='vacuum') #cylindrical surface delimiting the core
end_domain_top = openmc.ZPlane(z0=125.7, boundary_type='vacuum')
end_domain_bot = openmc.ZPlane(z0=-50, boundary_type='vacuum')

Geometry: cells and universes

[28]:
# Inline plot

inline_plot = False
cellid = 1
[ ]:
# Fuel element 101
fuel_101_universe = openmc.Universe(name='UZrH Fuel 101 Universe')

fuel_101_cell = openmc.Cell(name='Fuel 101', cell_id = cellid)
fuel_101_cell.fill = Fuel101
fuel_101_cell.region = -r_fuel_101 & +bot_active_101 & -top_active_101

cellid += 1
sm_top_101_cell = openmc.Cell(name='Sm disk top 101', cell_id = cellid)
sm_top_101_cell.fill = Samarium
sm_top_101_cell.region = -r_fuel_101 & +top_active_101 & -Sm_top_101

cellid += 1
graphite_top_101_cell = openmc.Cell(name='graphite top 101', cell_id = cellid)
graphite_top_101_cell.fill = Graphite
graphite_top_101_cell.region = -r_fuel_101 & +Sm_top_101 & -reflector_top_101

cellid += 1
sm_bot_101_cell = openmc.Cell(name='Sm disk bot 101', cell_id = cellid)
sm_bot_101_cell.fill = Samarium
sm_bot_101_cell.region = -r_fuel_101 & +Sm_bot_101 & -bot_active_101

cellid += 1
graphite_bot_101_cell = openmc.Cell(name='graphite bot 101', cell_id = cellid)
graphite_bot_101_cell.fill = Graphite
graphite_bot_101_cell.region = -r_fuel_101 & +reflector_bot_101 & -Sm_bot_101

cellid += 1
clad_101_cell = openmc.Cell(name='Al Cladding', cell_id = cellid)
clad_101_cell.fill = CladdingAl
clad_101_cell.region = -r_clad_101 & +r_fuel_101 & +reflector_bot_101 & -reflector_top_101

cellid += 1
clad_top_101_cell = openmc.Cell(name='Al Cladding top', cell_id = cellid)
clad_top_101_cell.fill = CladdingAl
clad_top_101_cell.region = -r_clad_101 & +reflector_top_101 & -clad_top_101

cellid += 1
clad_bot_101_cell = openmc.Cell(name='Al Cladding bot', cell_id = cellid)
clad_bot_101_cell.fill = CladdingAl
clad_bot_101_cell.region = -r_clad_101 & +clad_bot_101 & -reflector_bot_101

cellid += 1
plug_top_101_cell = openmc.Cell(name='top plug', cell_id = cellid)
plug_top_101_cell.fill = CladdingAl
plug_top_101_cell.region = -plug_radius_101 & +clad_top_101 & -plug_top_101

cellid += 1
plug_bot_101_cell = openmc.Cell(name='bot plug', cell_id = cellid)
plug_bot_101_cell.fill = CladdingAl
plug_bot_101_cell.region = -plug_radius_101 & +bottom_grid_top & -clad_bot_101

cellid += 1
plug_w_101_cell = openmc.Cell(name='top plug water', cell_id = cellid)
plug_w_101_cell.fill = Water
plug_w_101_cell.region = +plug_radius_101 & -r_clad_101 &+clad_top_101 & -plug_top_101

cellid += 1
water_top_fuel_101_cell=openmc.Cell(cell_id = cellid)
water_top_fuel_101_cell.fill = Water
water_top_fuel_101_cell.region = -r_clad_101 & +plug_top_101 &-end_domain_top

cellid += 1
water_bot_fuel_101_cell=openmc.Cell(cell_id = cellid)
water_bot_fuel_101_cell.fill = Water
water_bot_fuel_101_cell.region = -r_clad_101 & +end_domain_bot &-clad_bot_101


fuel_101_universe.add_cell(fuel_101_cell)
fuel_101_universe.add_cell(sm_top_101_cell)
fuel_101_universe.add_cell(graphite_top_101_cell)
fuel_101_universe.add_cell(sm_bot_101_cell)
fuel_101_universe.add_cell(graphite_bot_101_cell)
fuel_101_universe.add_cell(clad_101_cell)
fuel_101_universe.add_cell(clad_top_101_cell)
fuel_101_universe.add_cell(clad_bot_101_cell)
fuel_101_universe.add_cell(plug_top_101_cell)
fuel_101_universe.add_cell(plug_bot_101_cell)
fuel_101_universe.add_cell(plug_w_101_cell)
fuel_101_universe.add_cell(water_top_fuel_101_cell)
fuel_101_universe.add_cell(water_bot_fuel_101_cell)

if inline_plot:
    fuel_101_universe.plot(origin=(0,0,27), width=(6.0, 70.0), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# Fuel element 103
fuel_103_universe = openmc.Universe(name='UZrH Fuel 103 Universe')

cellid += 1
Zr_rod_103_cell = openmc.Cell(name='Zr thin rod', cell_id = cellid)
Zr_rod_103_cell.fill = Zirconium
Zr_rod_103_cell.region = -r_fuel_inner_103 & +bot_active_103 & -top_active_103

cellid += 1
fuel_103_cell = openmc.Cell(name='Fuel 103', cell_id = cellid)
fuel_103_cell.fill = Fuel103
fuel_103_cell.region = -r_fuel_outer_103 & +r_fuel_inner_103 & +bot_active_103 & -top_active_103

cellid += 1
graphite_top_103_cell = openmc.Cell(name='graphite top 103', cell_id = cellid)
graphite_top_103_cell.fill = Graphite
graphite_top_103_cell.region = -r_fuel_outer_103 & +top_active_103 & -reflector_top_103

cellid += 1
graphite_bot_103_cell = openmc.Cell(name='graphite bot 103', cell_id = cellid)
graphite_bot_103_cell.fill = Graphite
graphite_bot_103_cell.region = -r_fuel_outer_103 & +reflector_bot_103 & -bot_active_103

cellid += 1
clad_103_cell = openmc.Cell(name='SS Cladding 103', cell_id = cellid)
clad_103_cell.fill = CladdingSS
clad_103_cell.region = -r_clad_103 & +r_fuel_outer_103 & +reflector_bot_103 & -reflector_top_103

cellid += 1
clad_top_103_cell = openmc.Cell(name='SS Cladding top 103', cell_id = cellid)
clad_top_103_cell.fill = CladdingSS
clad_top_103_cell.region = -r_clad_103 & +reflector_top_103 & -clad_top_103

cellid += 1
clad_bot_103_cell = openmc.Cell(name='SS Cladding bot 103', cell_id = cellid)
clad_bot_103_cell.fill = CladdingSS
clad_bot_103_cell.region = -r_clad_103 & +clad_bot_103 & -reflector_bot_103

cellid += 1
plug_top_103_cell = openmc.Cell(name='top plug 103', cell_id = cellid)
plug_top_103_cell.fill = CladdingSS
plug_top_103_cell.region = -plug_radius_103 & +clad_top_103 & -plug_top_103

cellid += 1
plug_bot_103_cell = openmc.Cell(name='bot plug 103', cell_id = cellid)
plug_bot_103_cell.fill = CladdingSS
plug_bot_103_cell.region = -plug_radius_103 & +bottom_grid_top & -clad_bot_103

cellid += 1
plug_w_103_cell = openmc.Cell(name='top plug water 103', cell_id = cellid)
plug_w_103_cell.fill = Water
plug_w_103_cell.region = +plug_radius_103 & -r_clad_103 &+clad_top_103 & -plug_top_103

cellid += 1
water_top_fuel_103_cell=openmc.Cell(cell_id = cellid)
water_top_fuel_103_cell.fill = Water
water_top_fuel_103_cell.region = -r_clad_103 & +plug_top_103 &-end_domain_top

cellid += 1
water_bot_fuel_103_cell=openmc.Cell(cell_id = cellid)
water_bot_fuel_103_cell.fill = Water
water_bot_fuel_103_cell.region = -r_clad_103 & ~plug_bot_103_cell.region & +end_domain_bot &-clad_bot_103


fuel_103_universe.add_cell(Zr_rod_103_cell)
fuel_103_universe.add_cell(fuel_103_cell)
fuel_103_universe.add_cell(graphite_top_103_cell)
fuel_103_universe.add_cell(graphite_bot_103_cell)
fuel_103_universe.add_cell(clad_103_cell)
fuel_103_universe.add_cell(clad_top_103_cell)
fuel_103_universe.add_cell(clad_bot_103_cell)
fuel_103_universe.add_cell(plug_bot_103_cell)
fuel_103_universe.add_cell(plug_top_103_cell)
fuel_103_universe.add_cell(plug_w_103_cell)
fuel_103_universe.add_cell(water_top_fuel_103_cell)
fuel_103_universe.add_cell(water_bot_fuel_103_cell)

if inline_plot:
    fuel_103_universe.plot(origin=(0,0,27), width=(6.0, 70.0), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# Central Channel

# Condition for filling the Al case for void feedback measurements. If void_water = True, fill the case with water. Else, air
void_water = True

if void_water:
    FillingMaterial = Water
else:
    FillingMaterial = Vacuum

central_channel_universe = openmc.Universe(name='CC Universe')

cellid += 1
central_channel_water = openmc.Cell(name='CC water below', cell_id = cellid)
central_channel_water.fill = Water
central_channel_water.region = -r_central_channel_clad & +end_domain_bot & -bottom_grid_bot

cellid += 1
central_channel_clad = openmc.Cell(name='CC clad', cell_id = cellid)
central_channel_clad.fill = CladdingAl
central_channel_clad.region = +r_central_channel & -r_central_channel_clad & +bottom_grid_bot & -end_domain_top

cellid += 1
central_channel_bot_cell = openmc.Cell(name='CC bot', cell_id = cellid)
central_channel_bot_cell.fill = Vacuum
central_channel_bot_cell.region = -r_central_channel & +bottom_grid_bot & -s_void_bot_out

cellid += 1
central_channel_top_cell = openmc.Cell(name='CC top', cell_id = cellid)
central_channel_top_cell.fill = Vacuum
central_channel_top_cell.region = -r_central_channel & +s_void_top_out & -end_domain_top


# 6 celle per il barilotto di void:
#0. and 1.  = inner part, top and bottom, 2.  = lateral clad, 3. and 4.  = clad, top and bottom, 5. = lateral void
cellid += 1
void_cc_0 = openmc.Cell(name = 'void cc inner bot', cell_id = cellid)
void_cc_0.fill = FillingMaterial
void_cc_0.region = -s_void_r_in & +s_void_bot_in & -s_void_sep

cellid += 1
void_cc_1 = openmc.Cell(name = 'void cc inner top', cell_id = cellid)
void_cc_1.fill = Vacuum
void_cc_1.region = -s_void_r_in & +s_void_sep & -s_void_top_in

cellid += 1
void_cc_2 = openmc.Cell(name = 'void lateral clad', cell_id = cellid)
void_cc_2.fill = CladdingAl
void_cc_2.region = +s_void_r_in & -s_void_r_out & +s_void_bot_in & -s_void_top_in

cellid += 1
void_cc_3 = openmc.Cell(name = 'void bot clad', cell_id = cellid)
void_cc_3.fill = CladdingAl
void_cc_3.region = +s_void_bot_out & -s_void_bot_in & -s_void_r_out

cellid += 1
void_cc_4 = openmc.Cell(name = 'void top vlad', cell_id = cellid)
void_cc_4.fill = CladdingAl
void_cc_4.region = +s_void_top_in & -s_void_top_out & -s_void_r_out

cellid += 1
void_cc_5 = openmc.Cell(name = 'void lateral vacuum', cell_id = cellid)
void_cc_5.fill = Vacuum
void_cc_5.region = +s_void_bot_out & -s_void_top_out & +s_void_r_out & -r_central_channel


central_channel_universe.add_cell(central_channel_bot_cell)
central_channel_universe.add_cell(central_channel_top_cell)
central_channel_universe.add_cell(central_channel_clad)
central_channel_universe.add_cell(central_channel_water)
central_channel_universe.add_cell(void_cc_0)
central_channel_universe.add_cell(void_cc_1)
central_channel_universe.add_cell(void_cc_2)
central_channel_universe.add_cell(void_cc_3)
central_channel_universe.add_cell(void_cc_4)
central_channel_universe.add_cell(void_cc_5)


if inline_plot:
    central_channel_universe.plot(origin=(0,0,27), width=(6.0, 90.0), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# TRANS rod
transient_universe = openmc.Universe(name='TRANS Universe')

cellid += 1
TRANS_cell = openmc.Cell(name='TRANS Cell', cell_id = cellid)
TRANS_cell.fill = ControlRodBorated #true
TRANS_cell.region = -r_trans_inner & +bot_trans & -top_trans

cellid += 1
TRANS_clad = openmc.Cell(name='TRANS Clad Cell', cell_id = cellid)
TRANS_clad.fill = CladdingCR
TRANS_clad.region = -r_trans_outer & +r_trans_inner & +bot_trans & -top_trans

cellid += 1
TRANS_bot_clad_cell = openmc.Cell(name='TRANS clad bot cell', cell_id = cellid)
TRANS_bot_clad_cell.fill = CladdingCR
TRANS_bot_clad_cell.region = -r_trans_outer & +bot_trans_clad & -bot_trans

cellid += 1
TRANS_bot_plug_cell = openmc.Cell(name='TRANS clad bot plug', cell_id = cellid)
TRANS_bot_plug_cell.fill = CladdingCR
TRANS_bot_plug_cell.region = -r_trans_bot_plug & +bot_trans_plug & -bot_trans_clad

cellid += 1
TRANS_top_clad_cell = openmc.Cell(name='TRANS clad top cell', cell_id = cellid)
TRANS_top_clad_cell.fill = CladdingCR
TRANS_top_clad_cell.region = -r_trans_outer & +top_trans & -top_clad_trans

cellid += 1
TRANS_water_bot = openmc.Cell(name='TRANS water Cell', cell_id = cellid)
TRANS_water_bot.fill = Water
TRANS_water_bot.region = -r_clad_103 & +bottom_grid_top & -bot_trans_plug

cellid += 1
TRANS_water_bot_plug = openmc.Cell(name='TRANS water Cell bot plug', cell_id = cellid)
TRANS_water_bot_plug.fill = Water
TRANS_water_bot_plug.region = -r_clad_103 & +r_trans_bot_plug & -bot_trans_clad & +bot_trans_plug

cellid += 1
TRANS_water_top = openmc.Cell(name='TRANS water Cell', cell_id = cellid)
TRANS_water_top.fill = Water
TRANS_water_top.region = -r_clad_103 & +top_clad_trans & -end_domain_top

cellid += 1
TRANS_water_fill = openmc.Cell(name='TRANS water Cell for filling lattice', cell_id = cellid)
TRANS_water_fill.fill = Water
TRANS_water_fill.region = +r_trans_outer & -r_clad_103 & +bot_trans_clad & -top_clad_trans


transient_universe.add_cell(TRANS_cell)
transient_universe.add_cell(TRANS_clad)
transient_universe.add_cell(TRANS_water_top)
transient_universe.add_cell(TRANS_water_bot)
transient_universe.add_cell(TRANS_water_bot_plug)
transient_universe.add_cell(TRANS_water_fill)
transient_universe.add_cell(TRANS_top_clad_cell)
transient_universe.add_cell(TRANS_bot_clad_cell)
transient_universe.add_cell(TRANS_bot_plug_cell)

if inline_plot:
    transient_universe.plot(origin=(0,0,z0_trans), width=(6.0, 1.5*z0_trans), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# REG rod
reg_universe = openmc.Universe(name='REG Universe')

cellid += 1
REG_cell = openmc.Cell(name='REG Cell', cell_id = cellid)
REG_cell.fill = ControlRodB4C
REG_cell.region = -r_reg_inner & +bot_reg & -top_reg

cellid += 1
REG_clad = openmc.Cell(name='REG Clad Cell', cell_id = cellid)
REG_clad.fill = CladdingCR
REG_clad.region = -r_reg_outer & +r_reg_inner & +bot_reg & -top_reg

cellid += 1
REG_bot_clad_cell = openmc.Cell(name='REG clad bot cell', cell_id = cellid)
REG_bot_clad_cell.fill = CladdingCR
REG_bot_clad_cell.region = -r_reg_outer & +bot_reg_clad & -bot_reg

cellid += 1
REG_bot_plug_cell = openmc.Cell(name='REG clad bot plug', cell_id = cellid)
REG_bot_plug_cell.fill = CladdingCR
REG_bot_plug_cell.region = -r_reg_bot_plug & +bot_reg_plug & -bot_reg_clad

cellid += 1
REG_top_clad_cell = openmc.Cell(name='REG clad top cell', cell_id = cellid)
REG_top_clad_cell.fill = CladdingCR
REG_top_clad_cell.region = -r_reg_outer & +top_reg & -top_clad_reg

cellid += 1
REG_water_top = openmc.Cell(name='REG water Cell', cell_id = cellid)
REG_water_top.fill = Water
REG_water_top.region = -r_clad_103 & +top_clad_reg & -end_domain_top

cellid += 1
REG_water_bot = openmc.Cell(name='REG water Cell', cell_id = cellid)
REG_water_bot.fill = Water
REG_water_bot.region = -r_clad_103 & +bottom_grid_top & -bot_reg_plug

cellid += 1
REG_water_bot_plug = openmc.Cell(name='REG water Cell plug', cell_id = cellid)
REG_water_bot_plug.fill = Water
REG_water_bot_plug.region = -r_clad_103 & +r_reg_bot_plug & -bot_reg_clad & +bot_reg_plug

cellid += 1
REG_water_fill = openmc.Cell(name='REG water Cell for filling lattice', cell_id = cellid)
REG_water_fill.fill = Water
REG_water_fill.region = +r_reg_outer & -r_clad_103 & +bot_reg_clad & -top_clad_reg


reg_universe.add_cell(REG_cell)
reg_universe.add_cell(REG_clad)
reg_universe.add_cell(REG_water_top)
reg_universe.add_cell(REG_water_bot)
reg_universe.add_cell(REG_water_bot_plug)
reg_universe.add_cell(REG_water_fill)
reg_universe.add_cell(REG_top_clad_cell)
reg_universe.add_cell(REG_bot_clad_cell)
reg_universe.add_cell(REG_bot_plug_cell)


if inline_plot:
    reg_universe.plot(origin=(0,0,z0_reg), width=(6.0, 1.5*z0_reg), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# SHIM rod
shim_universe = openmc.Universe(name='SHIM Universe')

cellid += 1
SHIM_cell = openmc.Cell(name='SHIM Cell', cell_id=cellid)
SHIM_cell.fill = ControlRodB4C
SHIM_cell.region = -r_shim_inner & +bot_shim & -top_shim

cellid += 1
SHIM_clad = openmc.Cell(name='SHIM Clad Cell', cell_id=cellid)
SHIM_clad.fill = CladdingCR
SHIM_clad.region = -r_shim_outer & +r_shim_inner & +bot_shim & -top_shim

cellid += 1
SHIM_bot_clad_cell = openmc.Cell(name='SHIM clad bot cell', cell_id=cellid)
SHIM_bot_clad_cell.fill = CladdingCR
SHIM_bot_clad_cell.region = -r_shim_outer & +bot_shim_clad & -bot_shim

cellid += 1
SHIM_bot_plug_cell = openmc.Cell(name='SHIM clad bot plug', cell_id=cellid)
SHIM_bot_plug_cell.fill = CladdingCR
SHIM_bot_plug_cell.region = -r_shim_bot_plug & +bot_shim_plug & -bot_shim_clad

cellid += 1
SHIM_top_clad_cell = openmc.Cell(name='SHIM clad top cell', cell_id=cellid)
SHIM_top_clad_cell.fill = CladdingCR
SHIM_top_clad_cell.region = -r_shim_outer & +top_shim & -top_clad_shim


cellid += 1
SHIM_water_top = openmc.Cell(name='SHIM water Cell top', cell_id=cellid)
SHIM_water_top.fill = Water
SHIM_water_top.region = -r_clad_103 & +top_clad_shim & -end_domain_top

cellid += 1
SHIM_water_bot = openmc.Cell(name='SHIM water Cell bot', cell_id=cellid)
SHIM_water_bot.fill = Water
SHIM_water_bot.region = -r_clad_103 & +end_domain_bot & -bot_shim_plug

cellid += 1
SHIM_water_bot_plug = openmc.Cell(name='SHIM water Cell bot plug', cell_id=cellid)
SHIM_water_bot_plug.fill = Water
SHIM_water_bot_plug.region = -r_clad_103 & +r_shim_bot_plug  & +bot_shim_plug & -bot_shim_clad

cellid += 1
SHIM_water_fill = openmc.Cell(name='SHIM water Cell for filling lattice', cell_id=cellid)
SHIM_water_fill.fill = Water
SHIM_water_fill.region = +r_shim_outer & -r_clad_103 & +bot_shim_clad & -top_clad_shim

shim_universe.add_cell(SHIM_cell)
shim_universe.add_cell(SHIM_clad)
shim_universe.add_cell(SHIM_water_top)
shim_universe.add_cell(SHIM_water_bot)
shim_universe.add_cell(SHIM_water_bot_plug)
shim_universe.add_cell(SHIM_water_fill)
shim_universe.add_cell(SHIM_top_clad_cell)
shim_universe.add_cell(SHIM_bot_clad_cell)
shim_universe.add_cell(SHIM_bot_plug_cell)


if inline_plot:
    shim_universe.plot(origin=(0,0,z0_shim), width=(6.0, 3*z0_shim), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# Dummy channel (graphite)
graphite_channel_universe = openmc.Universe(name='Graphite Channel Universe')

cellid += 1
graphite_channel_cell = openmc.Cell(name='Graphite channel Cell', cell_id=cellid)
graphite_channel_cell.fill = Graphite
graphite_channel_cell.region = -r_dummy_graphite & +reflector_bot_101 & -reflector_top_101

cellid += 1
graphite_clad = openmc.Cell(name='Graphite Clad Cell', cell_id=cellid)
graphite_clad.fill = CladdingCR
graphite_clad.region = -r_dummy_clad & +r_dummy_graphite & +reflector_bot_101 & -reflector_top_101

cellid += 1
dummy_top_plug_cell = openmc.Cell(name='Graphite channel Cell plug top', cell_id=cellid)
dummy_top_plug_cell.fill = CladdingCR
dummy_top_plug_cell.region = -r_dummy_clad & +reflector_top_101 & -clad_top_101

cellid += 1
dummy_bot_plug_cell = openmc.Cell(name='Graphite channel Cell plug bot', cell_id=cellid)
dummy_bot_plug_cell.fill = CladdingCR
dummy_bot_plug_cell.region = -r_dummy_clad & +clad_bot_101 & -reflector_bot_101

cellid += 1
dummy_bot_water_cell = openmc.Cell(cell_id=cellid)
dummy_bot_water_cell.fill = Water
dummy_bot_water_cell.region = -r_dummy_clad & -clad_bot_101 & +end_domain_bot

cellid += 1
dummy_top_water_cell = openmc.Cell(cell_id=cellid)
dummy_top_water_cell.fill = Water
dummy_top_water_cell.region = -r_dummy_clad & +clad_top_101 & -end_domain_top


graphite_channel_universe.add_cell(graphite_channel_cell)
graphite_channel_universe.add_cell(graphite_clad)
graphite_channel_universe.add_cell(dummy_top_plug_cell)
graphite_channel_universe.add_cell(dummy_bot_plug_cell)
graphite_channel_universe.add_cell(dummy_top_water_cell)
graphite_channel_universe.add_cell(dummy_bot_water_cell)


if inline_plot:
    graphite_channel_universe.plot(origin=(0,0,30), width=(7.0, 70), pixels=[400, 400], basis='xz', color_by='material')
[ ]:
# Rabbit & Source empty channels
rabbit_universe = openmc.Universe(name='Rabbit Universe')

cellid += 1
rabbit_cell = openmc.Cell(name='Rabbit', cell_id=cellid)
rabbit_cell.fill = Vacuum
rabbit_cell.region = -r_rabbit_inner & +bottom_grid_top & -end_domain_top

cellid += 1
rabbit_clad = openmc.Cell(name='Rabbit clad', cell_id=cellid)
rabbit_clad.fill = CladdingCR
rabbit_clad.region = +r_rabbit_inner & -r_rabbit_outer & +bottom_grid_top & -end_domain_top

rabbit_universe.add_cell(rabbit_cell)
rabbit_universe.add_cell(rabbit_clad)
[ ]:
# Reflector
reflector_universe = openmc.Universe(name='Reflector')

# Create reflector cell
# --> 4 void zones inside the reflector: 1 cylindrical annulus and 3 channels

# Cylindrical ring between 31.35 and 57
cellid += 1
reflector_cell_down = openmc.Cell(name='Reflector cell down', cell_id=cellid)
reflector_cell_down.fill = Graphite
reflector_cell_down.region = -outer_radius_reflector & +inner_radius_reflector & +bot_reflector & -refl_void_b & +channel_1_outer & +channel_2_outer & +channel_3_outer #aggiungere canali

cellid += 1
reflector_cell_fill_ch1 = openmc.Cell(name='Reflector cell fill ch1', cell_id=cellid)
reflector_cell_fill_ch1.fill = Graphite
reflector_cell_fill_ch1.region = -outer_radius_reflector & +inner_radius_reflector & +bot_reflector & -refl_void_b & -channel_1_outer & -channel_1_discriminator

cellid += 1
reflector_cell_fill_ch2 = openmc.Cell(name='Reflector cell fill ch2', cell_id=cellid)
reflector_cell_fill_ch2.fill = Graphite
reflector_cell_fill_ch2.region = -outer_radius_reflector & +inner_radius_reflector & +bot_reflector & -refl_void_b & -channel_2_outer & +channel_2_discriminator

cellid += 1
reflector_cell_fill_ch3 = openmc.Cell(name='Reflector cell fill ch3', cell_id=cellid)
reflector_cell_fill_ch3.fill = Graphite
reflector_cell_fill_ch3.region = -outer_radius_reflector & +inner_radius_reflector & +bot_reflector & -refl_void_b & -channel_3_outer & +channel_3_discriminator & +channel_2_outer

cellid += 1
reflector_cell_right_vacuum = openmc.Cell(name='Reflector right side from vacuum', cell_id=cellid)
reflector_cell_right_vacuum.fill = Graphite
reflector_cell_right_vacuum.region = -refl_void_inner & +inner_radius_reflector & +refl_void_b & -top_reflector

cellid += 1
reflector_cell_left_vacuum = openmc.Cell(name='Reflector left side from vacuum', cell_id=cellid)
reflector_cell_left_vacuum.fill = Graphite
reflector_cell_left_vacuum.region = +refl_void_outer & -outer_radius_reflector & +refl_void_b & -top_reflector

# lazy susan
cellid += 1
reflector_cell_vacuum = openmc.Cell(name='Reflector vacuum', cell_id=cellid)
reflector_cell_vacuum.fill = Vacuum
reflector_cell_vacuum.region = -refl_void_outer & +refl_void_inner & +refl_void_b & -top_reflector #aggiungere canali

cellid += 1
reflector_clad_bot = openmc.Cell(name='Reflector clad bot', cell_id=cellid)
reflector_clad_bot.fill = CladdingCR
reflector_clad_bot.region = +core_radius & -s1 & +bot_clad_reflector & -bot_reflector

cellid += 1
reflector_clad_top = openmc.Cell(name='Reflector clad top', cell_id=cellid)
reflector_clad_top.fill = CladdingCR
reflector_clad_top.region = +core_radius & -s1 & +top_reflector & -top_clad_reflector

cellid += 1
reflector_clad_side_inner = openmc.Cell(name='Reflector clad side inner', cell_id=cellid)
reflector_clad_side_inner.fill = CladdingCR
reflector_clad_side_inner.region = +core_radius & -inner_radius_reflector & +bot_reflector & -top_reflector

cellid += 1
reflector_clad_side_outer = openmc.Cell(name='Reflector clad side outer', cell_id=cellid)
reflector_clad_side_outer.fill = CladdingCR
reflector_clad_side_outer.region = +outer_radius_reflector & -s1 & +bot_reflector & -top_reflector


#CHANNELS
cellid += 1
reflector_ch1 = openmc.Cell(name='irradiation channel 1', cell_id=cellid)
reflector_ch1.fill = Vacuum
reflector_ch1.region = -channel_1_inner & +inner_radius_reflector & -outer_radius_reflector & +channel_1_discriminator

cellid += 1
reflector_ch1_clad = openmc.Cell(name='clad irradiation channel 1', cell_id=cellid)
reflector_ch1_clad.fill = CladdingCR
reflector_ch1_clad.region = +channel_1_inner & -channel_1_outer & +inner_radius_reflector & -outer_radius_reflector & +channel_1_discriminator

cellid += 1
reflector_ch2 = openmc.Cell(name='irradiation channel 2', cell_id=cellid)
reflector_ch2.fill = Vacuum
reflector_ch2.region = -channel_2_inner & +inner_radius_reflector & -outer_radius_reflector & -channel_2_discriminator

cellid += 1
reflector_ch2_clad = openmc.Cell(name='clad irradiation channel 2', cell_id=cellid)
reflector_ch2_clad.fill = CladdingCR
reflector_ch2_clad.region = +channel_2_inner & -channel_2_outer & +inner_radius_reflector & -outer_radius_reflector & -channel_2_discriminator

cellid += 1
reflector_ch3 = openmc.Cell(name='irradiation channel 3', cell_id=cellid)
reflector_ch3.fill = Vacuum
reflector_ch3.region = -channel_3_inner & +channel_2_outer & -outer_radius_reflector & -channel_3_discriminator

cellid += 1
reflector_ch3_clad = openmc.Cell(name='clad irradiation channel 3', cell_id=cellid)
reflector_ch3_clad.fill = CladdingCR
reflector_ch3_clad.region = +channel_3_inner & -channel_3_outer & +channel_2_outer & -outer_radius_reflector & -channel_3_discriminator

cellid += 1
water_reflector_top= openmc.Cell(cell_id=cellid)
water_reflector_top.region= +top_clad_reflector & -end_domain_top & -s1 & +core_radius
water_reflector_top.fill = Water

cellid += 1
water_reflector_bottom= openmc.Cell(cell_id=cellid)
water_reflector_bottom.region= +end_domain_bot & -bottom_grid_bot & -s1
water_reflector_bottom.fill = Water

cellid += 1
water_reflector_bottom2= openmc.Cell(cell_id=cellid)
water_reflector_bottom2.region= -bot_clad_reflector & +bottom_grid_bot & -s1 & +core_radius
water_reflector_bottom2.fill = Water


reflector_universe.add_cell(reflector_cell_down)
reflector_universe.add_cell(reflector_cell_vacuum)
reflector_universe.add_cell(reflector_cell_right_vacuum)
reflector_universe.add_cell(reflector_cell_left_vacuum)
reflector_universe.add_cell(reflector_clad_bot)
reflector_universe.add_cell(reflector_clad_top)
reflector_universe.add_cell(reflector_clad_side_inner)
reflector_universe.add_cell(reflector_clad_side_outer)
reflector_universe.add_cell(reflector_ch1)
reflector_universe.add_cell(reflector_cell_fill_ch1)
reflector_universe.add_cell(reflector_ch1_clad)
reflector_universe.add_cell(reflector_ch2)
reflector_universe.add_cell(reflector_cell_fill_ch2)
reflector_universe.add_cell(reflector_ch2_clad)
reflector_universe.add_cell(reflector_ch3)
reflector_universe.add_cell(reflector_cell_fill_ch3)
reflector_universe.add_cell(reflector_ch3_clad)
reflector_universe.add_cell(water_reflector_top)
reflector_universe.add_cell(water_reflector_bottom)
reflector_universe.add_cell(water_reflector_bottom2)


if inline_plot:
    reflector_universe.plot(origin=(0,0,25), width=(130.0, 130), pixels=[500, 500], basis='xz', color_by='material')
    reflector_universe.plot(origin=(0,0,25), width=(130.0, 130), pixels=[500, 500], basis='xy', color_by='material')
[38]:
# Concrete --> to do
[39]:
# Core universe

# Create surfaces that will divide rings in the circular lattice
ring_radii = np.array([0.0, 4.0975, 8.2, 12.2, 16.3, 20.3])# From Riccardo Boccelli MSc thesis
radial_surf = [openmc.ZCylinder(r=r) for r in
               (ring_radii[:-1] + ring_radii[1:])/2]

water_cells_down = []
water_cells_up = []
top_grid_cells = []
for i in range(ring_radii.size):
    # Create annular region
    if i == 0:
        water_region_down = -radial_surf[i] & -top_grid_bot
        water_region_up = -radial_surf[i] & +top_grid_top
        grid_region = -radial_surf[i] & +top_grid_bot & -top_grid_top
    elif i == ring_radii.size - 1:
        water_region_down = -top_grid_bot & +radial_surf[i-1] & -core_radius
        water_region_up = +top_grid_top & +radial_surf[i-1] & -core_radius
        grid_region = +radial_surf[i-1] & +top_grid_bot & -top_grid_top
    else:
        water_region_down = -top_grid_bot & +radial_surf[i-1] & -radial_surf[i]
        water_region_up = +top_grid_top & +radial_surf[i-1] & -radial_surf[i]
        grid_region = +radial_surf[i-1] & -radial_surf[i] & +top_grid_bot & -top_grid_top

    cellid +=1
    water_cell_down = openmc.Cell(fill=Water, region=water_region_down, cell_id=cellid)

    cellid +=1
    water_cell_up = openmc.Cell(fill=Water, region=water_region_up, cell_id=cellid)

    cellid +=1
    top_grid_cell = openmc.Cell(fill=CladdingAl, region=grid_region, cell_id=cellid)
    top_grid_cells.append(top_grid_cell)

    water_cells_down.append(water_cell_down)
    water_cells_up.append(water_cell_up)


core_universe = openmc.Universe()
core_universe.add_cells(water_cells_down)
core_universe.add_cells(water_cells_up)
core_universe.add_cells(top_grid_cells)


# Arrange the pins in the circular lattice
num_pins = [1, 6, 12, 18, 24, 30]
angles = [0, 0, 0, 0, 0, 0]
#angles = [0, 30, 0, 30, 0, 30]

# In order to insert pin in the lattice, it is needed to define first the parameters for the spatial location.
# In particular: 'numPins' identifies the ring, and 'howleft' the angular degree

centralChannel = {'numPins':[num_pins[0]], # Here the 'howLeft' parameter it is not necessary due to only one pin
                  'howLeftFrom3oclock':[0]}

REG = {'numPins'  :[num_pins[4]],
       'howLeftFrom3oclock':[7]}

TRANS = {'numPins' : [num_pins[3]],
         'howLeftFrom3oclock':[11]}

SHIM = {'numPins' : [num_pins[2]],
        'howLeftFrom3oclock':[-1]}

waterRods = {'numPins'  :[num_pins[5], num_pins[5]],
             'howLeftFrom3oclock': [1,11]}

graphiteRods = {'numPins' : np.full(5, num_pins[5]),
                'howLeftFrom3oclock':[-1,0,2,3,4]}

# 6 pin in ring 1, 11 in ring 2 and so on
Fuel_1033 = {'numPins': [num_pins[1],num_pins[1],num_pins[1],num_pins[1],num_pins[1],num_pins[1],

                        num_pins[2], num_pins[2], num_pins[2],num_pins[2], num_pins[2], num_pins[2], num_pins[2],num_pins[2],
                        num_pins[2],num_pins[2],num_pins[2],

                        num_pins[3],

                        num_pins[5], num_pins[5], num_pins[5], num_pins[5], num_pins[5], num_pins[5], num_pins[5], num_pins[5],
                        num_pins[5], num_pins[5], num_pins[5], num_pins[5]
                        ],
                'howLeftFrom3oclock': [-1,0,1,2,3,4,    0,1,2,3,4,5,6,7,8,9,10,  14,   5,7,9,13,15,17,19,21,23,24,25,27     ] }


#corona 3, ho (18-2) pins
Fuel_1011 = {'numPins': [num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3], num_pins[3],

                        num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4], num_pins[4],

                        num_pins[5], num_pins[5], num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5],  num_pins[5]

                        ],
                'howLeftFrom3oclock': [-1,0,1,2,3,4,5,6,7,8,9,10,12,13,15,16,   -1,0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,     6,8,10,12,14,16,18,20,22,26,28] }



# Here I define some variables in order to locate the pins in the next for iteration

def CentralChannel(centralChannel,n,j):
    for irod in range(len(centralChannel['numPins'])):
        if n   == centralChannel['numPins'][irod]:
                return True
    return False

def REGChannel(REG,n,j):
    for irod in range(len(REG['numPins'])):
        if n   == REG['numPins'][irod] and \
           j-1 == REG['howLeftFrom3oclock'][irod]:
                return True
    return False

def SHIMChannel(SHIM,n,j):
    for irod in range(len(SHIM['numPins'])):
        if n   == SHIM['numPins'][irod] and \
           j-1 == SHIM['howLeftFrom3oclock'][irod]:
                return True
    return False

def TransientRod(TRANS,n,j):
    for irod in range(len(TRANS['numPins'])):
        if n   == TRANS['numPins'][irod] and \
           j-1 == TRANS['howLeftFrom3oclock'][irod]:
                return True
    return False

def WaterRod(waterRods,n,j):
    for irod in range(len(waterRods['numPins'])):
        if n   == waterRods['numPins'][irod] and \
           j-1 == waterRods['howLeftFrom3oclock'][irod]:
                return True
    return False

def GraphiteRod(graphiteRods,n,j):
    for irod in range(len(graphiteRods['numPins'])):
        if n   == graphiteRods['numPins'][irod] and \
           j-1 == graphiteRods['howLeftFrom3oclock'][irod]:
                return True
    return False

def Fuel_103(Fuel_1033,n,j):
    for irod in range(len(Fuel_1033['numPins'])):
        if n   == Fuel_1033['numPins'][irod] and \
           j-1 == Fuel_1033['howLeftFrom3oclock'][irod]:
                return True
    return False


def Fuel_101(Fuel_1011,n,j):
    for irod in range(len(Fuel_1011['numPins'])):
        if n   == Fuel_1011['numPins'][irod] and \
           j-1 == Fuel_1011['howLeftFrom3oclock'][irod]:
                return True
    return False



# Filling the core
for i, (r, n, a) in enumerate(zip(ring_radii, num_pins, angles)):

    for j in range(n):

        # Determine location of center of pin
        theta = (a + j/n*360.) * np.pi/180.
        x = r*np.cos(theta)
        y = r*np.sin(theta)
        cellid += 1

        pin_boundary = openmc.ZCylinder(x0=x, y0=y, r=r_clad_101.r)
        pin_boundary_CC = openmc.ZCylinder(x0=x, y0=y, r=r_central_channel_clad.r)
        water_cells_down[i].region &= +pin_boundary & -core_radius
        water_cells_up[i].region &= +pin_boundary & -core_radius
        top_grid_cells[i].region &= +pin_boundary & -core_radius

        # Create each fuel pin -- note that we explicitly assign an ID so
        # that we can identify the pin later when looking at tallies
        if CentralChannel(centralChannel,n,j):
            print('Adding in a central channel rod...')
            pin = openmc.Cell(fill=central_channel_universe, region=-pin_boundary_CC, cell_id=cellid)
        elif TransientRod(TRANS,n,j):
            print('Adding in a transient rod...')
            pin = openmc.Cell(fill=transient_universe, region=-pin_boundary, cell_id=cellid)
        elif WaterRod(waterRods,n,j):
            print('Adding in a water rod...')
            pin = openmc.Cell(fill=rabbit_universe, region=-pin_boundary, cell_id=cellid)
        elif SHIMChannel(SHIM,n,j):
            print('Adding in a SHIM rod...')
            pin = openmc.Cell(fill=shim_universe, region=-pin_boundary, cell_id=cellid)
        elif REGChannel(REG,n,j):
            print('Adding in a REG rod...')
            pin = openmc.Cell(fill=reg_universe, region=-pin_boundary, cell_id=cellid)
        elif GraphiteRod(graphiteRods,n,j):
            print('Adding in a graphite rod...')
            pin = openmc.Cell(fill=graphite_channel_universe, region=-pin_boundary, cell_id=cellid)
        elif Fuel_103(Fuel_1033,n,j):
            print('Adding in a 103 Fuel type...')
            pin = openmc.Cell(fill=fuel_103_universe, region=-pin_boundary, cell_id=cellid)

        elif Fuel_101(Fuel_1011,n,j):
            print('Adding in a 101 Fuel type...')
            pin = openmc.Cell(fill=fuel_101_universe, region=-pin_boundary, cell_id=cellid)

        pin.translation = (x, y, 0)
        pin.id = (i + 3)*100 + j
        core_universe.add_cell(pin)


if inline_plot:
    core_universe.plot(origin=(0,0,25), width=(60.0, 100), pixels=[400, 400], basis='xz', color_by='material', seed = 3)

if inline_plot:
    core_universe.plot(origin=(0,0,25), width=(60.0, 60), pixels=[600, 600], basis='xy', color_by='material', seed = 2)
Adding in a central channel rod...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a SHIM rod...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a transient rod...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a REG rod...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a 101 Fuel type...
Adding in a graphite rod...
Adding in a graphite rod...
Adding in a water rod...
Adding in a graphite rod...
Adding in a graphite rod...
Adding in a graphite rod...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a water rod...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
Adding in a 103 Fuel type...
Adding in a 101 Fuel type...
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=91.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=92.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=93.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=94.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=95.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=96.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=97.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=98.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=99.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=100.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=101.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=102.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=103.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=104.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=105.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=106.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=107.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=108.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=109.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=300.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=110.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=400.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=111.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=401.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=112.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=402.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=113.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=403.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=114.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=404.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=115.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=405.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=116.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=500.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=117.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=501.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=118.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=502.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=119.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=503.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=120.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=504.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=121.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=505.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=122.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=506.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=123.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=507.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=124.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=508.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=125.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=509.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=126.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=510.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=127.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=511.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=128.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=600.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=129.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=601.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=130.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=602.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=131.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=603.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=132.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=604.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=133.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=605.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=134.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=606.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=135.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=607.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=136.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=608.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=137.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=609.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=138.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=610.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=139.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=611.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=140.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=612.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=141.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=613.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=142.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=614.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=143.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=615.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=144.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=616.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=145.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=617.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=146.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=700.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=147.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=701.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=148.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=702.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=149.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=703.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=150.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=704.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=151.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=705.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=152.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=706.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=153.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=707.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=154.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=708.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=155.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=709.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=156.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=710.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=157.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=711.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=158.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=712.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=159.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=713.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=160.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=714.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=161.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=715.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=162.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=716.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=163.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=717.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=164.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=718.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=165.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=719.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=166.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=720.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=167.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=721.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=168.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=722.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=169.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=723.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=170.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=800.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=171.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=801.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=172.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=802.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=173.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=803.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=174.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=804.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=175.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=805.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=176.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=806.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=177.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=807.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=178.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=808.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=179.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=809.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=180.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=810.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=181.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=811.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=182.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=812.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=183.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=813.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=184.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=814.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=185.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=815.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=186.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=816.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=187.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=817.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=188.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=818.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=189.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=819.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=190.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=820.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=191.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=821.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=192.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=822.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=193.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=823.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=194.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=824.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=195.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=825.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=196.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=826.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=197.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=827.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=198.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=828.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=199.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=829.
  warn(msg, IDWarning)
[40]:
# Geometry definitions for the reactor

cellid += 1
reactor = openmc.Cell(cell_id = cellid)
reactor.region = -core_radius & -end_domain_top & +bottom_grid_top
reactor.fill = core_universe

cellid += 1
reflector = openmc.Cell(cell_id = cellid)
reflector.region = +core_radius & -s1 & +end_domain_bot & -end_domain_top
reflector.fill = reflector_universe

cellid += 1
bottom_grid_cell = openmc.Cell(name='bottom grid cell', cell_id = cellid)
bottom_grid_cell.fill = CladdingCR
bottom_grid_cell.region = -core_radius & +bottom_grid_bot & -bottom_grid_top

cellid += 1
bottom_grid_cell_water = openmc.Cell(name='bottom grid cell', cell_id = cellid)
bottom_grid_cell_water.fill = Water
bottom_grid_cell_water.region = -core_radius & -bottom_grid_bot & +end_domain_bot


### --- ROOT UNIVERSE
triga_universe = openmc.Universe(name='TRIGA universe')

triga_universe.add_cell(reactor)
triga_universe.add_cell(reflector)
triga_universe.add_cell(bottom_grid_cell)
triga_universe.add_cell(bottom_grid_cell_water)


geometry = openmc.Geometry((triga_universe))

if inline_plot:
    triga_universe.plot(origin=(0,0,25), width=(130.0, 130), pixels=[700, 700], basis='xz', color_by='material', seed = 3)

if inline_plot:
    triga_universe.plot(origin=(0,0,25), width=(130.0, 130), pixels=[700, 700], basis='xy', color_by='material', seed = 3)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=200.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=201.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=202.
  warn(msg, IDWarning)
/home/renato/miniconda3/envs/mc/lib/python3.11/site-packages/openmc/mixin.py:70: IDWarning: Another Cell instance already exists with id=203.
  warn(msg, IDWarning)

Plots

[41]:
# Plot definition

folder_path = './pictures/geometry/'
if not os.path.exists(folder_path):
    os.makedirs(folder_path)

colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76), }

plot_xy1 = openmc.Plot()
plot_xy1.basis = 'xy'
plot_xy1.origin = (0.0, 0.0, 23.15-7) #23.15 , 28.15, 10.4 (start CR)
plot_xy1.width = (110, 110)
plot_xy1.pixels = (2000, 2000)
plot_xy1.color_by = 'material'
plot_xy1.filename = folder_path+'view_xy1'
plot_xy1.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_xy2 = openmc.Plot()
plot_xy2.basis = 'xy'
plot_xy2.origin = (0.0, 0.0, 23.15-4) #23.15 , 28.15, 10.4 (start CR)
plot_xy2.width = (110, 110)
plot_xy2.pixels = (2000, 2000)
plot_xy2.color_by = 'material'
plot_xy2.filename = folder_path+'view_xy2'
plot_xy2.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_xy3 = openmc.Plot()
plot_xy3.basis = 'xy'
plot_xy3.origin = (0.0, 0.0, 23.15) #23.15 , 28.15, 10.4 (start CR)
plot_xy3.width = (110, 110)
plot_xy3.pixels = (2000, 2000)
plot_xy3.color_by = 'material'
plot_xy3.filename = folder_path+'view_xy3'
plot_xy3.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_xy4 = openmc.Plot()
plot_xy4.basis = 'xy'
plot_xy4.origin = (0.0, 0.0, 23.15 + 2) #23.15 , 28.15, 10.4 (start CR)
plot_xy4.width = (110, 110)
plot_xy4.pixels = (2000, 2000)
plot_xy4.color_by = 'material'
plot_xy4.filename = folder_path+'view_xy4'
plot_xy4.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_xy5 = openmc.Plot()
plot_xy5.basis = 'xy'
plot_xy5.origin = (0.0, 0.0, 23.15+4) #23.15 , 28.15, 10.4 (start CR)
plot_xy5.width = (110, 110)
plot_xy5.pixels = (2000, 2000)
plot_xy5.color_by = 'material'
plot_xy5.filename = folder_path+'view_xy5'
plot_xy5.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_xy6 = openmc.Plot()
plot_xy6.basis = 'xy'
plot_xy6.origin = (0.0, 0.0, 23.15 + 7) #23.15 , 28.15, 10.4 (start CR)
plot_xy6.width = (110, 110)
plot_xy6.pixels = (2000, 2000)
plot_xy6.color_by = 'material'
plot_xy6.filename = folder_path+'view_xy6'
plot_xy6.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}

plot_vista_shim = openmc.Plot()
plot_vista_shim.basis = 'xz'
plot_vista_shim.origin = (0.0, 0, 0)
plot_vista_shim.width = (110, 230)
plot_vista_shim.pixels = (2000, 2000)
plot_vista_shim.color_by = 'material'
plot_vista_shim.filename = folder_path+'view_shim'
plot_vista_shim.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}


plot_vista_reg = openmc.Plot()
plot_vista_reg.basis = 'xz'
plot_vista_reg.origin = (0, 14.9, 0)
plot_vista_reg.width = (110, 150)
plot_vista_reg.pixels = (3000, 3000)
plot_vista_reg.color_by = 'material'
plot_vista_reg.filename = folder_path+'view_reg'
plot_vista_reg.colors = {
    Water: (0,102,204),
    CladdingSS: (190,190,190),
    CladdingCR: (196,196,196),
    CladdingAl: (200,200,200),
    Fuel101: (255,30,30),
    Fuel103: (155,10,10),
    Graphite: (110,110,110),
    Vacuum: (249,255,227),
    ControlRodB4C: (152,251,152),
    ControlRodBorated: (152,251,152),
    Samarium: (255,255,51),
    Zirconium: (0,153,76),

}


plot_vista_trans = openmc.Plot()
plot_vista_trans.basis = 'xz'
plot_vista_trans.origin = (0, -11.5, 0)
plot_vista_trans.width = (110, 150)
plot_vista_trans.pixels = (2000, 2000)
plot_vista_trans.color_by = 'material'
plot_vista_trans.filename = folder_path+'view_trans'
plot_vista_trans.colors = colors



plots = openmc.Plots()
plots.append(plot_xy1)
plots.append(plot_xy2)
plots.append(plot_xy3)
plots.append(plot_xy4)
plots.append(plot_xy5)
plots.append(plot_xy6)
plots.append(plot_vista_reg)
plots.append(plot_vista_shim)
plots.append(plot_vista_trans)


Settings

[42]:
# OpenMC simulation parameters

entropy_calc = False
resonance_calc = False
uniform_source = True

batches = 300
inactive = 100
particles = 120000

settings_file = openmc.Settings()
settings_file.batches = batches
settings_file.inactive = inactive
settings_file.particles = particles

# uniform initial source
if uniform_source:
    bounds = [-25, -25, 5, 25, 25, 50]
    uniform_dist = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True)
    settings_file.source = openmc.Source(space=uniform_dist)

if resonance_calc:
    settings_file.resonance_scattering['enable'] = True

if entropy_calc:
    entropy_mesh = openmc.Mesh()
    entropy_mesh.lower_left = (-60, -60, -5)
    entropy_mesh.upper_right = (60, 60, 60)

    entropy_mesh.dimension = (10, 10, 10)
    settings_file.entropy_mesh = entropy_mesh

settings_file.temperature = {'method':'interpolation'}

Tallies

[43]:
# Measuring quantities during simulation
tallies_file = openmc.Tallies()

### Neutron energy flux
energies = np.logspace(np.log10(1e-5), np.log10(20.0e6), 101)
e_filter = openmc.EnergyFilter(energies)

EnergySpectrum = openmc.Tally(name = "Phi(E)")
EnergySpectrum.filters = [e_filter]
EnergySpectrum.scores = ['flux']


### Spatial flux
mesh3D = openmc.RegularMesh()
mesh3D.dimension = (60, 60, 100)
mesh3D.lower_left = (-55, -55, -10)
mesh3D.upper_right = (55, 55, 100)

mesh3D_filter = openmc.MeshFilter(mesh3D)

SpatialFlux = openmc.Tally(name = "Phi(r)")
SpatialFlux.filters = [mesh3D_filter]
SpatialFlux.scores = ['flux']


### Deposited energy (for normalization)
heating = openmc.Tally(name='factor-for-normalization')
heating.scores = ['heating-local']

tallies_file.append(EnergySpectrum)
tallies_file.append(SpatialFlux)
tallies_file.append(heating)

[44]:
# Export to XML
materials_file.export_to_xml()
geometry.export_to_xml()
plots.export_to_xml()
settings_file.export_to_xml()
tallies_file.export_to_xml()

openmc.plot_geometry()
                                %%%%%%%%%%%%%%%
                           %%%%%%%%%%%%%%%%%%%%%%%%
                        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                                    %%%%%%%%%%%%%%%%%%%%%%%%
                                     %%%%%%%%%%%%%%%%%%%%%%%%
                 ###############      %%%%%%%%%%%%%%%%%%%%%%%%
                ##################     %%%%%%%%%%%%%%%%%%%%%%%
                ###################     %%%%%%%%%%%%%%%%%%%%%%%
                ####################     %%%%%%%%%%%%%%%%%%%%%%
                #####################     %%%%%%%%%%%%%%%%%%%%%
                ######################     %%%%%%%%%%%%%%%%%%%%
                #######################     %%%%%%%%%%%%%%%%%%
                 #######################     %%%%%%%%%%%%%%%%%
                 ######################     %%%%%%%%%%%%%%%%%
                  ####################     %%%%%%%%%%%%%%%%%
                    #################     %%%%%%%%%%%%%%%%%
                     ###############     %%%%%%%%%%%%%%%%
                       ############     %%%%%%%%%%%%%%%
                          ########     %%%%%%%%%%%%%%
                                      %%%%%%%%%%%

                 | The OpenMC Monte Carlo Code
       Copyright | 2011-2023 MIT, UChicago Argonne LLC, and contributors
         License | https://docs.openmc.org/en/latest/license.html
         Version | 0.13.3
        Git SHA1 | 50e39a4e20dc9e0f3d7ccf07333f6a5e6c797c8c
       Date/Time | 2023-12-11 09:42:19
  OpenMP Threads | 16

 Reading settings XML file...
 Reading cross sections XML file...
 Reading materials XML file...
 Reading geometry XML file...
 Reading tallies XML file...
 Preparing distributed cell instances...
 Reading plot XML file...

 =======================>     PLOTTING SUMMARY     <========================

Plot ID: 10
Plot file: ./pictures/geometry/view_xy1.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 16.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 11
Plot file: ./pictures/geometry/view_xy2.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 19.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 12
Plot file: ./pictures/geometry/view_xy3.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 23.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 13
Plot file: ./pictures/geometry/view_xy4.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 25.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 14
Plot file: ./pictures/geometry/view_xy5.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 27.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 15
Plot file: ./pictures/geometry/view_xy6.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 30.15
Width:  110  110
Coloring: Materials
Basis: XY
Pixels: 2000 2000

Plot ID: 17
Plot file: ./pictures/geometry/view_reg.png
Universe depth: -1
Plot Type: Slice
Origin: 0 14.9 0
Width:  110  150
Coloring: Materials
Basis: XZ
Pixels: 3000 3000

Plot ID: 16
Plot file: ./pictures/geometry/view_shim.png
Universe depth: -1
Plot Type: Slice
Origin: 0 0 0
Width:  110  230
Coloring: Materials
Basis: XZ
Pixels: 2000 2000

Plot ID: 18
Plot file: ./pictures/geometry/view_trans.png
Universe depth: -1
Plot Type: Slice
Origin: 0 -11.5 0
Width:  110  150
Coloring: Materials
Basis: XZ
Pixels: 2000 2000

 Processing plot 10: ./pictures/geometry/view_xy1.png...
 Processing plot 11: ./pictures/geometry/view_xy2.png...
 Processing plot 12: ./pictures/geometry/view_xy3.png...
 Processing plot 13: ./pictures/geometry/view_xy4.png...
 Processing plot 14: ./pictures/geometry/view_xy5.png...
 Processing plot 15: ./pictures/geometry/view_xy6.png...
 Processing plot 17: ./pictures/geometry/view_reg.png...
 Processing plot 16: ./pictures/geometry/view_shim.png...
 Processing plot 18: ./pictures/geometry/view_trans.png...
[45]:
openmc.run()
                                %%%%%%%%%%%%%%%
                           %%%%%%%%%%%%%%%%%%%%%%%%
                        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                                    %%%%%%%%%%%%%%%%%%%%%%%%
                                     %%%%%%%%%%%%%%%%%%%%%%%%
                 ###############      %%%%%%%%%%%%%%%%%%%%%%%%
                ##################     %%%%%%%%%%%%%%%%%%%%%%%
                ###################     %%%%%%%%%%%%%%%%%%%%%%%
                ####################     %%%%%%%%%%%%%%%%%%%%%%
                #####################     %%%%%%%%%%%%%%%%%%%%%
                ######################     %%%%%%%%%%%%%%%%%%%%
                #######################     %%%%%%%%%%%%%%%%%%
                 #######################     %%%%%%%%%%%%%%%%%
                 ######################     %%%%%%%%%%%%%%%%%
                  ####################     %%%%%%%%%%%%%%%%%
                    #################     %%%%%%%%%%%%%%%%%
                     ###############     %%%%%%%%%%%%%%%%
                       ############     %%%%%%%%%%%%%%%
                          ########     %%%%%%%%%%%%%%
                                      %%%%%%%%%%%

                 | The OpenMC Monte Carlo Code
       Copyright | 2011-2023 MIT, UChicago Argonne LLC, and contributors
         License | https://docs.openmc.org/en/latest/license.html
         Version | 0.13.3
        Git SHA1 | 50e39a4e20dc9e0f3d7ccf07333f6a5e6c797c8c
       Date/Time | 2023-12-11 09:42:23
  OpenMP Threads | 16

 Reading settings XML file...
 Reading cross sections XML file...
 Reading materials XML file...
 Reading geometry XML file...
 Reading H1 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/H1.h5
 Reading O16 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/O16.h5
 Reading U235 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/U235.h5
 Reading U238 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/U238.h5
 Reading Zr90 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Zr90.h5
 Reading Zr91 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Zr91.h5
 Reading Zr92 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Zr92.h5
 Reading Zr94 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Zr94.h5
 Reading Zr96 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Zr96.h5
 Reading C0 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/C0.h5
 Reading Fe54 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Fe54.h5
 Reading Fe56 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Fe56.h5
 Reading Fe57 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Fe57.h5
 Reading Fe58 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Fe58.h5
 Reading Ti46 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ti46.h5
 Reading Ti47 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ti47.h5
 Reading Ti48 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ti48.h5
 Reading Ti49 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ti49.h5
 Reading Ti50 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ti50.h5
 Reading Na23 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Na23.h5
 Reading Mg24 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Mg24.h5
 Reading Mg25 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Mg25.h5
 Reading Mg26 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Mg26.h5
 Reading Cu63 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cu63.h5
 Reading Cu65 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cu65.h5
 Reading Co59 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Co59.h5
 Reading F19 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/F19.h5
 Reading Cl35 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cl35.h5
 Reading Cl37 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cl37.h5
 Reading B11 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/B11.h5
 Reading Al27 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Al27.h5
 Reading Cr50 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cr50.h5
 Reading Cr52 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cr52.h5
 Reading Cr53 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cr53.h5
 Reading Cr54 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Cr54.h5
 Reading Ni58 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ni58.h5
 Reading Ni60 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ni60.h5
 Reading Ni61 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ni61.h5
 Reading Ni62 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ni62.h5
 Reading Ni64 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Ni64.h5
 Reading Si28 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Si28.h5
 Reading Si29 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Si29.h5
 Reading Si30 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Si30.h5
 Reading Sm147 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm147.h5
 Reading Sm148 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm148.h5
 Reading Sm149 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm149.h5
 Reading Sm150 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm150.h5
 Reading Sm152 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm152.h5
 Reading Sm154 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/Sm154.h5
 Reading N14 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/N14.h5
 Reading B10 from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/B10.h5
 Reading c_H_in_H2O from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/c_H_in_H2O.h5
 Reading c_H_in_ZrH from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/c_H_in_ZrH.h5
 Reading c_Graphite from /home/renato/Desktop/xsdata/jeff-3.3-hdf5/c_Graphite.h5
 Minimum neutron data temperature: 294 K
 Maximum neutron data temperature: 600 K
 Reading tallies XML file...
 Preparing distributed cell instances...
 Reading plot XML file...
 Writing summary.h5 file...
 Maximum neutron transport energy: 20000000 eV for H1
 Initializing source particles...

 ====================>     K EIGENVALUE SIMULATION     <====================

  Bat./Gen.      k            Average k
  =========   ========   ====================
        1/1    0.96777
        2/1    0.99735
        3/1    1.01779
        4/1    1.02098
        5/1    1.02791
        6/1    1.02535
        7/1    1.02188
        8/1    1.02741
        9/1    1.02825
       10/1    1.02687
       11/1    1.02747
       12/1    1.02886
       13/1    1.02378
       14/1    1.02980
       15/1    1.02129
       16/1    1.02872
       17/1    1.01724
       18/1    1.02503
       19/1    1.02808
       20/1    1.02649
       21/1    1.02790
       22/1    1.02462
       23/1    1.03007
       24/1    1.02630
       25/1    1.03602
       26/1    1.03232
       27/1    1.03419
       28/1    1.02863
       29/1    1.03608
       30/1    1.03671
       31/1    1.02895
       32/1    1.02679
       33/1    1.02520
       34/1    1.02888
       35/1    1.02115
       36/1    1.02557
       37/1    1.02739
       38/1    1.03153
       39/1    1.03169
       40/1    1.02154
       41/1    1.02864
       42/1    1.01558
       43/1    1.02338
       44/1    1.03512
       45/1    1.02219
       46/1    1.02973
       47/1    1.02542
       48/1    1.02512
       49/1    1.02554
       50/1    1.02434
       51/1    1.02598
       52/1    1.02526
       53/1    1.02726
       54/1    1.03077
       55/1    1.02740
       56/1    1.02722
       57/1    1.02044
       58/1    1.02819
       59/1    1.02586
       60/1    1.02692
       61/1    1.02717
       62/1    1.02398
       63/1    1.03785
       64/1    1.02292
       65/1    1.03237
       66/1    1.02918
       67/1    1.02670
       68/1    1.02403
       69/1    1.02853
       70/1    1.03072
       71/1    1.02784
       72/1    1.02805
       73/1    1.02934
       74/1    1.02622
       75/1    1.02831
       76/1    1.02457
       77/1    1.02691
       78/1    1.02340
       79/1    1.02778
       80/1    1.03008
       81/1    1.02228
       82/1    1.02696
       83/1    1.03082
       84/1    1.02785
       85/1    1.02401
       86/1    1.02613
       87/1    1.02884
       88/1    1.02725
       89/1    1.02918
       90/1    1.03261
       91/1    1.02530
       92/1    1.02692
       93/1    1.02298
       94/1    1.03199
       95/1    1.03596
       96/1    1.02777
       97/1    1.02984
       98/1    1.02997
       99/1    1.03250
      100/1    1.02953
      101/1    1.02610
      102/1    1.03681    1.03145 +/- 0.00535
      103/1    1.03117    1.03136 +/- 0.00309
      104/1    1.02337    1.02936 +/- 0.00296
      105/1    1.02411    1.02831 +/- 0.00252
      106/1    1.02606    1.02793 +/- 0.00209
      107/1    1.03160    1.02846 +/- 0.00185
      108/1    1.02655    1.02822 +/- 0.00162
      109/1    1.02276    1.02761 +/- 0.00155
      110/1    1.03534    1.02839 +/- 0.00159
      111/1    1.02676    1.02824 +/- 0.00144
      112/1    1.02659    1.02810 +/- 0.00132
      113/1    1.02883    1.02816 +/- 0.00122
      114/1    1.02528    1.02795 +/- 0.00115
      115/1    1.02763    1.02793 +/- 0.00107
      116/1    1.03310    1.02825 +/- 0.00105
      117/1    1.03003    1.02836 +/- 0.00099
      118/1    1.02453    1.02814 +/- 0.00096
      119/1    1.03310    1.02841 +/- 0.00094
      120/1    1.02153    1.02806 +/- 0.00096
      121/1    1.02131    1.02774 +/- 0.00097
      122/1    1.02138    1.02745 +/- 0.00097
      123/1    1.02062    1.02715 +/- 0.00097
      124/1    1.03122    1.02732 +/- 0.00094
      125/1    1.02475    1.02722 +/- 0.00091
      126/1    1.02481    1.02713 +/- 0.00088
      127/1    1.03239    1.02732 +/- 0.00087
      128/1    1.02615    1.02728 +/- 0.00084
      129/1    1.02679    1.02726 +/- 0.00081
      130/1    1.02996    1.02735 +/- 0.00079
      131/1    1.02592    1.02731 +/- 0.00076
      132/1    1.02891    1.02736 +/- 0.00074
      133/1    1.02751    1.02736 +/- 0.00072
      134/1    1.02770    1.02737 +/- 0.00070
      135/1    1.02672    1.02735 +/- 0.00068
      136/1    1.02679    1.02734 +/- 0.00066
      137/1    1.03125    1.02744 +/- 0.00065
      138/1    1.02852    1.02747 +/- 0.00063
      139/1    1.01927    1.02726 +/- 0.00065
      140/1    1.03625    1.02749 +/- 0.00067
      141/1    1.02551    1.02744 +/- 0.00066
      142/1    1.02082    1.02728 +/- 0.00066
      143/1    1.02432    1.02721 +/- 0.00065
      144/1    1.02108    1.02707 +/- 0.00065
      145/1    1.03263    1.02720 +/- 0.00065
      146/1    1.02775    1.02721 +/- 0.00063
      147/1    1.03407    1.02735 +/- 0.00064
      148/1    1.02499    1.02730 +/- 0.00062
      149/1    1.02544    1.02727 +/- 0.00061
      150/1    1.02688    1.02726 +/- 0.00060
      151/1    1.02076    1.02713 +/- 0.00060
      152/1    1.02576    1.02711 +/- 0.00059
      153/1    1.01730    1.02692 +/- 0.00061
      154/1    1.03201    1.02701 +/- 0.00060
      155/1    1.02645    1.02700 +/- 0.00059
      156/1    1.03299    1.02711 +/- 0.00059
      157/1    1.02905    1.02714 +/- 0.00058
      158/1    1.02989    1.02719 +/- 0.00057
      159/1    1.03029    1.02724 +/- 0.00057
      160/1    1.02166    1.02715 +/- 0.00057
      161/1    1.02767    1.02716 +/- 0.00056
      162/1    1.02701    1.02716 +/- 0.00055
      163/1    1.03071    1.02721 +/- 0.00054
      164/1    1.03338    1.02731 +/- 0.00054
      165/1    1.03491    1.02743 +/- 0.00055
      166/1    1.02669    1.02742 +/- 0.00054
      167/1    1.02803    1.02743 +/- 0.00053
      168/1    1.02544    1.02740 +/- 0.00052
      169/1    1.02533    1.02737 +/- 0.00052
      170/1    1.02373    1.02731 +/- 0.00051
      171/1    1.02804    1.02732 +/- 0.00050
      172/1    1.01677    1.02718 +/- 0.00052
      173/1    1.03065    1.02723 +/- 0.00051
      174/1    1.02981    1.02726 +/- 0.00051
      175/1    1.03072    1.02731 +/- 0.00050
      176/1    1.02618    1.02729 +/- 0.00050
      177/1    1.03149    1.02735 +/- 0.00049
      178/1    1.02972    1.02738 +/- 0.00049
      179/1    1.02105    1.02730 +/- 0.00049
      180/1    1.02514    1.02727 +/- 0.00048
      181/1    1.03802    1.02740 +/- 0.00049
      182/1    1.02964    1.02743 +/- 0.00049
      183/1    1.02638    1.02742 +/- 0.00048
      184/1    1.02662    1.02741 +/- 0.00048
      185/1    1.02524    1.02738 +/- 0.00047
      186/1    1.02059    1.02730 +/- 0.00047
      187/1    1.02898    1.02732 +/- 0.00047
      188/1    1.02537    1.02730 +/- 0.00046
      189/1    1.02540    1.02728 +/- 0.00046
      190/1    1.02328    1.02723 +/- 0.00046
      191/1    1.02232    1.02718 +/- 0.00045
      192/1    1.03147    1.02723 +/- 0.00045
      193/1    1.02436    1.02720 +/- 0.00045
      194/1    1.02453    1.02717 +/- 0.00044
      195/1    1.02902    1.02719 +/- 0.00044
      196/1    1.02302    1.02714 +/- 0.00044
      197/1    1.02436    1.02712 +/- 0.00043
      198/1    1.02165    1.02706 +/- 0.00043
      199/1    1.02619    1.02705 +/- 0.00043
      200/1    1.02406    1.02702 +/- 0.00043
      201/1    1.02100    1.02696 +/- 0.00043
      202/1    1.02359    1.02693 +/- 0.00042
      203/1    1.02760    1.02693 +/- 0.00042
      204/1    1.02722    1.02694 +/- 0.00041
      205/1    1.03250    1.02699 +/- 0.00041
      206/1    1.02241    1.02695 +/- 0.00041
      207/1    1.02682    1.02695 +/- 0.00041
      208/1    1.03065    1.02698 +/- 0.00041
      209/1    1.02462    1.02696 +/- 0.00040
      210/1    1.02561    1.02695 +/- 0.00040
      211/1    1.02837    1.02696 +/- 0.00040
      212/1    1.02689    1.02696 +/- 0.00039
      213/1    1.03487    1.02703 +/- 0.00040
      214/1    1.02529    1.02701 +/- 0.00039
      215/1    1.02410    1.02699 +/- 0.00039
      216/1    1.02708    1.02699 +/- 0.00039
      217/1    1.02235    1.02695 +/- 0.00038
      218/1    1.02515    1.02693 +/- 0.00038
      219/1    1.02664    1.02693 +/- 0.00038
      220/1    1.02326    1.02690 +/- 0.00038
      221/1    1.02513    1.02689 +/- 0.00037
      222/1    1.02468    1.02687 +/- 0.00037
      223/1    1.02577    1.02686 +/- 0.00037
      224/1    1.03120    1.02689 +/- 0.00037
      225/1    1.01948    1.02683 +/- 0.00037
      226/1    1.03144    1.02687 +/- 0.00037
      227/1    1.02476    1.02685 +/- 0.00037
      228/1    1.02805    1.02686 +/- 0.00036
      229/1    1.02893    1.02688 +/- 0.00036
      230/1    1.02462    1.02686 +/- 0.00036
      231/1    1.02394    1.02684 +/- 0.00036
      232/1    1.02065    1.02679 +/- 0.00036
      233/1    1.02684    1.02679 +/- 0.00035
      234/1    1.02661    1.02679 +/- 0.00035
      235/1    1.03140    1.02683 +/- 0.00035
      236/1    1.02658    1.02682 +/- 0.00035
      237/1    1.02044    1.02678 +/- 0.00035
      238/1    1.02493    1.02676 +/- 0.00035
      239/1    1.02685    1.02677 +/- 0.00034
      240/1    1.02868    1.02678 +/- 0.00034
      241/1    1.02988    1.02680 +/- 0.00034
      242/1    1.01644    1.02673 +/- 0.00034
      243/1    1.02573    1.02672 +/- 0.00034
      244/1    1.02592    1.02672 +/- 0.00034
      245/1    1.03339    1.02676 +/- 0.00034
      246/1    1.02469    1.02675 +/- 0.00034
      247/1    1.02459    1.02673 +/- 0.00034
      248/1    1.02925    1.02675 +/- 0.00033
      249/1    1.02403    1.02673 +/- 0.00033
      250/1    1.03013    1.02675 +/- 0.00033
      251/1    1.02203    1.02672 +/- 0.00033
      252/1    1.02794    1.02673 +/- 0.00033
      253/1    1.02799    1.02674 +/- 0.00033
      254/1    1.02791    1.02675 +/- 0.00032
      255/1    1.03370    1.02679 +/- 0.00033
      256/1    1.01831    1.02674 +/- 0.00033
      257/1    1.03075    1.02676 +/- 0.00033
      258/1    1.02733    1.02677 +/- 0.00032
      259/1    1.02347    1.02675 +/- 0.00032
      260/1    1.02169    1.02671 +/- 0.00032
      261/1    1.02858    1.02673 +/- 0.00032
      262/1    1.02725    1.02673 +/- 0.00032
      263/1    1.02762    1.02673 +/- 0.00032
      264/1    1.02390    1.02672 +/- 0.00032
      265/1    1.02794    1.02672 +/- 0.00031
      266/1    1.01782    1.02667 +/- 0.00032
      267/1    1.02576    1.02667 +/- 0.00031
      268/1    1.02614    1.02666 +/- 0.00031
      269/1    1.02912    1.02668 +/- 0.00031
      270/1    1.02348    1.02666 +/- 0.00031
      271/1    1.02954    1.02667 +/- 0.00031
      272/1    1.02743    1.02668 +/- 0.00031
      273/1    1.02227    1.02665 +/- 0.00031
      274/1    1.02673    1.02665 +/- 0.00030
      275/1    1.02707    1.02666 +/- 0.00030
      276/1    1.02359    1.02664 +/- 0.00030
      277/1    1.02918    1.02665 +/- 0.00030
      278/1    1.03028    1.02667 +/- 0.00030
      279/1    1.03577    1.02672 +/- 0.00030
      280/1    1.03646    1.02678 +/- 0.00031
      281/1    1.03296    1.02681 +/- 0.00031
      282/1    1.02302    1.02679 +/- 0.00030
      283/1    1.02979    1.02681 +/- 0.00030
      284/1    1.03217    1.02684 +/- 0.00030
      285/1    1.02901    1.02685 +/- 0.00030
      286/1    1.02483    1.02684 +/- 0.00030
      287/1    1.02961    1.02685 +/- 0.00030
      288/1    1.02835    1.02686 +/- 0.00030
      289/1    1.02680    1.02686 +/- 0.00030
      290/1    1.02673    1.02686 +/- 0.00029
      291/1    1.01969    1.02682 +/- 0.00029
      292/1    1.02122    1.02679 +/- 0.00029
      293/1    1.02975    1.02681 +/- 0.00029
      294/1    1.02754    1.02681 +/- 0.00029
      295/1    1.02851    1.02682 +/- 0.00029
      296/1    1.02779    1.02683 +/- 0.00029
      297/1    1.02658    1.02682 +/- 0.00029
      298/1    1.02947    1.02684 +/- 0.00029
      299/1    1.02843    1.02685 +/- 0.00029
      300/1    1.02923    1.02686 +/- 0.00028
 Creating state point statepoint.300.h5...

 =======================>     TIMING STATISTICS     <=======================

 Total time for initialization     = 5.4904e+00 seconds
   Reading cross sections          = 5.3396e+00 seconds
 Total time in simulation          = 5.7751e+02 seconds
   Time in transport only          = 5.6785e+02 seconds
   Time in inactive batches        = 1.3790e+02 seconds
   Time in active batches          = 4.3961e+02 seconds
   Time synchronizing fission bank = 7.4705e+00 seconds
     Sampling source sites         = 7.0682e+00 seconds
     SEND/RECV source sites        = 4.0202e-01 seconds
   Time accumulating tallies       = 4.4668e-01 seconds
   Time writing statepoints        = 2.9013e-02 seconds
 Total time for finalization       = 4.7723e-01 seconds
 Total time elapsed                = 5.8362e+02 seconds
 Calculation Rate (inactive)       = 87020.5 particles/second
 Calculation Rate (active)         = 54593.9 particles/second

 ============================>     RESULTS     <============================

 k-effective (Collision)     = 1.02699 +/- 0.00028
 k-effective (Track-length)  = 1.02686 +/- 0.00028
 k-effective (Absorption)    = 1.02758 +/- 0.00024
 Combined k-effective        = 1.02733 +/- 0.00021
 Leakage Fraction            = 0.10106 +/- 0.00006

[46]:
os.system("mv statepoint.300.h5 ./h5_files/" + str(z0_reg-offset)+"_"+ str(z0_shim-offset) + "_" + str(z0_trans-offset)+".h5")
[46]:
0