- variableThe name of the variable that this residual object operates onC++ Type:NonlinearVariableName Description:The name of the variable that this residual object operates on 
MatDiffusion
Diffusion equation Kernel that takes an isotropic Diffusivity from a material property
Implements the term  where the diffusion coefficient  (diffusivity) is provided by a FunctionMaterial function material (see Phase Field Module for more information),  is the non-linear variable the kernel is operating on.  
This kernel can be used in a coupled form if the optional v variable is specified. This allows applying the diffusion operator to a variable  given by v, which is different from the kernel variable.
 can depend on arbitrary non-linear variables  (args). The complete Jacobian contributions are provided by the kernel. To build the Jacobian the kernel uses all derivatives of  with respect to the kernel variable and the variables specified in args.
Input Parameters
- argsOptional vector of arguments for the diffusivity. If provided and diffusivity is a derivative parsed material, Jacobian contributions from the diffusivity will be automatically computedC++ Type:std::vector<VariableName> Description:Optional vector of arguments for the diffusivity. If provided and diffusivity is a derivative parsed material, Jacobian contributions from the diffusivity will be automatically computed 
- blockThe list of blocks (ids or names) that this object will be appliedC++ Type:std::vector<SubdomainName> Description:The list of blocks (ids or names) that this object will be applied 
- concDeprecated! Use 'v' insteadC++ Type:std::vector<VariableName> Description:Deprecated! Use 'v' instead 
- diffusivityDThe diffusivity value or material propertyDefault:D C++ Type:MaterialPropertyName Description:The diffusivity value or material property 
- displacementsThe displacementsC++ Type:std::vector<VariableName> Description:The displacements 
- 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 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. 
- vCoupled concentration variable for kernel to operate on; if this is not specified, the kernel's nonlinear variable will be used as usualC++ Type:std::vector<VariableName> Description:Coupled concentration variable for kernel to operate on; if this is not specified, the kernel's nonlinear variable will be used as usual 
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.C++ Type:std::vector<std::string> Description:Adds user-defined labels for accessing object parameters via control logic. 
- diag_save_inThe name of auxiliary variables to save this Kernel's diagonal Jacobian contributions to. Everything about that variable must match everything about this variable (the type, what blocks it's on, etc.)C++ Type:std::vector<AuxVariableName> Description:The name of auxiliary variables to save this Kernel's diagonal Jacobian contributions to. Everything about that variable must match everything about this variable (the type, what blocks it's on, etc.) 
- enableTrueSet the enabled status of the MooseObject.Default:True C++ Type:bool Description:Set the enabled status of the MooseObject. 
- implicitTrueDetermines whether this object is calculated using an implicit or explicit formDefault:True C++ Type:bool Description:Determines whether this object is calculated using an implicit or explicit form 
- save_inThe name of auxiliary variables to save this Kernel's residual contributions to. Everything about that variable must match everything about this variable (the type, what blocks it's on, etc.)C++ Type:std::vector<AuxVariableName> Description:The name of auxiliary variables to save this Kernel's residual contributions to. Everything about that variable must match everything about this variable (the type, what blocks it's on, etc.) 
- seed0The seed for the master random number generatorDefault:0 C++ Type:unsigned int Description:The seed for the master random number generator 
- 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 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. 
Advanced Parameters
- extra_matrix_tagsThe extra tags for the matrices this Kernel should fillC++ Type:std::vector<TagName> Description:The extra tags for the matrices this Kernel should fill 
- extra_vector_tagsThe extra tags for the vectors this Kernel should fillC++ Type:std::vector<TagName> Description:The extra tags for the vectors this Kernel should fill 
- matrix_tagssystemThe tag for the matrices this Kernel should fillDefault:system C++ Type:MultiMooseEnum Description:The tag for the matrices this Kernel should fill 
- vector_tagsnontimeThe tag for the vectors this Kernel should fillDefault:nontime C++ Type:MultiMooseEnum Description:The tag for the vectors this Kernel should fill