How can I make a 1D z-axis Rectlattice?

I’m currently trying to create a Rectlattice of vertically stacked grooved fuel plates for a grooved ring fuel element using the following code:

collat = openmc.RectLattice()
collat.lower_left = (0, 0, -height+h+tplate)
collat.pitch = (100, 100, h+tplate)
collat.universes = [[[groovedRing]]]*rings
fuelColumnRegion = -reactorTop & +reactorBot & -fuelCylOuter & +fuelCylInner
collat.outer = openmc.Universe(cells=[openmc.Cell(fill=None)])
fuelColumn = openmc.Cell(fill=collat, region=fuelColumnRegion)

groovedRing is a universe containing the cells composing the grooved ring with its origin in the centre of the top surface. The problem with this current code is that it appears to produce nothing, as in when I plot a slice of a universe containing fuelColumn I only see void. I was unable to set the x and y grid pitch to 0, so I set them to 100 so they would be outside of fuelColumnRegion, which only has an outer diameter of 5 and an inner diameter of 1.2.

I think the problem lies in how I’m filling the lattice with collat.universes = [[[groovedRing]]]*rings, but having looked at the documentation: usersguide/geometry/rectangular-lattices, I can’t think of another way to fill only the z axis above bottom_left.

How you’re defining the universes looks correct. However, you should be aware that changing the pitch in the x and y directions does affect the placement of the filling universe. Namely, in this case, the center of the filling universe will be in the middle of the lattice cell, so (50, 50, z). You can make the lattice cell arbitrarily large in the x- and y- directions, but you may need to adjust the lower-left coordinates to get it to show up in the right place.