UncollidedFluxRayStudy

buildconstruction:Undocumented Class

The UncollidedFluxRayStudy has not been documented. The content listed below should be used as a starting point for documenting the class, which includes the typical automatic documentation associated with a MooseObject; however, what is contained is ultimately determined by what is necessary to make the documentation clear for users.

A ray tracing study which generates rays from point, surface, and volume sources for computing the uncollided flux moments of the angular flux.

Overview

Example Input File Syntax

Input Parameters

  • num_groupsThe number of spectral energy groups that this study is computing the uncollided flux for.

    C++ Type:unsigned int

    Controllable:No

    Description:The number of spectral energy groups that this study is computing the uncollided flux for.

Required Parameters

  • allow_other_flags_with_prekernelsFalseWhether or not to allow the list of execution flags to have PRE_KERNELS mixed with other flags. If this parameter is not set then if PRE_KERNELS is provided it must be the only execution flag.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to allow the list of execution flags to have PRE_KERNELS mixed with other flags. If this parameter is not set then if PRE_KERNELS is provided it must be the only execution flag.

  • boundary_source_anisotropyThe degree of anisotropy of the boundary source moments. The exterior vector must correspond with the surface source boundary conditions provided in 'source_boundaries'.

    C++ Type:std::vector<unsigned int>

    Controllable:No

    Description:The degree of anisotropy of the boundary source moments. The exterior vector must correspond with the surface source boundary conditions provided in 'source_boundaries'.

  • boundary_source_momentsA double vector containing the external source moments for all boundaries. The exterior vector must correspond with the surface source boundary conditions provided in 'source_boundaries'.

    C++ Type:std::vector<std::vector<double>>

    Unit:(no unit assumed)

    Controllable:No

    Description:A double vector containing the external source moments for all boundaries. The exterior vector must correspond with the surface source boundary conditions provided in 'source_boundaries'.

  • face_orderCONSTANTThe face quadrature rule order.

    Default:CONSTANT

    C++ Type:MooseEnum

    Options:CONSTANT, FIRST, SECOND, THIRD, FOURTH, FIFTH, SIXTH, SEVENTH, EIGHTH, NINTH, TENTH, ELEVENTH, TWELFTH, THIRTEENTH, FOURTEENTH, FIFTEENTH, SIXTEENTH, SEVENTEENTH, EIGHTTEENTH, NINTEENTH, TWENTIETH

    Controllable:No

    Description:The face quadrature rule order.

  • face_typeGAUSSThe face quadrature type.

    Default:GAUSS

    C++ Type:MooseEnum

    Options:GAUSS, GRID

    Controllable:No

    Description:The face quadrature type.

  • n_azimuthal30Number of Chebyshev azimuthal quadrature points in a single octant of the unit sphere. Defaults to 30.

    Default:30

    C++ Type:unsigned int

    Controllable:No

    Description:Number of Chebyshev azimuthal quadrature points in a single octant of the unit sphere. Defaults to 30.

  • n_polar30Number of Legendre polar quadrature points in a single octant of the unit sphere. Defaults to 30.

    Default:30

    C++ Type:unsigned int

    Controllable:No

    Description:Number of Legendre polar quadrature points in a single octant of the unit sphere. Defaults to 30.

  • point_source_anisotropiesThe anisotropies of the point sources. The vector should correspond with the order of 'point_source_locations'

    C++ Type:std::vector<unsigned int>

    Controllable:No

    Description:The anisotropies of the point sources. The vector should correspond with the order of 'point_source_locations'

  • point_source_locationsThe locations of all point sources in the problem space.

    C++ Type:std::vector<libMesh::Point>

    Controllable:No

    Description:The locations of all point sources in the problem space.

  • point_source_momentsA double vector containing a list of external source moments for all point particle sources. The external vector should correspond with the order of 'point_source_locations'.

    C++ Type:std::vector<std::vector<double>>

    Unit:(no unit assumed)

    Controllable:No

    Description:A double vector containing a list of external source moments for all point particle sources. The external vector should correspond with the order of 'point_source_locations'.

  • ray_distance1.79769e+308The maximum distance all Rays can travel

    Default:1.79769e+308

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The maximum distance all Rays can travel

  • source_and_weights_namesource_and_weightsThe name of the ray data which houses the source intensity and spatial weights, pre-multiplied.

    Default:source_and_weights

    C++ Type:std::string

    Controllable:No

    Description:The name of the ray data which houses the source intensity and spatial weights, pre-multiplied.

  • source_boundariesThe boundaries to apply incoming flux boundary conditions.

    C++ Type:std::vector<BoundaryName>

    Controllable:No

    Description:The boundaries to apply incoming flux boundary conditions.

  • tolerate_failureFalseWhether or not to tolerate a ray tracing failure

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to tolerate a ray tracing failure

  • use_internal_sidesetsFalseWhether or not to use internal sidesets for RayBCs in ray tracing

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to use internal sidesets for RayBCs in ray tracing

  • volume_orderCONSTANTThe volume quadrature rule order. For simplicity the same quadrature order is used for volumetric sources and target elements.

    Default:CONSTANT

    C++ Type:MooseEnum

    Options:CONSTANT, FIRST, SECOND, THIRD, FOURTH, FIFTH, SIXTH, SEVENTH, EIGHTH, NINTH, TENTH, ELEVENTH, TWELFTH, THIRTEENTH, FOURTEENTH, FIFTEENTH, SIXTEENTH, SEVENTEENTH, EIGHTTEENTH, NINTEENTH, TWENTIETH

    Controllable:No

    Description:The volume quadrature rule order. For simplicity the same quadrature order is used for volumetric sources and target elements.

  • volume_typeGAUSSThe volume quadrature type. For simplicity the same quadrature type is used for both volumetric sources and target elements.

    Default:GAUSS

    C++ Type:MooseEnum

    Options:GAUSS, GRID

    Controllable:No

    Description:The volume quadrature type. For simplicity the same quadrature type is used for both volumetric sources and target elements.

  • volumetric_source_anisotropiesThe anisotropies of the volumetric sources. The vector should correspond with the order of 'volumetric_source_blocks'

    C++ Type:std::vector<unsigned int>

    Controllable:No

    Description:The anisotropies of the volumetric sources. The vector should correspond with the order of 'volumetric_source_blocks'

  • volumetric_source_blocksThe list of blocks (ids or names) that host a volumetric source.

    C++ Type:std::vector<SubdomainName>

    Controllable:No

    Description:The list of blocks (ids or names) that host a volumetric source.

  • volumetric_source_momentsA double vector containing a list of external source moments for all volumetric particle sources. The external vector should correspond with the order of 'volumetric_source_blocks'.

    C++ Type:std::vector<std::vector<double>>

    Unit:(no unit assumed)

    Controllable:No

    Description:A double vector containing a list of external source moments for all volumetric particle sources. The external vector should correspond with the order of 'volumetric_source_blocks'.

