- variableThe name of the variable that this RayKernel operates on
C++ Type:NonlinearVariableName
Unit:(no unit assumed)
Controllable:No
Description:The name of the variable that this RayKernel operates on
LineSourceRayKernel
Demonstrates the multiple ways that scalar values can be introduced into RayKernels, e.g. (controllable) constants, functions, postprocessors, and data on rays. Implements the weak form along a line.
While this summary describes the non-AD form available in LineSourceRayKernel
, an AD-form is also available as the ADLineSourceRayKernel
.
The strong form, given the line
is defined as
where is the source term (negative if a sink) along and the second term on the left hand side represents the strong forms of other kernels and boundary conditions. The LineSourceRayKernel
weak form, in inner-product notation, is defined as
where the are the test functions, and are the trial solutions in the finite dimensional space for the unknown ().
The Jacobian term for this kernel is zero: , since it is assumed that is not a function of the unknown .
The force is constructed through a user supplied constant , function value evaluated at the current time and quadrature point , postprocessor value , and/or Ray data . The constant , supplied through the parameter "value", may also be controlled over the course of a transient simulation with a Controls
block. , , are supplied through the input parameters "value", "function", and "postprocessor" respectively. is supplied through the input parameters "ray_data_factor_names" and "ray_aux_data_factor_names" as the product of the ray data with the given names. Not supplying , , , or through its corresponding parameter is equivalent to setting its value to unity.
Input Parameters
- blockThe list of blocks (ids or names) that this object will be applied
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:The list of blocks (ids or names) that this object will be applied
- depends_onOther RayKernels that this RayKernel depends on
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:Other RayKernels that this RayKernel depends on
- function1A function that describes the line source
Default:1
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:A function that describes the line source
- postprocessor1A postprocessor whose value is multiplied by the line source
Default:1
C++ Type:PostprocessorName
Unit:(no unit assumed)
Controllable:No
Description:A postprocessor whose value is multiplied by the line source
- 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_aux_data_factor_namesThe names of the Ray aux data to scale the source by (if any)
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:The names of the Ray aux data to scale the source by (if any)
- ray_data_factor_namesThe names of the Ray data to scale the source by (if any)
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:The names of the Ray data to scale the source by (if any)
- raysThe name of the Rays associated with this object; only used if Ray registration is enabled within the study. If no Rays are supplied, this object will be applied to all Rays.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:The name of the Rays associated with this object; only used if Ray registration is enabled within the study. If no Rays are supplied, this object will be applied to all Rays.
- studyThe RayTracingStudy associated with this object. If none provided, this will default to the one study that exists.
C++ Type:UserObjectName
Unit:(no unit assumed)
Controllable:No
Description:The RayTracingStudy associated with this object. If none provided, this will default to the one study that exists.
- 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.
- value1Coefficient to multiply by the line source term
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:Yes
Description:Coefficient to multiply by the line source term
Optional Parameters
- absolute_value_vector_tagsThe tags for the vectors this residual object should fill with the absolute value of the residual contribution
C++ Type:std::vector<TagName>
Unit:(no unit assumed)
Controllable:No
Description:The tags for the vectors this residual object should fill with the absolute value of the residual contribution
- extra_matrix_tagsThe extra tags for the matrices this Kernel should fill
C++ Type:std::vector<TagName>
Unit:(no unit assumed)
Controllable:No
Description:The extra tags for the matrices this Kernel should fill
- extra_vector_tagsThe extra tags for the vectors this Kernel should fill
C++ Type:std::vector<TagName>
Unit:(no unit assumed)
Controllable:No
Description:The extra tags for the vectors this Kernel should fill
- matrix_tagssystemThe tag for the matrices this Kernel should fill
Default:system
C++ Type:MultiMooseEnum
Unit:(no unit assumed)
Controllable:No
Description:The tag for the matrices this Kernel should fill
- vector_tagsnontimeThe tag for the vectors this Kernel should fill
Default:nontime
C++ Type:MultiMooseEnum
Unit:(no unit assumed)
Controllable:No
Description:The tag for the vectors this Kernel should fill
Tagging Parameters
- 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:No
Description:Set the enabled status of the MooseObject.
- implicitTrueDetermines whether this object is calculated using an implicit or explicit form
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Determines whether this object is calculated using an implicit or explicit form
- seed0The seed for the master random number generator
Default:0
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:The seed for the master random number generator