Axisymmetric Problems

Hi all!

I have been using OpenMC for a variety of (usually fixed source) neutron transport problems that can often be simplified down to something with rotational symmetry. Recently I’ve encountered shielding calculations where neutron flux can be reduced by 6 orders of magnitudes or more by neutron reflectors instead of absorbers, so simple survival biasing does not produce great performance improvements. As I’m not aware of any previous problems to adapt OpenMC for 2D axisymmetric problems, I’ve been thinking of improving the statistics on my mesh tallies by aggregating all cells with the same radius to the axis-of-symmetry.

I’d first like to make sure I’ve not missed any previous effort of trying to do this in the past, please point out anything related to this if you know of any!

To be clear, I don’t mean moving fully to 2D transport, but implementing a cylindrical mesh and an aggregate score to average across cells in the phi direction in the Python post-processing code. I plan to start implementing something for my specific problem here using rectilinear and regular meshes soon if there is no obvious existing solution.


  • Mason

Hi @Mason_Yu. I’m not aware of any previous effort to do something like what you’re describing. If you do end up implementing a cylindrical mesh, that would certainly be a valuable contribution to the codebase that others might find useful. Let us know if you have specific questions along the way!

Hi all, I’m checking in to see if there have been any developments on this front. A cylindrical mesh would be very useful for me as well. Thanks!

No, unfortunately there hasn’t been any development on this front that I’m aware of. @kevinm387 is this something you’d be interested in implementing yourself?

@paulromano I probably lack the knowledge and free time to be of much help, but I could give it a shot. Do you have any advice/thoughts on starting points?

Cylindrical and spherical meshes were actually implemented recently by @ojs in pull request #1931. It’s still under review but should be merged soon and will be available in the next version of OpenMC.