Page 1 of 1

### Hexagonal Boundary Conditions

Posted: Tue Feb 21, 2012 9:12 pm
I've been browsing through the forum and the user manual and noticed that reflective boundary conditions do not exist for hexagons. I remember seeing something where you mentioned that treating hexagons as reflective is unphysical. The problem I have is that I'm dealing with a fuel assembly that is 180 degree symmetric and not 30 degree symmetric. Since periodic is the only option available for hexagon, this can cause serious problems when I try and do an assembly level calculation. For example, the assembly I'm looking at has control rods on two adjacent faces. When normally treated with reflective boundary conditions, this assembly will only see rods on those two faces. However, with periodic boundary conditions, my hexagon will now see rods on four of its faces instead of two.

Are there any plans to implement a reflective boundary condition for hexagons or to assign arbitrary surfaces boundary conditions? If a picture would be beneficial to help explain my problem, I can provide one.

Thanks,
Andrew

### Re: Hexagonal Boundary Conditions

Posted: Wed Feb 22, 2012 1:27 am
What I mean by "unphysical" is that if you have an assymmetry in a hexgonal cell, and you reflect it over three surfaces in such way that you end up in the original cell, the position of the asymmetry has been changed. At least this is my intuition, there may be some cases with additional symmetry (such as your case) when the reflection actually works.

Could you provide the illustration?

### Re: Hexagonal Boundary Conditions

Posted: Wed Feb 22, 2012 9:13 pm
I've attached a picture of three assemblies with the y-shaped control rod. Ignore the random stray lines exiting the assemblies, I had to cut and paste this image together.

From the image you can see that the assembly is 180 degrees symmetric about the y-axis (looking at the bottom assembly for example purposes) and at the top there are 2 control rod blades (the black bars). The different color circles represent different fuel enrichment types. The problem with periodic boundary conditions for this type of assembly is that the control rods are normally seen at the top two faces only , but since the boundaries aren't reflected, it also sees the control rods on the bottom two faces. This will obviously throw the answer way off since there will be more absorber present.

I don't disagree that using reflective boundary conditions for a hexagonal cell might modify the position of the asymmetry. In fact I know that using reflective will not give the exact assembly orientation as seen in the core and therefore is "unphysical". However, by using reflective, my assembly won't see the extra absorber. This should allow me to do a better comparison with Helios where we're using reflective boundary conditions at the lattice level.

Thanks,
-Andrew

### Re: Hexagonal Boundary Conditions

Posted: Thu Feb 23, 2012 3:26 pm
OK, I see the symmetry now... I'll see if there is some simple way to extend reflective boundary conditions to hexagonal surfaces (there probably is), but it will probably take me until next week to do that.

Meanwhile, I'm pretty sure you can have the same effect by constructing the geometry from multiple assemblies, and using periodic boundary around them

### Re: Hexagonal Boundary Conditions

Posted: Thu Feb 23, 2012 3:34 pm
On second thought... What happens if you reflect the bottom assembly over the left or the right boundary surface? Doesn't that break the symmetry? Do you actually need reflections on some surfaces and periodic condition on others?

### Re: Hexagonal Boundary Conditions

Posted: Sat Feb 25, 2012 12:38 am
Right now I'm trying to run a case with 3 hexagons in the middle enclosed by a larger hexagon to meet the boundary condition requirements (very similar to the picture I showed). Theoretically it should show better results compared to the single hexagon. I'm still modifying the geometry for that case.

With regards to the symmetry, it will be broken if you try and reflect it. Unfortunately when it comes to modeling at the lattice level, I haven't seen anything that can properly handle this kind of geometry. Periodic isn't right, and reflective doesn't quite get there but it's better than periodic. It's possible that some sort of hybrid periodic/reflective might handle it, but that's not something I've thought about. Plus, that seems like it would be a nightmare to get right.

Let me know if you have any luck with the single hexagon reflective boundary conditions. Thanks again for the help.

-Andrew

### Re: Hexagonal Boundary Conditions

Posted: Sat Feb 25, 2012 8:34 am
I made some simple changes in the routine that handles boundary conditions, and this is what I get. As you see, there is some reflectional symmetry, but it doesn't work on every boundary suface.

### Re: Hexagonal Boundary Conditions

Posted: Tue Mar 06, 2012 9:36 pm
Thanks for looking into this Jaakko.

For the update to Serpent2 (2.1.3), I see that you didn't include the reflective bc for hexagons, or at least it wasn't included in the versions.txt. If it isn't too much trouble and is a simple modification, is it possible that you could tell me the necessary changes so that I can modify my version to do a comparison? I'd like to see if the reflective treatment can provide similar results to Helios.

I also have a quick question that mainly deals with what looks like changes from Serpent1 to Serpent2. I've been working with Bryan Herman and his SerpentXS script and it looks like you no longer print 3 variables in the output (BETA_EFF, DECAY_CONSTANT, and P1_TRANSPXS). Do you plan to include these variables in the future?

Thanks,
Andrew

### Re: Hexagonal Boundary Conditions

Posted: Fri Mar 09, 2012 5:57 pm
I made some changes to get the plotter working in order to visualize the problem, but I think the routine needs a few more modifications to get the reflections working in the tracking routine as well. There is an if-statement on line 456 of boundaryconditions.c, followed by some code. To get the transport routine working you need to replace that part with:

Code: Select all

``````if ((j  % 2) && (bc2 == BC_REFLECTIVE))
{
x1 = *x;
y1 = *y;

*x = x1*COS60 - y1*SIN60;
*y = -x1*SIN60 - y1*COS60;

x1 = *u;
y1 = *v;

*u = x1*COS60 - y1*SIN60;
*v = -x1*SIN60 - y1*COS60;
}
``````
This should do the trick for the hexxc-type boundary. My guess is that you will end with major differences compared to HELIOS, because the coordinate transformation done by Serpent does not correspond to actual reflection in this case.

Delayed neutron parameters and P1 cross sections will be added later.

### Re: Hexagonal Boundary Conditions

Posted: Mon Mar 12, 2012 8:13 pm
Thanks Jaakko!

I'll give that a try and see what the results look like.

Andrew