- cell_idsList of OpenMC cell IDs whose filled universes will be transformed.
C++ Type:std::vector<int>
Controllable:No
Description:List of OpenMC cell IDs whose filled universes will be transformed.
- maximumMaximum for values to search over; the root must occur at a value smaller than the maximum
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Maximum for values to search over; the root must occur at a value smaller than the maximum
- minimumMinimum for values to search over; the root must occur at a value greater than the minimum
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Minimum for values to search over; the root must occur at a value greater than the minimum
- rotation_axisAxis about which to rotate the cell's fill.
C++ Type:MooseEnum
Controllable:No
Description:Axis about which to rotate the cell's fill.
RotationSearch
Description
RotationSearch is a CriticalitySearch that targets a specified -eigenvalue by updating an openmc.Cell.rotation, which can be applied to one or more cells in the OpenMC model. The RotationSearch class inherits from OpenMCCellTransformBase, which handles all modifications to the cells involved in a search.
The cells specified in the search must be filled with a universe. All cells included in the search will have the same rotation applied.
Only axis aligned searches are allowed, so the user needs to specify which rotation axis ( x, y, or z) will be modified via the "rotation_axis" parameter when searching for a critical configuration. The main reason for this restriction is that it is very easy to create an OpenMC model with voids prone to lost particles by modifying multiple rotation angles at once. If your model desires to rotate around a non-principal axis or rotate around multiple axes, it is advised to instead build a version in a different reference frame that searches by rotating along one of the three available axes.
Example Input File Syntax
Here is a valid RotationSearch which shows the corresponding CriticalitySearch block used to define the search which will happen on each iteration.
[Problem<<<{"href": "../../syntax/Problem/index.html"}>>>]
type = OpenMCCellAverageProblem
[CriticalitySearch<<<{"href": "../../syntax/Problem/CriticalitySearch/index.html"}>>>]
type = RotationSearch
cell_ids = '5'
rotation_axis = 'z'
minimum = '0.0'
maximum = '90.0'
tolerance = 1e-2
[]
[](test/tests/criticality/rotation/openmc.i)Input Parameters
- estimatorcombinedType of eigenvalue estimator to use
Default:combined
C++ Type:MooseEnum
Controllable:No
Description:Type of eigenvalue estimator to use
- target1Target value of k effective to search for
Default:1
C++ Type:double
Unit:(no unit assumed)
Range:target > 0.0
Controllable:No
Description:Target value of k effective to search for
- tolerance0.001Absolute tolerance to converge multiplication factor; be aware that if too few particles are used, statistical noise may require many criticality calculations to converge.
Default:0.001
C++ Type:double
Unit:(no unit assumed)
Range:tolerance > 0
Controllable:No
Description:Absolute tolerance to converge multiplication factor; be aware that if too few particles are used, statistical noise may require many criticality calculations to converge.
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Controllable:No
Description:Set the enabled status of the MooseObject.