Hello,
I have a reactor model that is edited from the VHTR example model available on GitHub.
When increasing the TRISO particle packing factor above 0.30, I run into a warning:
“UserWarning: TRISO particle is partially or completely outside of the lattice.”
It seems to me that the issue is from the sphere packing algorithm placing a coordinate outside of the accepted lattice region.
I have attached the section of code responsible for this below. Any help is appreciated.
kernelsph = openmc.Sphere(r=250e-4) # try 212.5um and 250um
buffsph = openmc.Sphere(r=350e-4)
IPyCsph = openmc.Sphere(r=390e-4)
SiCsph = openmc.Sphere(r=425e-4)
OPyCsph = openmc.Sphere(r=470e-4)
triso_outer_radius = 470e-4
layers = [kernelsph, buffsph, IPyCsph, SiCsph, OPyCsph]
triso_mats = [fuel, buffer_mat, IPyC, SiC, OPyC]
triso_cells =
for i in range(5):
if (i == 0):
triso_cells.append(openmc.Cell(fill=triso_mats[0], region=-layers[0]))
else:
triso_cells.append(openmc.Cell(fill=triso_mats[i], region=+layers[i-1] & -layers[i]))
triso_universe = openmc.Universe(universe_id=1001,cells=triso_cells)
cylsurf = openmc.ZCylinder(r=r_pellet)
maxz_pin = openmc.ZPlane(z0=+pellet_height/2)
minz_pin = openmc.ZPlane(z0=-pellet_height/2)
maxz = openmc.ZPlane(z0=+core_height/2)
minz = openmc.ZPlane(z0=-core_height/2)
maxz_refl = openmc.ZPlane(z0= core_height/2+top_refl_height, boundary_type=‘vacuum’)
minz_refl = openmc.ZPlane(z0=-core_height/2-bot_refl_height, boundary_type=‘vacuum’)
lattice_region = -cylsurf & -maxz_pin & +minz_pin
spheres = openmc.model.pack_spheres(radius=triso_outer_radius, region=lattice_region, pf=0.35)
triso_particles = [openmc.model.TRISO(triso_outer_radius, fill=triso_universe, center=c) for c in spheres]
lattice_cell = openmc.Cell(region=lattice_region)
lower_left, upp_right = lattice_cell.region.bounding_box
shape = (4, 4, 4)
pitch = (upp_right - lower_left)/shape
triso_latt = openmc.model.create_triso_lattice(triso_particles, lower_left, pitch, shape, graphite)
lattice_cell.fill = triso_latt
lattice_cell_outer=openmc.Cell(region=~lattice_region,fill=graphite)
lattice_universe = openmc.Universe(universe_id=1002,cells=[lattice_cell,lattice_cell_outer])