Optional Parameters

  • allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

    Default:False

    C++ Type:bool

    Controllable:No

    Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

  • execute_onTIMESTEP_BEGINThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:TIMESTEP_BEGIN

    C++ Type:ExecFlagEnum

    Options:NONE, INITIAL, LINEAR, NONLINEAR_CONVERGENCE, NONLINEAR, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, PRE_KERNELS

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

  • execution_order_group0Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.

    Default:0

    C++ Type:int

    Controllable:No

    Description:Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.

  • force_postauxFalseForces the UserObject to be executed in POSTAUX

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in POSTAUX

  • force_preauxFalseForces the UserObject to be executed in PREAUX

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in PREAUX

  • force_preicFalseForces the UserObject to be executed in PREIC during initial setup

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in PREIC during initial setup

Execution Scheduling Parameters

  • allow_new_work_during_executionTrueWhether or not to allow the addition of new work to the work buffer during execution

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to allow the addition of new work to the work buffer during execution

  • buffer_growth_multiplier2How much to grow a SendBuffer by if the buffer completely fills and dumps. Will max at send_buffer_size

    Default:2

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:How much to grow a SendBuffer by if the buffer completely fills and dumps. Will max at send_buffer_size

  • buffer_shrink_multiplier0.5Multiplier (between 0 and 1) to apply to the current buffer size if it is force dumped. Will stop at min_buffer_size.

    Default:0.5

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Multiplier (between 0 and 1) to apply to the current buffer size if it is force dumped. Will stop at min_buffer_size.

  • chunk_size100The number of objects to process at one time during execution

    Default:100

    C++ Type:unsigned int

    Controllable:No

    Description:The number of objects to process at one time during execution

  • clicks_per_communication10Iterations to wait before communicating

    Default:10

    C++ Type:unsigned int

    Controllable:No

    Description:Iterations to wait before communicating

  • clicks_per_receive1Iterations to wait before checking for new objects

    Default:1

    C++ Type:unsigned int

    Controllable:No

    Description:Iterations to wait before checking for new objects

  • clicks_per_root_communication10Iterations to wait before communicating with root

    Default:10

    C++ Type:unsigned int

    Controllable:No

    Description:Iterations to wait before communicating with root

  • 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:Yes

    Description:Set the enabled status of the MooseObject.

  • methodsmartThe algorithm to use

    Default:smart

    C++ Type:MooseEnum

    Options:smart, harm, bs

    Controllable:No

    Description:The algorithm to use

  • min_buffer_sizeThe initial size of the SendBuffer and the floor for shrinking it. This defaults to send_buffer_size if not set (i.e. the buffer won't change size)

    C++ Type:unsigned int

    Controllable:No

    Description:The initial size of the SendBuffer and the floor for shrinking it. This defaults to send_buffer_size if not set (i.e. the buffer won't change size)

  • send_buffer_size100The size of the send buffer

    Default:100

    C++ Type:unsigned int

    Controllable:No

    Description:The size of the send buffer

  • use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

  • work_buffer_typecircularThe work buffer type to use

    Default:circular

    C++ Type:MooseEnum

    Options:lifo, circular

    Controllable:No

    Description:The work buffer type to use

Advanced Parameters

  • always_cache_tracesFalseWhether or not to cache the Ray traces on every execution, primarily for use in output. Warning: this can get expensive very quick with a large number of rays!

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to cache the Ray traces on every execution, primarily for use in output. Warning: this can get expensive very quick with a large number of rays!

  • aux_data_on_cache_tracesFalseWhether or not to also cache the Ray's aux data when caching its traces

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to also cache the Ray's aux data when caching its traces

  • data_on_cache_tracesFalseWhether or not to also cache the Ray's data when caching its traces

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not to also cache the Ray's data when caching its traces

  • segments_on_cache_tracesTrueWhether or not to cache individual segments when trace caching is enabled. If false, we will instead cache a segment for each part of the trace where the direction is the same. This minimizes the number of segments requied to represent the Ray's path, but removes the ability to show Ray field data on each segment through an element.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to cache individual segments when trace caching is enabled. If false, we will instead cache a segment for each part of the trace where the direction is the same. This minimizes the number of segments requied to represent the Ray's path, but removes the ability to show Ray field data on each segment through an element.

Trace Cache Parameters

  • prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

    C++ Type:MaterialPropertyName

    Unit:(no unit assumed)

    Controllable:No

    Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

  • use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

Material Property Retrieval Parameters

  • ray_kernel_coverage_checkTrueWhether or not to perform coverage checks on RayKernels

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to perform coverage checks on RayKernels

  • verify_raysTrueWhether or not to verify the generated Rays. This includes checking their starting information and the uniqueness of Rays before and after execution. This is also used by derived studies for more specific verification.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to verify the generated Rays. This includes checking their starting information and the uniqueness of Rays before and after execution. This is also used by derived studies for more specific verification.

  • verify_trace_intersectionsTrueWhether or not to verify the trace intersections in devel and dbg modes. Trace intersections are not verified regardless of this parameter in optimized modes (opt, oprof).

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to verify the trace intersections in devel and dbg modes. Trace intersections are not verified regardless of this parameter in optimized modes (opt, oprof).

Checks And Verifications Parameters

  • warn_non_planarTrueWhether or not to produce a warning if any element faces are non-planar.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to produce a warning if any element faces are non-planar.

  • warn_subdomain_hmaxTrueWhether or not to warn if the approximated hmax (constant on subdomain) varies significantly for an element

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether or not to warn if the approximated hmax (constant on subdomain) varies significantly for an element

Tracing Warnings Parameters