- directionsThe direction(s) of the cone(s) (points down the center of each cone).
C++ Type:std::vector<libMesh::Point>
Unit:(no unit assumed)
Controllable:No
Description:The direction(s) of the cone(s) (points down the center of each cone).
- half_cone_anglesAngle of the half-cones in degrees (must be <= 90)
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Angle of the half-cones in degrees (must be <= 90)
- ray_data_nameThe name of the Ray data that the angular quadrature weights and factors will be filled into for properly weighting the line source per Ray.
C++ Type:std::string
Unit:(no unit assumed)
Controllable:No
Description:The name of the Ray data that the angular quadrature weights and factors will be filled into for properly weighting the line source per Ray.
- start_pointsThe point(s) of the cone(s).
C++ Type:std::vector<libMesh::Point>
Unit:(no unit assumed)
Controllable:No
Description:The point(s) of the cone(s).
ConeRayStudy
Ray study that spawns Rays in the direction of a cone from a given set of starting points.
Rays are generated in directions by a product angular quadrature, in which the azimuthal directions are produced by Chebyshev quadrature and the polar directions are produced by Gauss-Legendre quadrature. In the 2D case, the full 3D quadrature is produced and projected into the 2D plane.
For example use and a further description, see Flashlight Point Sources.
Input 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
Unit:(no unit assumed)
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.
- azimuthal_quad_ordersOrder of the azimuthal quadrature per quadrant for each cone. The azimuthal angle is measured in a plane perpendicular to the cone direction. This will default to 30 if not provided. Must be positive.
C++ Type:std::vector<unsigned int>
Unit:(no unit assumed)
Controllable:No
Description:Order of the azimuthal quadrature per quadrant for each cone. The azimuthal angle is measured in a plane perpendicular to the cone direction. This will default to 30 if not provided. Must be positive.
- execute_onTIMESTEP_ENDThe 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_END
C++ Type:ExecFlagEnum
Unit:(no unit assumed)
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.
- polar_quad_ordersOrder of the polar quadrature for each cone. Polar angle is between ray and the cone direction. Must be positive. This will default to 2 for all cones if not provided.
C++ Type:std::vector<unsigned int>
Unit:(no unit assumed)
Controllable:No
Description:Order of the polar quadrature for each cone. Polar angle is between ray and the cone direction. Must be positive. This will default to 2 for all cones if not provided.
- 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.
- 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
- scaling_factorsScaling factors for each cone (if any). Defaults to 1.
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Scaling factors for each cone (if any). Defaults to 1.
- tolerate_failureFalseWhether or not to tolerate a ray tracing failure
Default:False
C++ Type:bool
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to use internal sidesets for RayBCs in ray tracing
- 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
Unit:(no unit assumed)
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.
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
Unit:(no unit assumed)
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).
- 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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:No
Description:Iterations to wait before communicating
- clicks_per_receive1Iterations to wait before checking for new objects
Default:1
C++ Type:unsigned int
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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>
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:Yes
Description:Set the enabled status of the MooseObject.
- 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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:No
Description:Forces the UserObject to be executed in PREIC during initial setup
- methodsmartThe algorithm to use
Default:smart
C++ Type:MooseEnum
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
- ray_kernel_coverage_checkTrueWhether or not to perform coverage checks on RayKernels
Default:True
C++ Type:bool
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to warn if the approximated hmax (constant on subdomain) varies significantly for an element