Skip to content

Explicit Void Regions in Kinetic Random Ray #3723

@yardasol

Description

@yardasol

Description

Explicit void regions should be supported in kinetic Random Ray solver (#3702). I have derived the necessary equations for the isotropic approach:
Image
and for the propagation approach:
Image
and
Image
where
Image

The region averaged scalar flux is computed as
Image

Difficulties

An inverse-velocity multi-group cross section is needed for kinetic Random Ray in void regions. This quantity can be obtained for using a CellFilter, but the current Random Ray automagic setup machinery relies on MaterialFilter objects to create an MGXS library. The simplest method I could come up with around this would be to

  1. Determine if kinetic XS are needed
  2. Determine what void cells (if any) exist in the model
  3. Tack on an inverse-velocity tally with a CellFilter and EnergyFilter
  4. Manually add the inverse velocity values to the MGXS library under a specially named material called VOID_MATERIAL or something similar.
  5. Add processing infrastructure to the C++ side to detect this material name and utilize the void region machinery on that material.

Alternatives

An alternative approach would be to add an attribute to material classes on the C++ and Python side to indicate they are void materials, however this is a more complicated approach.

Compatibility

This feature shouldn't change any existing APIs. The VOID_MATERIAL added to the MGXS will only be utilized in the Random Ray solver. It's a bit of a hacky solution, and I'd love something more robust. If anyone has any input I'd appreciate the feedback!

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions