About cylindrical mesh using in multi cylindrical-fuel pins

If you wanted to have a cylindrical mesh in multiple fuel pins, you would need to define a separate mesh for each fuel pin. There is no way to have a single cylindrical mesh cover multiple fuel pins.

Alternatively, the MeshFilter class allows you to arbitrarily translate the mesh being used, so if your goal is to just tally over multiple fuel pins with the same cylindrical mesh, you could do that with a single CylindricalMesh and multiple MeshFilters. This would look like:

mesh = openmc.CylindricalMesh()
...

filter_pin1 = openmc.MeshFilter(mesh)
filter_pin2 = openmc.MeshFilter(mesh)
filter_pin2.translation = (pitch, 0, 0)
filter_pin3 = openmc.MeshFilter(mesh)
filter_pin3.translation = (0, pitch, 0)
filter_pin4 = openmc.MeshFilter(mesh)
filter_pin4.translation = (pitch, pitch, 0)

# Create four tallies, each with a different filter from above
...