- variableThe name of the variable that this residual object operates on
C++ Type:NonlinearVariableName
Description:The name of the variable that this residual object operates on
 
Reaction
Description
Reaction implements a simple first-order reaction term where the rate of reaction is directly proportional to the governing variable . Its weak form is given by  where  is the rate coefficient.
Reaction can be used to help set-up variations of advection-diffusion-reaction equations.
Example Syntax
The syntax for Reaction is simple, only taking the type and variable parameters. An example block is shown below for a diffusion-reaction equation:
[Kernels]
  [diff]
    type = Diffusion
    variable = u
  []
  [rxn]
    type = Reaction
    variable = u
    rate = 2.0
  []
  [diffs]
    type = Diffusion
    variable = s
  []
  [prod]
    type = CoupledForce
    variable = s
    v = u
  []
[]
(test/tests/fvkernels/fv_coupled_var/coupled.i)Input Parameters
- blockThe list of block ids (SubdomainID) that this object will be applied
C++ Type:std::vector<SubdomainName>
Options:
Description:The list of block ids (SubdomainID) that this object will be applied
 - displacementsThe displacements
C++ Type:std::vector<VariableName>
Options:
Description:The displacements
 - rate1The $(\lambda)$ multiplier, the relative amount consumed per unit time.
Default:1
C++ Type:double
Options:
Description:The $(\lambda)$ multiplier, the relative amount consumed per unit time.
 
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Options:
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>
Options:
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
Options:
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
Options:
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>
Options:
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 generator
Default:0
C++ Type:unsigned int
Options:
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
Options:
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 fill
C++ Type:std::vector<TagName>
Options:
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>
Options:
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
Options:nontime, system
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
Options:nontime, time
Description:The tag for the vectors this Kernel should fill
 
Tagging Parameters
Input Files
- (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_userobject.i)
 - (test/tests/dgkernels/adaptivity/adaptivity.i)
 - (test/tests/variables/previous_newton_iteration/test.i)
 - (test/tests/variables/fe_hermite_convergence/hermite_converge_periodic.i)
 - (test/tests/tag/2d_diffusion_dg_tag.i)
 - (test/tests/problems/eigen_problem/eigensolvers/dg_krylovschur.i)
 - (test/tests/tag/2d_diffusion_vector_tag_test.i)
 - (test/tests/misc/check_error/aux_kernel_with_var.i)
 - (test/tests/userobjects/nearest_point_layered_average/nearest_radius_layered_average.i)
 - (test/tests/variables/fe_monomial_const/monomial-const-2d.i)
 - (test/tests/multiapps/grid-sequencing/coarse.i)
 - (test/tests/transfers/multiapp_conservative_transfer/sub_power_density.i)
 - (test/tests/controls/time_periods/dgkernels/dgkernels.i)
 - (test/tests/misc/check_error/kernel_with_aux_var.i)
 - (test/tests/bcs/penalty_dirichlet_bc/penalty_dirichlet_bc_test.i)
 - (test/tests/mortar/continuity-2d-non-conforming/soln-continuity.i)
 - (test/tests/mortar/continuity-2d-non-conforming/dual-soln-continuity.i)
 - (test/tests/misc/check_error/interface_kernel_with_aux_var.i)
 - (test/tests/outputs/debug/show_var_residual_norms_debug.i)
 - (modules/phase_field/test/tests/phase_field_crystal/PFCTrad/pfct_newton_split1_asm1_10.i)
 - (test/tests/dgkernels/3d_diffusion_dg/3d_diffusion_dg_test.i)
 - (test/tests/misc/check_error/scalar_kernel_with_var.i)
 - (test/tests/mortar/convergence-studies/gap-conductance/gap-conductance.i)
 - (test/tests/mortar/mortar-q-points/test.i)
 - (modules/phase_field/test/tests/phase_field_crystal/PFCTrad/pfct_newton_split1_asm5.i)
 - (test/tests/mortar/gap-conductance-2d-non-conforming/gap-conductance.i)
 - (test/tests/kernels/hfem/neumann.i)
 - (test/tests/misc/check_error/scalar_aux_kernel_with_var.i)
 - (modules/phase_field/test/tests/phase_field_crystal/PFCTrad/PFCTrad_test.i)
 - (modules/ray_tracing/test/tests/userobjects/cone_ray_study/cone_ray_study.i)
 - (test/tests/time_integrators/implicit-euler/ie-monomials.i)
 - (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange.i)
 - (test/tests/kernels/material_coupled_force/material_coupled_force.i)
 - (test/tests/misc/check_error/dg_kernel_with_aux_var.i)
 - (test/tests/dgkernels/2d_diffusion_dg/no_mallocs_with_action.i)
 - (test/tests/dgkernels/2d_diffusion_dg/dg_stateful.i)
 - (test/tests/dgkernels/2d_diffusion_dg/no_functor_additions.i)
 - (test/tests/executioners/solve_type_linear/linear_with_full_smp.i)
 - (test/tests/mortar/continuity-2d-non-conforming/sequencing-stateful-soln-continuity.i)
 - (modules/phase_field/test/tests/SimpleACInterface/SimpleCoupledACInterface.i)
 - (modules/ray_tracing/test/tests/userobjects/cone_ray_study/cone_ray_study_3d.i)
 - (test/tests/dgkernels/dg_displacement/dg_displacement.i)
 - (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_conservative.i)
 - (test/tests/kernels/hfem/dirichlet.i)
 - (modules/phase_field/test/tests/phase_field_kernels/CoupledAllenCahn.i)
 - (test/tests/auxkernels/time_derivative/time_derivative.i)
 - (test/tests/time_integrators/explicit-euler/ee-1d-quadratic-neumann.i)
 - (test/tests/misc/check_error/coupled_grad_without_declare.i)
 - (modules/phase_field/test/tests/phase_field_crystal/PFCEnergyDensity/auxkernel.i)
 - (test/tests/variables/fe_hier/hier-1-1d.i)
 - (test/tests/bcs/penalty_dirichlet_bc/function_penalty_dirichlet_bc_test.i)
 - (test/tests/materials/material/material_test_dg.i)
 - (test/tests/variables/fe_hermite_convergence/hermite_converge_dirichlet.i)
 - (test/tests/postprocessors/side_pps/side_pps_multi_bnd_test.i)
 - (test/tests/time_integrators/actually_explicit_euler_verification/ee-1d-quadratic-neumann.i)
 - (test/tests/transfers/multiapp_conservative_transfer/sub_nearest_point.i)
 - (test/tests/multiapps/grid-sequencing/fine.i)
 - (test/tests/auxkernels/time_derivative/coupled_aux_time_derivative.i)
 - (test/tests/variables/fe_hier/hier-2-3d.i)
 - (test/tests/variables/fe_hermite/hermite-3-3d.i)
 - (modules/phase_field/test/tests/mobility_derivative/coupledmatdiffusion.i)
 - (test/tests/fvkernels/fv_coupled_var/coupled.i)
 - (test/tests/dgkernels/2d_diffusion_dg/2d_diffusion_dg_test.i)
 - (test/tests/dgkernels/ad_dg_diffusion/2d_diffusion_ad_dg_test.i)
 - (test/tests/misc/check_error/missing_req_par_mesh_block_test.i)
 - (test/tests/materials/boundary_material/bnd_coupling_vol.i)
 - (test/tests/variables/fe_hier/hier-2-2d.i)
 - (test/tests/meshgenerators/mesh_side_set_generator/mesh_side_set_generator.i)
 - (test/tests/variables/fe_hier/hier-3-3d.i)
 - (test/tests/variables/fe_monomial_const/monomial-const-3d.i)
 - (test/tests/variables/fe_hier/hier-1-2d.i)
 - (test/tests/misc/check_error/dirac_kernel_with_aux_var.i)
 - (test/tests/misc/check_error/kernel_with_empty_var.i)
 - (test/tests/variables/fe_hier/hier-3-2d.i)
 - (test/tests/mesh_modifiers/mesh_side_set/test.i)
 - (test/tests/variables/fe_hier/hier-2-1d.i)
 - (test/tests/mortar/convergence-studies/solution-continuity/continuity.i)
 - (test/tests/variables/fe_monomial_const/monomial-const-1d.i)
 - (test/tests/variables/fe_hier/hier-3-1d.i)
 - (test/tests/variables/fe_hermite/hermite-3-1d.i)
 - (test/tests/preconditioners/pbp/pbp_dg_test.i)
 - (test/tests/outputs/debug/show_var_residual_norms.i)
 - (test/tests/variables/fe_hermite/hermite-3-2d.i)
 - (test/tests/nodalkernels/multiple-subdomains/test.i)
 - (test/tests/bcs/ad_penalty_dirichlet_bc/function_penalty_dirichlet_bc_test.i)
 - (modules/phase_field/test/tests/Nucleation/force.i)
 - (test/tests/bcs/ad_penalty_dirichlet_bc/penalty_dirichlet_bc_test.i)
 - (test/tests/interfacekernels/adaptivity/adaptivity.i)
 - (test/tests/postprocessors/element_average_value/elem_pps_multi_block_test.i)
 - (test/tests/misc/check_error/bc_with_aux_var.i)
 - (test/tests/variables/fe_hier/hier-1-3d.i)
 
Child Objects
(test/tests/fvkernels/fv_coupled_var/coupled.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 10
  ny = 2
[]
[Variables]
  [u][]
  [v]
    family = MONOMIAL
    order = CONSTANT
    fv = true
  []
  [w]
    family = MONOMIAL
    order = CONSTANT
    fv = true
  []
  [s][]
[]
[Kernels]
  [diff]
    type = Diffusion
    variable = u
  []
  [rxn]
    type = Reaction
    variable = u
    rate = 2.0
  []
  [diffs]
    type = Diffusion
    variable = s
  []
  [prod]
    type = CoupledForce
    variable = s
    v = u
  []
[]
[FVKernels]
  [diff]
    type = FVDiffusion
    variable = v
    coeff = coeff
  []
  [rxn]
    type = FVReaction
    variable = v
    rate = 2.0
  []
  [diffw]
    type = FVDiffusion
    variable = w
    coeff = coeff
  []
  [prod]
    type = FVCoupledForce
    variable = w
    v = 'v'
  []
[]
[FVBCs]
  [left]
    type = FVDirichletBC
    variable = v
    boundary = left
    value = 0
  []
  [right]
    type = FVDirichletBC
    variable = v
    boundary = right
    value = 1
  []
  [leftw]
    type = FVDirichletBC
    variable = w
    boundary = left
    value = 0
  []
  [rightw]
    type = FVDirichletBC
    variable = w
    boundary = right
    value = 1
  []
[]
[Materials]
  [diff]
    type = ADGenericConstantMaterial
    prop_names = 'coeff'
    prop_values = '1'
  []
[]
[BCs]
  [left]
    type = DirichletBC
    variable = u
    boundary = left
    value = 0
  []
  [right]
    type = DirichletBC
    variable = u
    boundary = right
    value = 1
  []
  [lefts]
    type = DirichletBC
    variable = s
    boundary = left
    value = 0
  []
  [rights]
    type = DirichletBC
    variable = s
    boundary = right
    value = 1
  []
[]
[Problem]
  kernel_coverage_check = off
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  exodus = true
[]
(test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_userobject.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  parallel_type = replicated
[]
[Variables]
  [power_density]
    family = L2_LAGRANGE
    order = FIRST
  []
[]
[AuxVariables]
  [./multi_layered_average]
    family = LAGRANGE
    order = FIRST
  [../]
[]
[UserObjects]
  [./multi_layered_average]
    type = LayeredAverage
    variable = power_density
    direction = y
    num_layers = 4
  [../]
[]
[AuxKernels]
  [./layered_aux]
    type = SpatialUserObjectAux
    variable = multi_layered_average
    execute_on = 'nonlinear TIMESTEP_END'
    user_object = multi_layered_average
  [../]
[]
[Functions]
  [pwr_func]
    type = ParsedFunction
    value = '1e3*x*(1-x)+5e2'
  []
[]
[Kernels]
  [diff]
    type = Reaction
    variable = power_density
  []
  [coupledforce]
    type = BodyForce
    variable = power_density
    function = pwr_func
  []
[]
[Postprocessors]
  [layered_avg]
    type = ElementAverageValue
    block = '0'
    variable = multi_layered_average
    execute_on = 'initial timestep_end'
  []
[]
[Executioner]
  type = Steady
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart '
  petsc_options_value = 'hypre boomeramg 100'
  nl_abs_tol = 1e-8
  nl_rel_tol = 1e-12
[]
[MultiApps]
  [sub]
    type = FullSolveMultiApp
    app_type = MooseTestApp
    positions = '0 0 0'
    input_files  = sub_L2_Lagrange.i
    execute_on = 'timestep_end'
  []
[]
[Transfers]
  [p_to_sub]
    type = MultiAppUserObjectTransfer
    direction = to_multiapp
    user_object = multi_layered_average
    variable = power_density
    multi_app = sub
    execute_on = 'timestep_end'
  []
[]
[Outputs]
  exodus = true
  perf_graph = true
[]
(test/tests/dgkernels/adaptivity/adaptivity.i)
# This input file is used for two tests:
# 1) Check that DGKernels work with mesh adaptivity
# 2) Error out when DGKernels are used with adaptivity
#    and stateful material prpoerties
[Mesh]
  type = GeneratedMesh
  dim = 3
  nx = 2
  ny = 2
  nz = 2
  parallel_type = 'replicated'
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = (x*x*x)-6.0*x
  [../]
  [./bc_fn]
    type = ParsedFunction
    value = (x*x*x)
  [../]
[]
[Kernels]
  [./diff]
    type = MatDiffusionTest
    variable = u
    prop_name = diffusivity
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dgdiff]
    type = DGDiffusion
    variable = u
    sigma = 6
    epsilon = -1.0
    diff = diffusivity
  [../]
[]
[BCs]
  active = 'all'
  [./all]
    type = DGMDDBC
    variable = u
    boundary = '1 2 3 4'
    function = bc_fn
    prop_name = diffusivity
    sigma = 6
    epsilon = -1.0
  [../]
[]
[Materials]
  active = 'constant'
  [./stateful]
    type = StatefulTest
    prop_names = 'diffusivity'
    prop_values = '1'
  [../]
  [./constant]
    type = GenericConstantMaterial
    prop_names = 'diffusivity'
    prop_values = '1'
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Adaptivity]
  marker = 'marker'
  steps = 1
  [./Indicators]
    [./error]
      type = GradientJumpIndicator
      variable = u
    [../]
  [../]
  [./Markers]
    [./marker]
      type = ErrorFractionMarker
      coarsen = 0.5
      indicator = error
      refine = 0.5
    [../]
  [../]
[]
[Outputs]
  exodus = true
[]
(test/tests/variables/previous_newton_iteration/test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 2
  ny = 2
  elem_type = QUAD9
[]
[Problem]
  previous_nl_solution_required = true
[]
[Functions]
  [./v_fn]
    type = ParsedFunction
    value = -4+(x*x+y*y)+1
  [../]
  [./left_u_bc_fn]
    type = ParsedFunction
    value = -2*x
  [../]
  [./top_u_bc_fn]
    type = ParsedFunction
    value = 2*y
  [../]
  [./right_u_bc_fn]
    type = ParsedFunction
    value = 2*x
  [../]
  [./bottom_u_bc_fn]
    type = ParsedFunction
    value = -2*y
  [../]
[]
[AuxVariables]
  [./a]
    order = SECOND
  [../]
  [./v]
    order = SECOND
  [../]
[]
[AuxKernels]
  [./ak_a]
    type = QuotientAux
    variable = a
    numerator = v
    denominator = u
  [../]
  [./ak_v]
    type = FunctionAux
    variable = v
    function = v_fn
  [../]
[]
[Variables]
  [./u]
    order = SECOND
  [../]
[]
[ICs]
  [./u_ic]
    type = ConstantIC
    variable = u
    value = 1
  [../]
[]
[Kernels]
  [./diff_u]
    type = Diffusion
    variable = u
  [../]
  [./react]
    type = Reaction
    variable = u
  [../]
  [./cv_u]
    type = CoupledForceLagged
    variable = u
    v = v
  [../]
[]
[BCs]
  [./u_bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = left_u_bc_fn
  [../]
  [./u_bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = top_u_bc_fn
  [../]
  [./u_bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = right_u_bc_fn
  [../]
  [./u_bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bottom_u_bc_fn
  [../]
[]
[Preconditioning]
  [./pc]
    type = SMP
    full = true
    solve_type = PJFNK
  [../]
[]
[Executioner]
  type = Steady
  # to get multiple NL iterations
  l_tol = 1e-3
  nl_rel_tol = 1e-10
[]
[Outputs]
  [./out]
    type = Exodus
    execute_on = 'nonlinear'
  [../]
[]
(test/tests/variables/fe_hermite_convergence/hermite_converge_periodic.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 4
  ny = 4
  elem_type = QUAD4
  # This test will not work in parallel with DistributedMesh enabled
  # due to a bug in PeriodicBCs.
  parallel_type = replicated
[]
[Functions]
  [./bc_fn]
    type = ParsedGradFunction
    value = -sin(pi*x)*sin(pi*y)
    grad_x = -pi*cos(pi*x)*sin(pi*y)
    grad_y = -pi*sin(pi*x)*cos(pi*y)
  [../]
  [./bc_fnt]
    type = ParsedFunction
    value = -pi*sin(pi*x)*cos(pi*y)
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = pi*sin(pi*x)*cos(pi*y)
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -2*pi*pi*sin(pi*x)*sin(pi*y)-sin(pi*x)*sin(pi*y)
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HERMITE
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./Periodic]
    [./all]
      variable = u
      auto_direction= 'x y'
    [../]
  [../]
  [./bc_top]
    type=FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type=FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = bc_fn
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = bc_fn
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = bc_fn
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  # We use higher-order quadrature to ensure that the forcing function
  # is integrated accurately.
  [./Quadrature]
    order=ELEVENTH
  [../]
[]
[Adaptivity]
  steps = 2
  marker = uniform
  [./Markers]
    [./uniform]
      type = UniformMarker
      mark = refine
    [../]
  [../]
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
  print_mesh_changed_info = true
[]
(test/tests/tag/2d_diffusion_dg_tag.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 4
  ny = 4
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[AuxVariables]
  [./tag_variable1]
    order = FIRST
    family = MONOMIAL
  [../]
  [./tag_variable2]
    order = FIRST
    family = MONOMIAL
  [../]
[]
[AuxKernels]
  [./TagVectorAux1]
    type = TagVectorAux
    variable = tag_variable1
    v = u
    vector_tag = vec_tag2
    execute_on = timestep_end
  [../]
  [./TagVectorAux2]
    type = TagMatrixAux
    variable = tag_variable2
    v = u
    matrix_tag = mat_tag2
    execute_on = timestep_end
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
    extra_matrix_tags = 'mat_tag1 mat_tag2'
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
  [./abs]
    type = Reaction
    variable = u
    extra_matrix_tags = 'mat_tag1 mat_tag2'
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
    extra_matrix_tags = 'mat_tag1 mat_tag2'
    extra_vector_tags = 'vec_tag1'
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
    extra_matrix_tags = 'mat_tag1 mat_tag2'
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
    extra_matrix_tags = 'mat_tag1 mat_tag2'
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
[]
[Problem]
  type = TagTestProblem
  test_tag_vectors =  'nontime residual vec_tag1 vec_tag2'
  test_tag_matrices = 'mat_tag1 mat_tag2'
  extra_tag_matrices = 'mat_tag1 mat_tag2'
  extra_tag_vectors  = 'vec_tag1 vec_tag2'
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  nl_rel_tol = 1e-10
[]
[Postprocessors]
  [./h]
    type = AverageElementSize
  [../]
  [./dofs]
    type = NumDOFs
  [../]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Outputs]
  exodus = true
[]
(test/tests/problems/eigen_problem/eigensolvers/dg_krylovschur.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    sigma = 6
    epsilon = -1
  []
[]
[Kernels]
  [./rhs]
    type = Reaction
    variable = u
    extra_vector_tags = 'eigen'
  [../]
[]
[Executioner]
  type = Eigenvalue
  solve_type = KRYLOVSCHUR
  eigen_problem_type = HERMITIAN
  which_eigen_pairs = LARGEST_MAGNITUDE
[]
[VectorPostprocessors]
  [./eigenvalues]
    type = Eigenvalues
    execute_on = 'timestep_end'
  [../]
[]
[Outputs]
  csv = true
  execute_on = 'timestep_end'
[]
(test/tests/tag/2d_diffusion_vector_tag_test.i)
[Mesh]
  [./square]
    type = GeneratedMeshGenerator
    nx = 2
    ny = 2
    dim = 2
  [../]
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
    initial_condition = 1.0
  [../]
[]
[AuxVariables]
  [./tag_variable1]
    order = FIRST
    family = LAGRANGE
  [../]
  [./tag_variable2]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./reaction1]
    type = Reaction
    variable = u
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
  [./reaction2]
    type = Reaction
    variable = u
    extra_vector_tags = 'vec_tag1 vec_tag2'
  [../]
  [./reaction3]
    type = Reaction
    variable = u
  [../]
  [./reaction4]
    type = Reaction
    variable = u
  [../]
[]
[AuxKernels]
  [./TagVectorAux1]
    type = TagVectorAux
    variable = tag_variable1
    v = u
    vector_tag = vec_tag1
    execute_on = timestep_end
  [../]
  [./TagVectorAux2]
    type = TagVectorAux
    variable = tag_variable2
    v = u
    vector_tag = vec_tag2
    execute_on = timestep_end
  [../]
[]
[BCs]
  active = 'left right'
  [./left]
    type = DirichletBC
    variable = u
    preset = false
    boundary = 3
    value = 10
    extra_vector_tags = vec_tag1
  [../]
  [./right]
    type = DirichletBC
    variable = u
    preset = false
    boundary = 1
    value = 100
    extra_vector_tags = vec_tag2
  [../]
  [./right1]
    type = DirichletBC
    variable = u
    preset = false
    boundary = 1
    value = 100
  [../]
  [./right2]
    type = DirichletBC
    variable = u
    preset = false
    boundary = 1
    value = 100
  [../]
[]
[Problem]
  type = TagTestProblem
  extra_tag_vectors  = 'vec_tag1 vec_tag2'
  test_tag_vectors =  'vec_tag1 vec_tag2'
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = vector_tag_test_out
  exodus = true
[]
(test/tests/misc/check_error/aux_kernel_with_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[AuxKernels]
  [./nope]
    type = SelfAux
    variable = u
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/userobjects/nearest_point_layered_average/nearest_radius_layered_average.i)
# This input tests the NearestRadiusLayeredAverage object by taking the average
# of layered rings and using the variable u(x,y,x) = r + z, where r  sqrt(x^2 + y^2)
# Given a ring of inner and outer radii r1 and r2, respectively, and of height z1 and z2,
# the analytical solution is given by:
# avg(r1,r2,z1,z2) = 2/3 * (r1^2 + r1*r2 + r2^2) / (r1 + r2) + (z1 + z2) / 2
# Convergence to these values as num_sectors is increased is verified.
[Mesh]
  [./ccmg]
    type = ConcentricCircleMeshGenerator
    num_sectors = 8
    radii = '0.1 0.2 0.3 0.4 0.5'
    rings = '2 2 2 2 2'
    has_outer_square = false
    preserve_volumes = true
    smoothing_max_it = 3
  []
  [./extruder]
    type = MeshExtruderGenerator
    input = ccmg
    extrusion_vector = '0 0 1'
    num_layers = 4
  []
[]
[Variables]
  [./u]
  [../]
[]
[AuxVariables]
  [./ring_average]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[Kernels]
  [./reac]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = func
  [../]
[]
[Functions]
  [func]
    type = ParsedFunction
    value = 'sqrt(x * x + y * y) + z'
  []
[]
[AuxKernels]
  [./np_layered_average]
    type = SpatialUserObjectAux
    variable = ring_average
    execute_on = timestep_end
    user_object = nrla
  [../]
[]
[UserObjects]
  [./nrla]
    type = NearestRadiusLayeredAverage
    direction = z
    num_layers = 2
    points = '0.05 0 0
              0.15 0 0
              0.25 0 0
              0.35 0 0
              0.45 0 0'
    variable = u
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Outputs]
  exodus = true
[]
(test/tests/variables/fe_monomial_const/monomial-const-2d.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 100
  ny = 100
  elem_type = QUAD4
[]
[Functions]
  [./bc_fn]
    type=ParsedFunction
    value=0
  [../]
  [./bc_fnt]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 0
  [../]
  [./forcing_fn]
#    type = ParsedFunction
#    value = 0
    type = MTPiecewiseConst2D
  [../]
  [./solution]
    type = MTPiecewiseConst2D
  [../]
[]
[Variables]
  [./u]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  # Note: MOOSE's DirichletBCs do not work properly with shape functions that do not
  #       have DOFs at the element edges.  This test works because the solution
  #       has been designed to be zero at the boundary which is satisfied by the IC
  #       Ticket #1352
  active = ''
  [./bc_all]
    type=FunctionDirichletBC
    variable = u
    boundary = 'top bottom left right'
    function = bc_fn
  [../]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1.e-10
  [./Adaptivity]
  [../]
[]
[Outputs]
  execute_on = 'timestep_end'
  csv = true
  [./out]
    type = Exodus
    elemental_as_nodal = true
  [../]
[]
(test/tests/multiapps/grid-sequencing/coarse.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  nx = 20
[]
[Variables]
  [./u]
  [../]
[]
[Kernels]
  [time]
    type = TimeDerivative
    variable = u
  []
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [rxn]
    type = Reaction
    variable = u
  []
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = left
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = right
    value = 1
  [../]
[]
[Executioner]
  type = Transient
  num_steps = 2
  dt = 1
  solve_type = 'PJFNK'
  petsc_options = '-snes_monitor_solution'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Outputs]
  exodus = true
[]
(test/tests/transfers/multiapp_conservative_transfer/sub_power_density.i)
[Mesh]
  [gen]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 0.01 # to make sure the meshes don't align
    xmax = 0.49 # to make sure the meshes don't align
    ymax = 1
    nx = 10
    ny = 10
  []
  [block1]
    input = gen
    type = SubdomainBoundingBoxGenerator
    block_id = 1
    bottom_left = '0.2 0.2 0'
    top_right = '0.3 0.8 0'
  []
[]
[Variables]
  [sink]
    family = MONOMIAL
    order = CONSTANT
  []
[]
[Functions]
  [sink_func]
    type = ParsedFunction
    value = '5e2*x*(0.5-x)+5e1'
  []
[]
[Kernels]
  [reaction]
    type = Reaction
    variable = sink
  []
  [coupledforce]
    type = BodyForce
    variable = sink
    function = sink_func
  []
[]
[AuxVariables]
  [from_master]
    block = 1
  []
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Postprocessors]
  [sink]
    type = ElementIntegralVariablePostprocessor
    block = 1
    variable = sink
  []
  [from_master_pp]
    type = ElementIntegralVariablePostprocessor
    block = 1
    variable = from_master
    execute_on = 'transfer'
  []
[]
[Outputs]
  exodus = true
[]
(test/tests/controls/time_periods/dgkernels/dgkernels.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Adaptivity]
  marker = uniform_marker
  [./Markers]
    [./uniform_marker]
      type = UniformMarker
      mark = REFINE
    [../]
  [../]
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    initial_condition = 1
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
  [./dg_diff2]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 4
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Transient
  solve_type = 'PJFNK'
#  petsc_options_iname = '-pc_type -pc_hypre_type'
#  petsc_options_value = 'hypre    boomeramg'
  num_steps = 4
  dt = 1
  nl_rel_tol = 1e-10
[]
[Outputs]
  exodus = true
[]
[Controls]
  [./dg_problem]
    type = TimePeriod
    enable_objects = 'DGKernels/dg_diff2'
    disable_objects = 'DGKernel::dg_diff'
    start_time = '2'
    execute_on = 'initial timestep_begin'
  [../]
[]
(test/tests/misc/check_error/kernel_with_aux_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = v
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/bcs/penalty_dirichlet_bc/penalty_dirichlet_bc_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = -2*(x*x+y*y-2)+(1-x*x)*(1-y*y)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (1-x*x)*(1-y*y)
    grad_x = 2*(x*y*y-x)
    grad_y = 2*(x*x*y-y)
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  active = 'bc_all'
  [./bc_all]
    type = PenaltyDirichletBC
    variable = u
    value = 0
    boundary = 'top left right bottom'
    penalty = 1e5
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1e-14
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/mortar/continuity-2d-non-conforming/soln-continuity.i)
[Mesh]
  second_order = true
  [file]
    type = FileMeshGenerator
    file = nodal_normals_test_offset_nonmatching_gap.e
  []
  [./primary]
    input = file
    type = LowerDBlockFromSidesetGenerator
    sidesets = '2'
    new_block_id = '20'
  [../]
  [./secondary]
    input = primary
    type = LowerDBlockFromSidesetGenerator
    sidesets = '1'
    new_block_id = '10'
  [../]
[]
[Problem]
  kernel_coverage_check = false
[]
[Variables]
  [./T]
    block = '1 2'
    order = SECOND
  [../]
  [./lambda]
    block = '10'
  [../]
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln
    variable = T
    boundary = '3 4 5 6 7 8'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = '1 2'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = '1 2'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = '1 2'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = '-4 + x^2 + y^2'
  [../]
  [./exact_soln]
    type = ParsedFunction
    value = 'x^2 + y^2'
  [../]
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = EqualValueConstraint
    primary_boundary = 2
    secondary_boundary = 1
    primary_subdomain = 20
    secondary_subdomain = 10
    variable = lambda
    secondary_variable = T
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_shift_type -pc_factor_shift_amount'
  petsc_options_value = 'lu       basic                 NONZERO               1e-15'
[]
[Outputs]
  exodus = true
  [dofmap]
    type = DOFMap
    execute_on = 'initial'
  []
[]
(test/tests/mortar/continuity-2d-non-conforming/dual-soln-continuity.i)
[Mesh]
  second_order = false
  [file]
    type = FileMeshGenerator
    file = nodal_normals_test_offset_nonmatching_gap.e
  []
  [./primary]
    input = file
    type = LowerDBlockFromSidesetGenerator
    sidesets = '2'
    new_block_id = '20'
  [../]
  [./secondary]
    input = primary
    type = LowerDBlockFromSidesetGenerator
    sidesets = '1'
    new_block_id = '10'
  [../]
[]
[Problem]
  kernel_coverage_check = false
[]
[Variables]
  [./T]
    block = '1 2'
    order = FIRST
  [../]
  [./lambda]
    block = '10'
    order = FIRST
    use_dual = true
  [../]
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln
    variable = T
    boundary = '3 4 5 6 7 8'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = '1 2'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = '1 2'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = '1 2'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = '-4 + x^2 + y^2'
  [../]
  [./exact_soln]
    type = ParsedFunction
    value = 'x^2 + y^2'
  [../]
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = EqualValueConstraint
    primary_boundary = 2
    secondary_boundary = 1
    primary_subdomain = 20
    secondary_subdomain = 10
    variable = lambda
    secondary_variable = T
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_shift_type -pc_factor_shift_amount'
  petsc_options_value = 'lu       basic                 NONZERO               1e-15'
[]
[Outputs]
  exodus = true
  [dofmap]
    type = DOFMap
    execute_on = 'initial'
  []
[]
(test/tests/misc/check_error/interface_kernel_with_aux_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[InterfaceKernels]
  [./nope]
    type = InterfaceDiffusion
    variable = v
    neighbor_var = u
    boundary = 'left'
    D = 4
    D_neighbor = 2
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/outputs/debug/show_var_residual_norms_debug.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fnu]
    type = ParsedFunction
    value = -5.8*(x+y)+x*x*x-x+y*y*y-y
  [../]
  [./forcing_fnv]
    type = ParsedFunction
    value = -4
  [../]
  [./slnu]
    type = ParsedGradFunction
    value = x*x*x-x+y*y*y-y
    grad_x = 3*x*x-1
    grad_y = 3*y*y-1
  [../]
  [./slnv]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
  #NeumannBC functions
  [./bc_fnut]
    type = ParsedFunction
    value = 3*y*y-1
  [../]
  [./bc_fnub]
    type = ParsedFunction
    value = -3*y*y+1
  [../]
  [./bc_fnul]
    type = ParsedFunction
    value = -3*x*x+1
  [../]
  [./bc_fnur]
    type = ParsedFunction
    value = 3*x*x-1
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
  [./v]
    order = SECOND
    family = LAGRANGE
  [../]
[]
[Kernels]
  active = 'diff1 diff2 test1 forceu forcev react'
  [./diff1]
    type = Diffusion
    variable = u
  [../]
  [./test1]
    type = CoupledConvection
    variable = u
    velocity_vector = v
  [../]
  [./diff2]
    type = Diffusion
    variable = v
  [../]
  [./react]
    type = Reaction
    variable = u
  [../]
  [./forceu]
    type = BodyForce
    variable = u
    function = forcing_fnu
  [../]
  [./forcev]
    type = BodyForce
    variable = v
    function = forcing_fnv
  [../]
[]
[BCs]
  active = 'bc_u_tb bc_v bc_ul bc_ur bc_ut bc_ub'
  [./bc_u]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_v]
    type = FunctionDirichletBC
    variable = v
    function = slnv
    boundary = 'left right top bottom'
  [../]
  [./bc_u_lr]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_u_tb]
    type = CoupledKernelGradBC
    variable = u
    var2 = v
    vel = '0.1 0.1'
    boundary = 'top bottom left right'
  [../]
  [./bc_ul]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnul
    boundary = 'left'
  [../]
  [./bc_ur]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnur
    boundary = 'right'
  [../]
  [./bc_ut]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnut
    boundary = 'top'
  [../]
  [./bc_ub]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnub
    boundary = 'bottom'
  [../]
[]
[Preconditioning]
  active = ' '
  [./prec]
    type = SMP
    full = true
  [../]
[]
[Postprocessors]
  active='L2u L2v'
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2u]
    type = ElementL2Error
    variable = u
    function = slnu
  [../]
  [./L2v]
    type = ElementL2Error
    variable = v
    function = slnv
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
#  petsc_options = '-snes'
  nl_rel_tol = 1e-15
  nl_abs_tol = 1e-13
[]
[Outputs]
  execute_on = 'timestep_end'
[]
[Debug]
  show_var_residual_norms = true
[]
(modules/phase_field/test/tests/phase_field_crystal/PFCTrad/pfct_newton_split1_asm1_10.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 50
  ny = 50
  xmax = 8
  ymax = 8
[]
[Variables]
  [./n]
    [./InitialCondition]
      type = RandomIC
      min = -1
      max = 4
    [../]
  [../]
  [./u]
    scaling = 1e2
  [../]
  [./v]
    scaling = 1e1
  [../]
[]
[Kernels]
  [./ndot]
    type = TimeDerivative
    variable = n
  [../]
  [./n_bulk]
    type = CHBulkPFCTrad
    variable = n
  [../]
  [./u_term]
    type = MatDiffusion
    variable = n
    v = u
    diffusivity = C2
  [../]
  [./v_term]
    type = MatDiffusion
    variable = n
    v = v
    diffusivity = C4
  [../]
  [./u_rctn]
    type = Reaction
    variable = u
  [../]
  [./u_gradn]
    type = LaplacianSplit
    variable = u
    c = n
  [../]
  [./v_rctn]
    type = Reaction
    variable = v
  [../]
  [./v_gradu]
    type = LaplacianSplit
    variable = v
    c = u
  [../]
[]
[BCs]
  [./Periodic]
    [./all]
      auto_direction = 'x y'
    [../]
  [../]
[]
[Materials]
  [./PFCTrad]
    type = PFCTradMaterial
    order = 4
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  solve_type = 'NEWTON'
  l_max_its = 100
  l_tol = 1e-04
  nl_rel_tol = 1e-09
  nl_abs_tol = 1e-11
  splitting = 'nuv'
  petsc_options = '-snes_view'
  num_steps = 2
  dt = 0.1
[]
[Splits]
  [./nuv]
    splitting       = 'v nu'
    splitting_type  = schur
    schur_type      = full
    schur_pre       = Sp
    #petsc_options = '-dm_view'
  [../]
  [./nu]
    vars = 'n u'
    petsc_options = '-ksp_monitor'
    petsc_options_iname = '-ksp_gmres_restart -pc_type -pc_asm_nblocks -pc_asm_overlap  -sub_pc_type'
    petsc_options_value =  '              101      asm              10               1            lu'
  [../]
  [./v]
    vars = 'v'
    #petsc_options = '-ksp_monitor'
    petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_ksp_type -sub_pc_type -pc_asm_overlap'
    petsc_options_value =  'asm         101   preonly   lu      0'
    #full = true
  [../]
[]
[Outputs]
  exodus = true
[]
(test/tests/dgkernels/3d_diffusion_dg/3d_diffusion_dg_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  nx = 5
  ny = 5
  nz = 5
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  zmin = 0
  zmax = 1
  elem_type = HEX8
[]
[Variables]
  active = 'u'
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 0.5
    [../]
  [../]
[]
[Functions]
  active = 'forcing_fn exact_fn'
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  active = 'diff abs forcing'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  active = 'dg_diff'
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
[]
[BCs]
  active = 'all'
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3 4 5'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Postprocessors]
  active = 'h dofs l2_err'
  [./h]
    type = AverageElementSize
    execute_on = 'initial timestep_end'
  [../]
  [./dofs]
    type = NumDOFs
    execute_on = 'initial timestep_end'
  [../]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
    execute_on = 'initial timestep_end'
  [../]
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/misc/check_error/scalar_kernel_with_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[ScalarKernels]
  [./nope]
    type = ODETimeDerivative
    variable = u
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Transient
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/mortar/convergence-studies/gap-conductance/gap-conductance.i)
[Problem]
  error_on_jacobian_nonzero_reallocation = true
[]
[Mesh]
  second_order = true
  [./left_block]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 0
    xmax = 1
    ymin = 0
    ymax = 1
    nx = 2
    ny = 2
    elem_type = QUAD4
  [../]
  [./left_block_sidesets]
    type = RenameBoundaryGenerator
    input = left_block
    old_boundary_id = '0 1 2 3'
    new_boundary_name = 'lb_bottom lb_right lb_top lb_left'
  [../]
  [./left_block_id]
    type = SubdomainIDGenerator
    input = left_block_sidesets
    subdomain_id = 1
  [../]
  [./right_block]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 2
    xmax = 3
    ymin = 0
    ymax = 1
    nx = 2
    ny = 2
    elem_type = QUAD4
  [../]
  [./right_block_id]
    type = SubdomainIDGenerator
    input = right_block
    subdomain_id = 2
  [../]
  [right_block_change_boundary_id]
    type = RenameBoundaryGenerator
    input = right_block_id
    old_boundary_id = '0 1 2 3'
    new_boundary_id = '100 101 102 103'
  []
  [./combined]
    type = MeshCollectionGenerator
    inputs = 'left_block_id right_block_change_boundary_id'
  [../]
  [./block_rename]
    type = RenameBlockGenerator
    input = combined
    old_block_id = '1 2'
    new_block_name = 'left_block right_block'
  [../]
  [right_right_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = block_rename
    new_boundary = rb_right
    block = right_block
    normal = '1 0 0'
  []
  [right_left_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_right_sideset
    new_boundary = rb_left
    block = right_block
    normal = '-1 0 0'
  []
  [right_top_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_left_sideset
    new_boundary = rb_top
    block = right_block
    normal = '0 1 0'
  []
  [right_bottom_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_top_sideset
    new_boundary = rb_bottom
    block = right_block
    normal = '0 -1 0'
  []
  [secondary]
    input = right_bottom_sideset
    type = LowerDBlockFromSidesetGenerator
    sidesets = 'lb_right'
    new_block_id = '10001'
    new_block_name = 'secondary_lower'
  []
  [primary]
    input = secondary
    type = LowerDBlockFromSidesetGenerator
    sidesets = 'rb_left'
    new_block_id = '10000'
    new_block_name = 'primary_lower'
  []
[]
[Variables]
  [./T]
    block = 'left_block right_block'
    order = SECOND
  [../]
  [./lambda]
    block = 'secondary_lower'
    family = MONOMIAL
    order = CONSTANT
  [../]
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln_primal
    variable = T
    boundary = 'lb_bottom lb_top lb_left rb_bottom rb_right rb_top'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = 'left_block right_block'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = 'left_block right_block'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = 'left_block right_block'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = ''
  [../]
  [./exact_soln_primal]
    type = ParsedFunction
    value = ''
  [../]
  [exact_soln_lambda]
    type = ParsedFunction
    value = ''
  []
  [mms_secondary]
    type = ParsedFunction
    value = ''
  []
  [mms_primary]
    type = ParsedFunction
    value = ''
  []
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = GapHeatConductanceTest
    primary_boundary = rb_left
    secondary_boundary = lb_right
    primary_subdomain = primary_lower
    secondary_subdomain = secondary_lower
    secondary_variable = T
    variable = lambda
    secondary_gap_conductance = 1
    primary_gap_conductance = 1
    secondary_mms_function = mms_secondary
    primary_mms_function = mms_primary
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  petsc_options = '-snes_converged_reason'
  # petsc_options_iname = '-pc_type -pc_factor_mat_solver_type'
  # petsc_options_value = 'lu       superlu_dist'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre    boomeramg'
[]
[Outputs]
  exodus = true
  csv = true
  [dofmap]
    type = DOFMap
    execute_on = 'initial'
  []
[]
[Postprocessors]
  [L2lambda]
    type = ElementL2Error
    variable = lambda
    function = exact_soln_lambda
    execute_on = 'timestep_end'
    block = 'secondary_lower'
  []
  [L2u]
    type = ElementL2Error
    variable = T
    function = exact_soln_primal
    execute_on = 'timestep_end'
    block = 'left_block right_block'
  []
  [h]
    type = AverageElementSize
    block = 'left_block right_block'
  []
[]
(test/tests/mortar/mortar-q-points/test.i)
[Mesh]
  [file]
    type = FileMeshGenerator
    file = nodal_normals_test_offset_nonmatching_gap.e
  []
  [./primary]
    input = file
    type = LowerDBlockFromSidesetGenerator
    sidesets = '2'
    new_block_id = '20'
  [../]
  [./secondary]
    input = primary
    type = LowerDBlockFromSidesetGenerator
    sidesets = '1'
    new_block_id = '10'
  [../]
  uniform_refine = 2
[]
[Problem]
  kernel_coverage_check = false
[]
[Variables]
  [./T]
    block = '1 2'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = '1 2'
  [../]
  [./reaction]
    type = Reaction
    variable = T
    block = '1 2'
  [../]
[]
[Constraints]
  [./mortar]
    type = SpatiallyVaryingSource
    primary_boundary = 2
    secondary_boundary = 1
    primary_subdomain = 20
    secondary_subdomain = 10
    secondary_variable = T
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
[]
[Outputs]
  exodus = true
[]
(modules/phase_field/test/tests/phase_field_crystal/PFCTrad/pfct_newton_split1_asm5.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 50
  ny = 50
  xmax = 8
  ymax = 8
[]
[Variables]
  [./n]
    [./InitialCondition]
      type = RandomIC
      min = -1
      max = 4
    [../]
  [../]
  [./u]
    scaling = 1e2
  [../]
  [./v]
    scaling = 1e1
  [../]
[]
[Kernels]
  [./ndot]
    type = TimeDerivative
    variable = n
  [../]
  [./n_bulk]
    type = CHBulkPFCTrad
    variable = n
  [../]
  [./u_term]
    type = MatDiffusion
    variable = n
    v = u
    diffusivity = C2
  [../]
  [./v_term]
    type = MatDiffusion
    variable = n
    v = v
    diffusivity = C4
  [../]
  [./u_rctn]
    type = Reaction
    variable = u
  [../]
  [./u_gradn]
    type = LaplacianSplit
    variable = u
    c = n
  [../]
  [./v_rctn]
    type = Reaction
    variable = v
  [../]
  [./v_gradu]
    type = LaplacianSplit
    variable = v
    c = u
  [../]
[]
[BCs]
  [./Periodic]
    [./all]
      auto_direction = 'x y'
    [../]
  [../]
[]
[Materials]
  [./PFCTrad]
    type = PFCTradMaterial
    order = 4
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  solve_type = 'NEWTON'
  l_max_its = 100
  l_tol = 1e-04
  nl_rel_tol = 1e-09
  nl_abs_tol = 1e-11
  splitting = 'nuv'
  petsc_options = '-snes_view'
  num_steps = 2
  dt = 0.1
[]
[Splits]
  [./nuv]
    splitting       = 'v nu'
    splitting_type  = schur
    schur_type      = full
    schur_pre       = Sp
    #petsc_options = '-dm_view'
  [../]
  [./nu]
    vars = 'n u'
    petsc_options = '-ksp_monitor'
    petsc_options_iname = '-ksp_gmres_restart -pc_type -pc_asm_overlap  -sub_pc_type'
    petsc_options_value =  '              101      asm               5            lu'
  [../]
  [./v]
    vars = 'v'
    #petsc_options = '-ksp_monitor'
    petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_ksp_type -sub_pc_type -pc_asm_overlap'
    petsc_options_value =  'asm         101   preonly   lu      0'
    #full = true
  [../]
[]
[Outputs]
  execute_on = 'initial timestep_end linear'
  exodus = true
[]
(test/tests/mortar/gap-conductance-2d-non-conforming/gap-conductance.i)
[Mesh]
  [file]
    type = FileMeshGenerator
    file = nodal_normals_test_offset_nonmatching_gap.e
  []
  [./primary]
    input = file
    type = LowerDBlockFromSidesetGenerator
    sidesets = '2'
    new_block_id = '20'
  [../]
  [./secondary]
    input = primary
    type = LowerDBlockFromSidesetGenerator
    sidesets = '1'
    new_block_id = '10'
  [../]
[]
[Problem]
  kernel_coverage_check = false
[]
[Variables]
  [./T]
    block = '1 2'
  [../]
  [./lambda]
    block = '10'
  [../]
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln
    variable = T
    boundary = '3 4 5 6 7 8'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = '1 2'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = '1 2'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = '1 2'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = '-4 + x^2 + y^2'
  [../]
  [./exact_soln]
    type = ParsedFunction
    value = 'x^2 + y^2'
  [../]
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = GapHeatConductanceTest
    primary_boundary = 2
    secondary_boundary = 1
    primary_subdomain = 20
    secondary_subdomain = 10
    variable = lambda
    secondary_variable = T
  [../]
[]
[Materials]
  [constant]
    type = ADGenericConstantMaterial
    prop_names = 'gap_conductance'
    prop_values = '.03'
    block = '1 2'
  []
  [./ssm]
    type = SpatialStatefulMaterial
    block = '1 2'
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  petsc_options_iname = '-pc_type -snes_linesearch_type'
  petsc_options_value = 'lu       basic'
[]
[Outputs]
  exodus = true
  [dofmap]
    type = DOFMap
    execute_on = 'initial'
  []
[]
(test/tests/kernels/hfem/neumann.i)
[Mesh]
  [square]
    type = GeneratedMeshGenerator
    nx = 3
    ny = 3
    dim = 2
  []
  build_all_side_lowerd_mesh = true
[]
[Variables]
  [u]
    order = THIRD
    family = MONOMIAL
    block = 0
  []
  [lambda]
    order = CONSTANT
    family = MONOMIAL
    block = INTERNAL_SIDE_LOWERD_SUBDOMAIN
  []
[]
[Kernels]
  [diff]
    type = MatDiffusion
    variable = u
    diffusivity = '1'
    block = 0
  []
  [reaction]
    type = Reaction
    variable = u
    rate = '1'
    block = 0
  []
  [source]
    type = BodyForce
    variable = u
    value = '1'
    block = 0
  []
[]
[DGKernels]
  [surface]
    type = HFEMDiffusion
    variable = u
    lowerd_variable = lambda
  []
[]
[BCs]
  [all]
    type = NeumannBC
    boundary = 'left right top bottom'
    variable = u
  []
[]
[Postprocessors]
  [intu]
    type = ElementIntegralVariablePostprocessor
    variable = u
    block = 0
  []
  [lambdanorm]
    type = ElementL2Norm
    variable = lambda
    block = INTERNAL_SIDE_LOWERD_SUBDOMAIN
  []
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_mat_solver_type'
  petsc_options_value = 'lu       basic                 mumps'
[]
[Outputs]
  [out]
    # we hide lambda because it may flip sign due to element
    # renumbering with distributed mesh
    type = Exodus
    hide = lambda
  []
  csv = true
[]
(test/tests/misc/check_error/scalar_aux_kernel_with_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[AuxScalarKernels]
  [./nope]
    type = ConstantScalarAux
    variable = u
    value = 11
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(modules/phase_field/test/tests/phase_field_crystal/PFCTrad/PFCTrad_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 50
  ny = 50
  xmax = 8
  ymax = 8
[]
[Variables]
  [./n]
    [./InitialCondition]
      type = RandomIC
      min = -1
      max = 4
    [../]
  [../]
  [./u]
    scaling = 1e2
  [../]
  [./v]
    scaling = 1e1
  [../]
[]
[Kernels]
  [./ndot]
    type = TimeDerivative
    variable = n
  [../]
  [./n_bulk]
    type = CHBulkPFCTrad
    variable = n
  [../]
  [./u_term]
    type = MatDiffusion
    variable = n
    v = u
    diffusivity = C2
  [../]
  [./v_term]
    type = MatDiffusion
    variable = n
    v = v
    diffusivity = C4
  [../]
  [./u_rctn]
    type = Reaction
    variable = u
  [../]
  [./u_gradn]
    type = LaplacianSplit
    variable = u
    c = n
  [../]
  [./v_rctn]
    type = Reaction
    variable = v
  [../]
  [./v_gradu]
    type = LaplacianSplit
    variable = v
    c = u
  [../]
[]
[BCs]
  [./Periodic]
    [./all]
      auto_direction = 'x y'
    [../]
  [../]
[]
[Materials]
  [./PFCTrad]
    type = PFCTradMaterial
    order = FOURTH
  [../]
[]
[Preconditioning]
  active = 'SMP'
  [./SMP]
    type = SMP
    full = true
    off_diag_row    = 'u n n v'
    off_diag_column = 'n u v u'
  [../]
  [./FDP]
    type = FDP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  solve_type = NEWTON
  # petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  # petsc_options_value = 'hypre boomeramg 101'
  # petsc_options_iname = -pc_type
  # petsc_options_value = lu
  petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_ksp_type -sub_pc_type -pc_asm_overlap'
  petsc_options_value = 'asm         101   preonly   lu      5'
  l_max_its = 100
  l_tol = 1e-04
  nl_rel_tol = 1e-09
  nl_abs_tol = 1e-11
  num_steps = 2
  dt = 0.1
[]
[Outputs]
  exodus = true
[]
(modules/ray_tracing/test/tests/userobjects/cone_ray_study/cone_ray_study.i)
[Mesh]
  [gmg]
    type = GeneratedMeshGenerator
    dim = 2
    nx = 10
    ny = 10
    xmax = 5
    ymax = 5
  []
[]
[Variables/u]
[]
[Kernels]
  [reaction]
    type = Reaction
    variable = u
  []
  [diffusion]
    type = Diffusion
    variable = u
  []
[]
[Executioner]
  type = Steady
  solve_type = PJFNK
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[UserObjects/study]
  type = ConeRayStudy
  start_points = '1 1.5 0'
  directions = '2 1 0'
  half_cone_angles = 2.5
  ray_data_name = weight
  # Must be set with RayKernels that
  # contribute to the residual
  execute_on = PRE_KERNELS
  # For outputting Rays
  always_cache_traces = true
[]
[RayBCs]
  [reflect]
    type = ReflectRayBC
    boundary = 'right'
  []
  [kill_rest]
    type = KillRayBC
    boundary = 'top'
  []
[]
[RayKernels/line_source]
  type = LineSourceRayKernel
  variable = u
  # Scale by the weights in the ConeRayStudy
  ray_data_factor_names = weight
[]
[Outputs]
  exodus = true
  [rays]
    type = RayTracingExodus
    study = study
    execute_on = FINAL
  []
[]
[Adaptivity]
  steps = 0 # 6 for pretty pictures
  marker = marker
  initial_marker = marker
  max_h_level = 6
  [Indicators/indicator]
    type = GradientJumpIndicator
    variable = u
  []
  [Markers/marker]
    type = ErrorFractionMarker
    indicator = indicator
    coarsen = 0.25
    refine = 0.5
  []
[]
(test/tests/time_integrators/implicit-euler/ie-monomials.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
  [../]
[]
[ICs]
  [./u_ic]
    type = ConstantIC
    variable = u
    value = 1
  [../]
[]
[Functions]
  active = 'forcing_fn exact_fn'
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./time]
    type = TimeDerivative
    variable = u
  [../]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
    solve_type = 'NEWTON'
  [../]
[]
[Executioner]
  type = Transient
  nl_rel_tol = 1e-10
  num_steps = 1
[]
[Outputs]
  execute_on = 'timestep_end'
  console = true
[]
(test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
[]
[Variables]
  [power_density]
    family = L2_LAGRANGE
    order = FIRST
  []
[]
[Functions]
  [pwr_func]
    type = ParsedFunction
    value = '1e3*x*(1-x)+5e2'
  []
[]
[Kernels]
  [diff]
    type = Reaction
    variable = power_density
  []
  [coupledforce]
    type = BodyForce
    variable = power_density
    function = pwr_func
  []
[]
[Postprocessors]
  [pwr_avg]
    type = ElementAverageValue
    block = '0'
    variable = power_density
    execute_on = 'initial timestep_end'
  []
[]
[Executioner]
  type = Steady
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart '
  petsc_options_value = 'hypre boomeramg 100'
  nl_abs_tol = 1e-8
  nl_rel_tol = 1e-12
[]
[MultiApps]
  [sub]
    type = FullSolveMultiApp
    app_type = MooseTestApp
    positions = '0 0 0'
    input_files  = sub_L2_Lagrange.i
    execute_on = 'timestep_end'
  []
[]
[Transfers]
  [p_to_sub]
    type = MultiAppMeshFunctionTransfer
    direction = to_multiapp
    source_variable = power_density
    variable = power_density
    multi_app = sub
    execute_on = 'timestep_end'
  []
[]
[Outputs]
  exodus = true
  perf_graph = true
[]
(test/tests/kernels/material_coupled_force/material_coupled_force.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = 0
  xmax = 1
  nx = 10
  ymin = 0
  ymax = 2
  ny = 10
[]
[Variables]
  [./u]
  [../]
[]
[AuxVariables]
  [./v1]
    initial_condition = 3
  [../]
  [./v2]
  [../]
[]
[ICs]
  [./v2_ic]
    type = FunctionIC
    variable = v2
    function = v2_func
  [../]
[]
[Functions]
  [./v2_func]
    type = ParsedFunction
    value = 'x + 2 * y'
  [../]
  [./reference]
    type = ParsedFunction
    value = '3 * (-1) * 3.5 + (x + 2 * y) * 15 * 1.2'
  [../]
[]
[Materials]
  [./mat]
    type = GenericConstantMaterial
    prop_names = 'm1 m2'
    prop_values = '-1 15'
  [../]
[]
[Kernels]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./coupled]
    type = MatCoupledForce
    variable = u
    v = 'v1 v2'
    coef = '3.5 1.2'
    material_properties = 'm1 m2'
  [../]
[]
[Postprocessors]
  [./error]
    type = ElementL2Error
    function = reference
    variable = u
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
[]
(test/tests/misc/check_error/dg_kernel_with_aux_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[DGKernels]
  [./nope]
    type = DGDiffusion
    variable = v
    epsilon = -1
    sigma = 6
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/dgkernels/2d_diffusion_dg/no_mallocs_with_action.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[AuxVariables]
  [v]
    order = FIRST
    family = MONOMIAL
  []
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGDiffusionAction]
  variable = u
  epsilon = -1
  sigma = 6
  # We couple in an auxiliary variable in order to ensure that we've properly
  # ghosted  both non-linear and auxiliary solution vectors
  coupled_var = v
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
  csv = true
  [console]
    type = Console
    system_info = 'framework mesh aux nonlinear relationship execution'
  []
[]
[Problem]
  error_on_jacobian_nonzero_reallocation = true
[]
[Postprocessors]
  active = 'num_rm'
  [num_rm]
    type = NumRelationshipManagers
  []
  [num_internal_sides]
    type = NumInternalSides
  []
[]
(test/tests/dgkernels/2d_diffusion_dg/dg_stateful.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Materials]
  [./stateful]
    type = StatefulMaterial
    initial_diffusivity = 1
    boundary = 'left'
  [../]
  [./general]
    type = GenericConstantMaterial
    block = '0'
    prop_names = 'dummy'
    prop_values = '1'
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1e-10
[]
(test/tests/dgkernels/2d_diffusion_dg/no_functor_additions.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[AuxVariables]
  [v]
    order = FIRST
    family = MONOMIAL
  []
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [regular_dg_diffusion]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  []
[]
[DGDiffusionAction]
  variable = u
  kernels_to_add = 'COUPLED'
  coupled_var = v
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
  csv = true
  [console]
    type = Console
    system_info = 'framework mesh aux nonlinear relationship execution'
  []
[]
[Problem]
  error_on_jacobian_nonzero_reallocation = true
[]
[Postprocessors]
  [num_rm]
    type = NumRelationshipManagers
  []
[]
(test/tests/executioners/solve_type_linear/linear_with_full_smp.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 5
  ny = 5
[]
[Variables]
  [u]
  []
  [v]
  []
[]
[Kernels]
  [u_diffusion]
    type = Diffusion
    variable = u
  []
  [v_diffusion]
    type = Diffusion
    variable = v
  []
  [u_reaction]
    type = Reaction
    variable = u
  []
  [v_reaction]
    type = Reaction
    variable = v
  []
  [u_force]
    type = BodyForce
    variable = u
  []
  [v_force]
    type = CoupledForce
    variable = v
    v = u
  []
[]
[Executioner]
  type = Steady
  solve_type = LINEAR
[]
[Outputs]
  exodus = true
[]
(test/tests/mortar/continuity-2d-non-conforming/sequencing-stateful-soln-continuity.i)
[Mesh]
  second_order = true
  [file]
    type = FileMeshGenerator
    file = nodal_normals_test_offset_nonmatching_gap.e
  []
  [./primary]
    input = file
    type = LowerDBlockFromSidesetGenerator
    sidesets = '2'
    new_block_id = '20'
  [../]
  [./secondary]
    input = primary
    type = LowerDBlockFromSidesetGenerator
    sidesets = '1'
    new_block_id = '10'
  [../]
[]
[Variables]
  [./T]
    block = '1 2'
    order = SECOND
  [../]
  [./lambda]
    block = '10'
  [../]
[]
[AuxVariables]
  [ssm]
    order = CONSTANT
    family = MONOMIAL
    block = '1 2'
  []
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln
    variable = T
    boundary = '3 4 5 6 7 8'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = '1 2'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = '1 2'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = '1 2'
  [../]
[]
[AuxKernels]
  [ssm]
    type = MaterialRealAux
    variable = ssm
    property = diffusivity
    block = '1 2'
  []
[]
[Materials]
  [./ssm]
    type = SpatialStatefulMaterial
    block = '1 2'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = '-4 + x^2 + y^2'
  [../]
  [./exact_soln]
    type = ParsedFunction
    value = 'x^2 + y^2'
  [../]
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = EqualValueConstraint
    primary_boundary = 2
    secondary_boundary = 1
    primary_subdomain = 20
    secondary_subdomain = 10
    variable = lambda
    secondary_variable = T
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  nl_abs_tol = 1e-12
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_shift_type -pc_factor_shift_amount'
  petsc_options_value = 'lu       basic                 NONZERO               1e-15'
  num_grids = 2
[]
[Outputs]
  exodus = true
[]
[Adaptivity]
  steps = 1
  marker = uniform
  [Markers]
    [uniform]
      type = UniformMarker
      mark = refine
    []
  []
[]
(modules/phase_field/test/tests/SimpleACInterface/SimpleCoupledACInterface.i)
#
# Test the coupled Allen-Cahn Bulk kernel
#
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  nz = 0
  xmin = 0
  xmax = 50
  ymin = 0
  ymax = 50
  zmin = 0
  zmax = 50
  elem_type = QUAD4
  uniform_refine = 1
[]
[Variables]
  [./w]
  [../]
  [./eta]
    order = FIRST
    family = LAGRANGE
    [./InitialCondition]
      type = SmoothCircleIC
      x1 = 25.0
      y1 = 25.0
      radius = 6.0
      invalue = 1.0
      outvalue = 0.0
      int_width = 5.0
    [../]
  [../]
[]
[Kernels]
  [./detadt]
    type = TimeDerivative
    variable = eta
  [../]
  [./ACBulk]
    type = AllenCahn
    variable = eta
    f_name = F
  [../]
  [./CoupledBulk]
    type = MatReaction
    variable = eta
    v = w
  [../]
  [./W]
    type = Reaction
    variable = w
  [../]
  [./CoupledACInterface]
    type = SimpleCoupledACInterface
    variable = w
    v = eta
    kappa_name = 1
  [../]
[]
[Materials]
  [./consts]
    type = GenericConstantMaterial
    prop_names  = 'L'
    prop_values = '1'
  [../]
  [./free_energy]
    type = DerivativeParsedMaterial
    f_name = F
    args = 'eta'
    function = 'eta^2 * (1-eta)^2'
    derivative_order = 2
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  scheme = 'bdf2'
  solve_type = 'PJFNK'
  l_max_its = 15
  l_tol = 1.0e-4
  nl_max_its = 10
  nl_rel_tol = 1.0e-11
  start_time = 0.0
  num_steps = 2
  dt = 2
[]
[Debug]
  show_var_residual_norms = true
[]
[Outputs]
  hide = w
  exodus = true
[]
(modules/ray_tracing/test/tests/userobjects/cone_ray_study/cone_ray_study_3d.i)
[Mesh]
  [gmg]
    type = GeneratedMeshGenerator
    dim = 3
    nx = 5
    ny = 5
    nz = 2
    xmax = 5
    ymax = 5
    zmax = 2
  []
[]
[Variables/u]
[]
[Kernels]
  [reaction]
    type = Reaction
    variable = u
  []
  [diffusion]
    type = Diffusion
    variable = u
  []
[]
[UserObjects/study]
  type = ConeRayStudy
  start_points = '2.5 2.5 0'
  directions = '0 0 1'
  half_cone_angles = 10
  # Must be set with RayKernels that
  # contribute to the residual
  execute_on = PRE_KERNELS
  # For outputting Rays
  always_cache_traces = true
  ray_data_name = weight
[]
[RayKernels/null]
  type = NullRayKernel
[]
# Rays only hit the front surface
[RayBCs/kill]
  type = KillRayBC
  boundary = 'front'
[]
[RayKernels/line_source]
  type = LineSourceRayKernel
  variable = u
  # Scale by the weights in the ConeRayStudy
  ray_data_factor_names = weight
[]
[Executioner]
  type = Steady
  solve_type = PJFNK
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Outputs]
  exodus = true
  [rays]
    type = RayTracingExodus
    study = study
    execute_on = FINAL
  []
[]
[Adaptivity]
  steps = 0 # 6 for pretty pictures
  marker = marker
  initial_marker = marker
  max_h_level = 6
  [Indicators/indicator]
    type = GradientJumpIndicator
    variable = u
  []
  [Markers/marker]
    type = ErrorFractionMarker
    indicator = indicator
    coarsen = 0.25
    refine = 0.5
  []
[]
(test/tests/dgkernels/dg_displacement/dg_displacement.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 10
  ny = 10
  displacements = 'disp_x disp_y'
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
  [../]
[]
[AuxVariables]
  [./disp_x]
  [../]
  [./disp_y]
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
  [./disp_func]
    type = ParsedFunction
    value = x
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
    use_displaced_mesh = true
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
  solve_type = PJFNK
  nl_rel_tol = 1e-10
[]
[Outputs]
  execute_on = 'timestep_end'
  file_base = out
  exodus = true
[]
[ICs]
  [./disp_x_ic]
    function = disp_func
    variable = disp_x
    type = FunctionIC
  [../]
[]
(test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_conservative.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
[]
[Variables]
  [power_density]
    family = L2_LAGRANGE
    order = FIRST
  []
[]
[Functions]
  [pwr_func]
    type = ParsedFunction
    value = '1e3*x*(1-x)+5e2'
  []
[]
[Kernels]
  [diff]
    type = Reaction
    variable = power_density
  []
  [coupledforce]
    type = BodyForce
    variable = power_density
    function = pwr_func
  []
[]
[Postprocessors]
  [pwr_avg]
    type = ElementAverageValue
    block = '0'
    variable = power_density
    execute_on = 'initial timestep_end'
  []
[]
[Executioner]
  type = Steady
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart '
  petsc_options_value = 'hypre boomeramg 100'
  nl_abs_tol = 1e-8
  nl_rel_tol = 1e-12
[]
[Postprocessors]
  [./from_postprocessor]
    type = ElementIntegralVariablePostprocessor
    variable = power_density
  [../]
[]
[MultiApps]
  [sub]
    type = FullSolveMultiApp
    app_type = MooseTestApp
    positions = '0 0 0'
    input_files  = sub_L2_Lagrange_conservative.i
    execute_on = 'timestep_end'
  []
[]
[Transfers]
  [p_to_sub]
    type = MultiAppMeshFunctionTransfer
    direction = to_multiapp
    source_variable = power_density
    variable = power_density
    multi_app = sub
    execute_on = 'timestep_end'
    from_postprocessors_to_be_preserved  = 'from_postprocessor'
    to_postprocessors_to_be_preserved  = 'pwr_density'
  []
[]
[Outputs]
  exodus = true
  perf_graph = true
[]
(test/tests/kernels/hfem/dirichlet.i)
[Mesh]
  [square]
    type = GeneratedMeshGenerator
    nx = 3
    ny = 3
    dim = 2
  []
  build_all_side_lowerd_mesh = true
[]
[Variables]
  [u]
    order = THIRD
    family = MONOMIAL
    block = 0
  []
  [uhat]
    order = CONSTANT
    family = MONOMIAL
    block = BOUNDARY_SIDE_LOWERD_SUBDOMAIN
  []
  [lambda]
    order = CONSTANT
    family = MONOMIAL
    block = INTERNAL_SIDE_LOWERD_SUBDOMAIN
  []
  [lambdab]
    order = CONSTANT
    family = MONOMIAL
    block = BOUNDARY_SIDE_LOWERD_SUBDOMAIN
  []
[]
[AuxVariables]
  [v]
    order = CONSTANT
    family = MONOMIAL
    block = 0
    initial_condition = '1'
  []
[]
[Kernels]
  [diff]
    type = MatDiffusion
    variable = u
    diffusivity = '1'
    block = 0
  []
  [source]
    type = CoupledForce
    variable = u
    v = v
    coef = '1'
    block = 0
  []
  [reaction]
    type = Reaction
    variable = uhat
    rate = '1'
    block = BOUNDARY_SIDE_LOWERD_SUBDOMAIN
  []
  [uhat_coupled]
    type = CoupledForce
    variable = uhat
    block = BOUNDARY_SIDE_LOWERD_SUBDOMAIN
    v = lambdab
    coef = '1'
  []
[]
[DGKernels]
  [surface]
    type = HFEMDiffusion
    variable = u
    lowerd_variable = lambda
  []
[]
[BCs]
  [all]
    type = HFEMDirichletBC
    boundary = 'left right top bottom'
    variable = u
    lowerd_variable = lambdab
    uhat = uhat
  []
[]
[Postprocessors]
  [intu]
    type = ElementIntegralVariablePostprocessor
    variable = u
    block = 0
  []
  [lambdanorm]
    type = ElementL2Norm
    variable = lambda
    block = INTERNAL_SIDE_LOWERD_SUBDOMAIN
  []
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_mat_solver_type'
  petsc_options_value = 'lu       basic                 mumps'
[]
[Outputs]
  [out]
    # we hide lambda because it may flip sign due to element
    # renumbering with distributed mesh
    type = Exodus
    hide = lambda
  []
  csv = true
[]
(modules/phase_field/test/tests/phase_field_kernels/CoupledAllenCahn.i)
#
# Test the coupled Allen-Cahn Bulk kernel
#
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 10
  ny = 10
  xmax = 12
  ymax = 12
  elem_type = QUAD4
[]
[Variables]
  [./w]
  [../]
  [./eta]
    order = FIRST
    family = LAGRANGE
    [./InitialCondition]
      type = SmoothCircleIC
      x1 = 0.0
      y1 = 0.0
      radius = 6.0
      invalue = 0.9
      outvalue = 0.1
      int_width = 3.0
    [../]
  [../]
[]
[Kernels]
  [./detadt]
    type = TimeDerivative
    variable = eta
  [../]
  [./ACBulk]
    type = CoupledAllenCahn
    variable = w
    v = eta
    f_name = F
  [../]
  [./W]
    type = Reaction
    variable = w
  [../]
  [./CoupledBulk]
    type = MatReaction
    variable = eta
    v = w
  [../]
  [./ACInterface]
    type = ACInterface
    variable = eta
    kappa_name = 1
  [../]
[]
[Materials]
  [./consts]
    type = GenericConstantMaterial
    prop_names  = 'L'
    prop_values = '1'
  [../]
  [./free_energy]
    type = DerivativeParsedMaterial
    f_name = F
    args = 'eta'
    function = '2 * eta^2 * (1-eta)^2 - 0.2*eta'
    derivative_order = 2
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  scheme = 'bdf2'
  solve_type = 'PJFNK'
  l_max_its = 15
  l_tol = 1.0e-4
  nl_max_its = 10
  nl_rel_tol = 1.0e-11
  start_time = 0.0
  num_steps = 2
  dt = 0.5
[]
[Debug]
  show_var_residual_norms = true
[]
[Outputs]
  hide = w
  file_base = AllenCahn_out
  exodus = true
[]
(test/tests/auxkernels/time_derivative/time_derivative.i)
# This test is setting the values of an auxiliary varaible f according to the
# function f_fn. This function is time dependent.
#
# Then the f_dot is brought as a forcing function into the L2 projection, thus
# the resulting values of u should give the f_dot which is known.
#
# NOTE: There is no need to do more than 2 time steps, because f_dot is constant
# in time. That means that the projection is exactly the same for the second time
# step as is for the first time step. The solver has nothing to do and you can
# see that on the "zero" initial non-linear residual.
#
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 2
  ny = 2
[]
[Functions]
  [./f_fn]
    type = ParsedFunction
    value = t*(x+y)
  [../]
  [./f_dot_fn]
    type = ParsedFunction
    value = (x+y)
  [../]
[]
[Variables]
  [./u]
  [../]
[]
[Kernels]
  [./l2_proj]
    type = Reaction
    variable = u
  [../]
  [./dck]
    type = DotCouplingKernel
    variable = u
    v = f
  [../]
[]
[AuxVariables]
  [./f]
  [../]
[]
[AuxKernels]
  [./f_k]
    type = FunctionAux
    variable = f
    function = f_fn
  [../]
[]
[Postprocessors]
  [./l2_error]
    type = ElementL2Error
    variable = u
    function = f_dot_fn
  [../]
[]
[Executioner]
  type = Transient
  dt = 0.1
  num_steps = 2
  nl_abs_tol = 1.e-15
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
[]
(test/tests/time_integrators/explicit-euler/ee-1d-quadratic-neumann.i)
[GlobalParams]
  implicit = false
[]
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 10
  elem_type = EDGE3
[]
[Functions]
  [./ic]
    type = ParsedFunction
    value = 0
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = x*x-2*t+t*x*x
  [../]
  [./exact_fn]
    type = ParsedFunction
    value = t*x*x
  [../]
  [./left_bc_fn]
    type = ParsedFunction
    value = -t*2*x
  [../]
  [./right_bc_fn]
    type = ParsedFunction
    value = t*2*x
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = LAGRANGE
    [./InitialCondition]
      type = FunctionIC
      function = ic
    [../]
  [../]
[]
[Kernels]
  [./td]
    type = TimeDerivative
    variable = u
    implicit = true
  [../]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./ffn]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./left]
    type = FunctionNeumannBC
    variable = u
    boundary = '0'
    function = left_bc_fn
  [../]
  [./right]
    type = FunctionNeumannBC
    variable = u
    boundary = '1'
    function = right_bc_fn
  [../]
[]
[Postprocessors]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Executioner]
  type = Transient
  scheme = 'explicit-euler'
  solve_type = 'LINEAR'
  l_tol = 1e-12
  start_time = 0.0
  num_steps = 10
  dt = 0.001
[]
[Outputs]
  exodus = true
  [./console]
    type = Console
    max_rows = 10
  [../]
[]
(test/tests/misc/check_error/coupled_grad_without_declare.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fnu]
    type = ParsedFunction
    value = -5.8*(x+y)+x*x*x-x+y*y*y-y
  [../]
  [./forcing_fnv]
    type = ParsedFunction
    value = -4
  [../]
  [./slnu]
    type = ParsedGradFunction
    value = x*x*x-x+y*y*y-y
    grad_x = 3*x*x-1
    grad_y = 3*y*y-1
  [../]
  [./slnv]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
  #NeumannBC functions
  [./bc_fnut]
    type = ParsedFunction
    value = 3*y*y-1
  [../]
  [./bc_fnub]
    type = ParsedFunction
    value = -3*y*y+1
  [../]
  [./bc_fnul]
    type = ParsedFunction
    value = -3*x*x+1
  [../]
  [./bc_fnur]
    type = ParsedFunction
    value = 3*x*x-1
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
  [./v]
    order = SECOND
    family = LAGRANGE
  [../]
[]
[Kernels]
  active = 'diff1 diff2 test1 forceu forcev react'
  [./diff1]
    type = Diffusion
    variable = u
  [../]
  [./test1]
    type = CoupledConvection
    variable = u
    velocity_vector = v
    # Trigger the error in this class
    test_coupling_declaration_error = true
  [../]
  [./diff2]
    type = Diffusion
    variable = v
  [../]
  [./react]
    type = Reaction
    variable = u
  [../]
  [./forceu]
    type = BodyForce
    variable = u
    function = forcing_fnu
  [../]
  [./forcev]
    type = BodyForce
    variable = v
    function = forcing_fnv
  [../]
[]
[BCs]
  active = 'bc_u_tb bc_v bc_ul bc_ur bc_ut bc_ub'
  [./bc_u]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_v]
    type = FunctionDirichletBC
    variable = v
    function = slnv
    boundary = 'left right top bottom'
  [../]
  [./bc_u_lr]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_u_tb]
    type = CoupledKernelGradBC
    variable = u
    var2 = v
    vel = '0.1 0.1'
    boundary = 'top bottom left right'
  [../]
  [./bc_ul]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnul
    boundary = 'left'
  [../]
  [./bc_ur]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnur
    boundary = 'right'
  [../]
  [./bc_ut]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnut
    boundary = 'top'
  [../]
  [./bc_ub]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnub
    boundary = 'bottom'
  [../]
[]
[Preconditioning]
  active = ' '
  [./prec]
    type = SMP
    full = true
  [../]
[]
[Postprocessors]
  active='L2u L2v'
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2u]
    type = ElementL2Error
    variable = u
    function = slnu
  [../]
  [./L2v]
    type = ElementL2Error
    variable = v
    function = slnv
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
#  petsc_options = '-snes'
  nl_rel_tol = 1e-15
  nl_abs_tol = 1e-13
[]
[Outputs]
  execute_on = 'timestep_end'
[]
[Debug]
  show_var_residual_norms = true
[]
(modules/phase_field/test/tests/phase_field_crystal/PFCEnergyDensity/auxkernel.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 15
  ny = 15
  nz = 0
  xmax = 6
  ymax = 6
  zmax = 0
[]
[Variables]
  [./n]
    [./InitialCondition]
      type = RandomIC
      min = 0.0
      max = 0.1
    [../]
  [../]
  [./u]
    scaling = 1e2
  [../]
  [./v]
    scaling = 1e1
  [../]
[]
[AuxVariables]
  [./ed]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./edrff0]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./edrff1]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./edrff2]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[Kernels]
  [./ndot]
    type = TimeDerivative
    variable = n
  [../]
  [./n_bulk]
    type = CHBulkPFCTrad
    variable = n
  [../]
  [./u_term]
    type = MatDiffusion
    variable = n
    v = u
    diffusivity = C2
  [../]
  [./v_term]
    type = MatDiffusion
    variable = n
    v = v
    diffusivity = C4
  [../]
  [./u_rctn]
    type = Reaction
    variable = u
  [../]
  [./u_gradn]
    type = LaplacianSplit
    variable = u
    c = n
  [../]
  [./v_rctn]
    type = Reaction
    variable = v
  [../]
  [./v_gradu]
    type = LaplacianSplit
    variable = v
    c = u
  [../]
[]
[AuxKernels]
  [./Energy_n]
    type = PFCEnergyDensity
    execute_on = 'initial timestep_end'
    variable = ed
    v = 'n u v'
  [../]
  [./Energy_rff0]
    type = PFCRFFEnergyDensity
    execute_on = 'initial timestep_end'
    variable = edrff0
    log_approach = tolerance
    v = 'n u v'
  [../]
  [./Energy_rff1]
    type = PFCRFFEnergyDensity
    execute_on = 'initial timestep_end'
    variable = edrff1
    log_approach = cancelation
    v = 'n u v'
  [../]
  [./Energy_rff2]
    type = PFCRFFEnergyDensity
    execute_on = 'initial timestep_end'
    variable = edrff2
    log_approach = expansion
    v = 'n u v'
  [../]
[]
[BCs]
  [./Periodic]
    [./all]
      auto_direction = 'x y'
    [../]
  [../]
[]
[Materials]
  [./PFCTrad]
    type = PFCTradMaterial
    order = FOURTH
  [../]
[]
[Postprocessors]
  [./Total_free_energy]
    type = PFCElementEnergyIntegral
    variable = ed
    execute_on = 'initial timestep_end'
  [../]
[]
[Preconditioning]
  active = 'SMP'
  [./SMP]
    type = SMP
    full = true
    off_diag_row = 'u n n v'
    off_diag_column = 'n u v u'
  [../]
  [./FDP]
    type = FDP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  solve_type = NEWTON
  # petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  # petsc_options_value = 'hypre boomeramg 101'
  # petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_ksp_type -sub_pc_type -pc_asm_overlap'
  # petsc_options_value = 'asm         101   preonly   lu      1'
  petsc_options_iname = '-pc_type '
  petsc_options_value = 'lu '
  l_max_its = 100
  l_tol = 1e-04
  nl_rel_tol = 1e-09
  nl_abs_tol = 1e-11
  num_steps = 1
  dt = 0.1
[]
[Outputs]
  exodus = true
  csv = true
[]
(test/tests/variables/fe_hier/hier-1-1d.i)
###########################################################
# This is a simple test demonstrating the use of the
# Hierarchic variable type.
#
# @Requirement F3.10
###########################################################
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 5
  elem_type = EDGE3
[]
[Functions]
  [./bc_fnl]
    type = ParsedFunction
    value = -1
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 1
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = x
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x
    grad_x = 1
  [../]
[]
# Hierarchic Variable type
[Variables]
  [./u]
    order = FIRST
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  nl_rel_tol = 1e-11
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/bcs/penalty_dirichlet_bc/function_penalty_dirichlet_bc_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = -4+x*x+y*y
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  active = 'bc_all'
  [./bc_all]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = solution
    boundary = 'top left right bottom'
    penalty = 1e6
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1e-14
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/materials/material/material_test_dg.i)
[Mesh]
  file = sq-2blk.e
[]
[Variables]
  active = 'u'
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[Functions]
  active = 'forcing_fn exact_fn'
  [./forcing_fn]
    type = ParsedFunction
    value = (x*x*x)-6.0*x
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = (x*x*x)
    grad_x = 3*x*x
    grad_y = 0
  [../]
[]
[Kernels]
  active = 'diff abs forcing'
  [./diff]
    type = MatDiffusionTest
    variable = u
    prop_name = matp
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  active = 'dgdiff'
  [./dgdiff]
    type = DGDiffusion
    variable = u
    sigma = 6
    epsilon = -1.0
    diff = matp
  [../]
[]
[BCs]
  active = 'all'
  [./all]
    type = DGMDDBC
    variable = u
    boundary = '1 2 3 4'
    function = exact_fn
    prop_name = matp
    sigma = 6
    epsilon = -1.0
  [../]
[]
[Materials]
  active = 'mat_1 mat_2'
  [./mat_1]
    type = MTMaterial
    block = 1
    value = 1
  [../]
  [./mat_2]
    type = MTMaterial
    block = 2
    value = 2
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  file_base = out_dg
  exodus = true
[]
(test/tests/variables/fe_hermite_convergence/hermite_converge_dirichlet.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 4
  ny = 4
  elem_type = QUAD4
  # This test will not work in parallel with DistributedMesh enabled
  # due to a bug in PeriodicBCs.
  parallel_type = replicated
[]
[Functions]
  [./bc_fn]
    type = ParsedGradFunction
    value = -sin(pi*x)*sin(pi*y)
    grad_x = -pi*cos(pi*x)*sin(pi*y)
    grad_y = -pi*sin(pi*x)*cos(pi*y)
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -2*pi*pi*sin(pi*x)*sin(pi*y)-sin(pi*x)*sin(pi*y)
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HERMITE
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./all]
    type = FunctionPenaltyDirichletBC
    variable = u
    boundary = 'bottom right top left'
    function = bc_fn
    penalty = 1e10
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = bc_fn
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = bc_fn
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = bc_fn
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  # We use higher-order quadrature to ensure that the forcing function
  # is integrated accurately.
  [./Quadrature]
    order=ELEVENTH
  [../]
[]
[Adaptivity]
  steps = 2
  marker = uniform
  [./Markers]
    [./uniform]
      type = UniformMarker
      mark = refine
    [../]
  [../]
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
  print_mesh_changed_info = true
[]
(test/tests/postprocessors/side_pps/side_pps_multi_bnd_test.i)
#
# Tests elemental PPS running on multiple blocks
#
[Mesh]
  type = StripeMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 3
  ny = 3
  elem_type = QUAD4
  stripes = 3
  # StripeMesh currently only works correctly with ReplicatedMesh.
  parallel_type = replicated
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = x*(y+1)
  [../]
[]
[Variables]
  [./u]
    family = MONOMIAL
    order = CONSTANT
  [../]
[]
[Kernels]
  [./uv]
    type = Reaction
    variable = u
  [../]
  [./fv]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[Postprocessors]
  [./int_0_1]
    type = SideIntegralVariablePostprocessor
    variable = u
    boundary = '0 1'
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  execute_on = 'timestep_end'
  [./out]
    type = Exodus
    elemental_as_nodal = true
  [../]
[]
(test/tests/time_integrators/actually_explicit_euler_verification/ee-1d-quadratic-neumann.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 10
  elem_type = EDGE3
[]
[Functions]
  [./ic]
    type = ParsedFunction
    value = 0
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = x*x-2*t+t*x*x
  [../]
  [./exact_fn]
    type = ParsedFunction
    value = t*x*x
  [../]
  [./left_bc_fn]
    type = ParsedFunction
    value = -t*2*x
  [../]
  [./right_bc_fn]
    type = ParsedFunction
    value = t*2*x
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = LAGRANGE
    [./InitialCondition]
      type = FunctionIC
      function = ic
    [../]
  [../]
[]
[Kernels]
  [./td]
    type = TimeDerivative
    variable = u
  [../]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]
    type = Reaction
    variable = u
  [../]
  [./ffn]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./left]
    type = FunctionNeumannBC
    variable = u
    boundary = '0'
    function = left_bc_fn
  [../]
  [./right]
    type = FunctionNeumannBC
    variable = u
    boundary = '1'
    function = right_bc_fn
  [../]
[]
[Postprocessors]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Executioner]
  type = Transient
  l_tol = 1e-12
  start_time = 0.0
  num_steps = 10
  dt = 0.001
  [./TimeIntegrator]
    type = ActuallyExplicitEuler
  [../]
[]
[Outputs]
  exodus = true
  [./console]
    type = Console
    max_rows = 10
  [../]
[]
(test/tests/transfers/multiapp_conservative_transfer/sub_nearest_point.i)
[Mesh]
  [gen]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 0.01 # to make sure the meshes don't align
    xmax = 0.49 # to make sure the meshes don't align
    ymax = 1
    nx = 10
    ny = 10
  []
  [block1]
    input = gen
    type = SubdomainBoundingBoxGenerator
    block_id = 1
    bottom_left = '0.2 0.2 0'
    top_right = '0.3 0.8 0'
  []
[]
[Variables]
  [sink]
    family = MONOMIAL
    order = CONSTANT
  []
[]
[Functions]
  [sink_func]
    type = ParsedFunction
    value = '5e2*x*(0.5-x)+5e1'
  []
[]
[Kernels]
  [reaction]
    type = Reaction
    variable = sink
  []
  [coupledforce]
    type = BodyForce
    variable = sink
    function = sink_func
  []
[]
[AuxVariables]
  [from_master]
    block = 1
  []
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Postprocessors]
  [sink]
    type = ElementIntegralVariablePostprocessor
    block = 1
    variable = sink
  []
  [from_master_pp]
    type = ElementIntegralVariablePostprocessor
    block = 1
    variable = from_master
    execute_on = 'transfer'
  []
[]
[Outputs]
  exodus = true
  [console]
    type = Console
    execute_on = 'timestep_end timestep_begin'
  []
[]
(test/tests/multiapps/grid-sequencing/fine.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  nx = 40
[]
[Variables]
  [./u]
  [../]
[]
[Kernels]
  [time]
    type = TimeDerivative
    variable = u
  []
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [rxn]
    type = Reaction
    variable = u
  []
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = left
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = right
    value = 1
  [../]
[]
[Executioner]
  type = Transient
  num_steps = 2
  dt = 1
  solve_type = 'PJFNK'
  petsc_options = '-snes_monitor_solution'
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
[]
[Outputs]
  exodus = true
[]
[MultiApps]
  [./coarse]
    type = TransientMultiApp
    app_type = MooseTestApp
    execute_on = timestep_begin
    positions = '0 0 0'
    input_files = coarse.i
  [../]
[]
[Transfers]
  [./mesh_function_begin]
    type = MultiAppMeshFunctionTransfer
    direction = from_multiapp
    multi_app = coarse
    source_variable = u
    variable = u
    execute_on = timestep_begin
  [../]
[]
(test/tests/auxkernels/time_derivative/coupled_aux_time_derivative.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 2
  ny = 2
[]
[Functions]
  [./f_fn]
    type = ParsedFunction
    value = t*(x+y)
  [../]
  [./f_dot_fn]
    type = ParsedFunction
    value = (x+y)
  [../]
[]
[Variables]
  [./u]
  [../]
[]
[Kernels]
  [./l2_proj]
    type = Reaction
    variable = u
  [../]
  [./dck]
    type = DotCouplingKernel
    variable = u
    v = f
  [../]
[]
[AuxVariables]
  [./f]
  [../]
  [./g]
  [../]
[]
[AuxKernels]
  [./f_k]
    type = FunctionAux
    variable = f
    function = f_fn
  [../]
  # We do not allow coupling of time derivatives of aux vars into the aux vars
  [./g_k]
    type = DotCouplingAux
    variable = g
    v = f
  [../]
[]
[Postprocessors]
  [./l2_error]
    type = ElementL2Error
    variable = u
    function = f_dot_fn
  [../]
[]
[Executioner]
  type = Transient
  dt = 0.1
  num_steps = 2
  nl_abs_tol = 1.e-15
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
[]
(test/tests/variables/fe_hier/hier-2-3d.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  zmin = -1
  zmax = 1
  nx = 1
  ny = 1
  nz = 1
  elem_type = HEX27
  # This problem only has 1 element, so using DistributedMesh in parallel
  # isn't really an option, and we don't care that much about DistributedMesh
  # in serial.
  parallel_type = replicated
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 2*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -2*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -2*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 2*x
  [../]
  [./bc_fnf]
    type = ParsedFunction
    value = 2*z
  [../]
  [./bc_fnk]
    type = ParsedFunction
    value = -2*z
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6+x*x+y*y+z*z
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x+y*y+z*z
    grad_x = 2*x
    grad_y = 2*y
    grad_z = 2*z
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
  [./bc_front]
    type = FunctionNeumannBC
    variable = u
    boundary = 'front'
    function = bc_fnf
  [../]
  [./bc_back]
    type = FunctionNeumannBC
    variable = u
    boundary = 'back'
    function = bc_fnk
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  nl_rel_tol = 1e-11
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/variables/fe_hermite/hermite-3-3d.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  zmin = -1
  zmax = 1
  nx = 1
  ny = 1
  nz = 1
  elem_type = HEX27
  # This problem only has 1 element, so using DistributedMesh in parallel
  # isn't really an option, and we don't care that much about DistributedMesh
  # in serial.
  parallel_type = replicated
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 3*y*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -3*y*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./bc_fnk]
    type = ParsedFunction
    value = -3*z*z
  [../]
  [./bc_fnf]
    type = ParsedFunction
    value = 3*z*z
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x-6*y-6*z+(x*x*x)+(y*y*y)+(z*z*z)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (x*x*x)+(y*y*y)+(z*z*z)
    grad_x = 3*x*x
    grad_y = 3*y*y
    grad_z = 3*z*z
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HERMITE
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
  [./bc_front]
    type = FunctionNeumannBC
    variable = u
    boundary = 'front'
    function = bc_fnf
  [../]
  [./bc_back]
    type = FunctionNeumannBC
    variable = u
    boundary = 'back'
    function = bc_fnk
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(modules/phase_field/test/tests/mobility_derivative/coupledmatdiffusion.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 15
  ny = 15
  xmax = 15.0
  ymax = 15.0
  elem_type = QUAD4
[]
[Variables]
  [./c]
    [./InitialCondition]
      type = CrossIC
      x1 = 0.0
      x2 = 30.0
      y1 = 0.0
      y2 = 30.0
    [../]
  [../]
  [./d]
    [./InitialCondition]
      type = SmoothCircleIC
      x1 = 15
      y1 = 15
      radius = 8
      int_width = 3
      invalue = 2
      outvalue = 0
    [../]
  [../]
  [./u]
  [../]
  [./w]
  [../]
[]
[Kernels]
  [./ctime]
    type = TimeDerivative
    variable = c
  [../]
  [./umat]
    type = MatReaction
    variable = c
    v = u
    mob_name = 1
  [../]
  [./urxn]
    type = Reaction
    variable = u
  [../]
  [./cres]
    type = MatDiffusion
    variable = u
    diffusivity = Dc
    args = d
    v = c
  [../]
  [./dtime]
    type = TimeDerivative
    variable = d
  [../]
  [./wmat]
    type = MatReaction
    variable = d
    v = w
    mob_name = 1
  [../]
  [./wrxn]
    type = Reaction
    variable = w
  [../]
  [./dres]
    type = MatDiffusion
    variable = w
    diffusivity = Dd
    args = c
    v = d
  [../]
[]
[Materials]
  [./Dc]
    type = DerivativeParsedMaterial
    f_name = Dc
    function = '0.01+c^2+d'
    args = 'c d'
    derivative_order = 1
  [../]
  [./Dd]
    type = DerivativeParsedMaterial
    f_name = Dd
    function = 'd^2+c+1.5'
    args = 'c d'
    derivative_order = 1
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Transient
  scheme = 'BDF2'
  solve_type = 'NEWTON'
  petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_pc_type -pc_asm_overlap'
  petsc_options_value = 'asm      31                  lu           1'
  dt = 1
  num_steps = 2
[]
[Outputs]
  exodus = true
[]
(test/tests/fvkernels/fv_coupled_var/coupled.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 10
  ny = 2
[]
[Variables]
  [u][]
  [v]
    family = MONOMIAL
    order = CONSTANT
    fv = true
  []
  [w]
    family = MONOMIAL
    order = CONSTANT
    fv = true
  []
  [s][]
[]
[Kernels]
  [diff]
    type = Diffusion
    variable = u
  []
  [rxn]
    type = Reaction
    variable = u
    rate = 2.0
  []
  [diffs]
    type = Diffusion
    variable = s
  []
  [prod]
    type = CoupledForce
    variable = s
    v = u
  []
[]
[FVKernels]
  [diff]
    type = FVDiffusion
    variable = v
    coeff = coeff
  []
  [rxn]
    type = FVReaction
    variable = v
    rate = 2.0
  []
  [diffw]
    type = FVDiffusion
    variable = w
    coeff = coeff
  []
  [prod]
    type = FVCoupledForce
    variable = w
    v = 'v'
  []
[]
[FVBCs]
  [left]
    type = FVDirichletBC
    variable = v
    boundary = left
    value = 0
  []
  [right]
    type = FVDirichletBC
    variable = v
    boundary = right
    value = 1
  []
  [leftw]
    type = FVDirichletBC
    variable = w
    boundary = left
    value = 0
  []
  [rightw]
    type = FVDirichletBC
    variable = w
    boundary = right
    value = 1
  []
[]
[Materials]
  [diff]
    type = ADGenericConstantMaterial
    prop_names = 'coeff'
    prop_values = '1'
  []
[]
[BCs]
  [left]
    type = DirichletBC
    variable = u
    boundary = left
    value = 0
  []
  [right]
    type = DirichletBC
    variable = u
    boundary = right
    value = 1
  []
  [lefts]
    type = DirichletBC
    variable = s
    boundary = left
    value = 0
  []
  [rights]
    type = DirichletBC
    variable = s
    boundary = right
    value = 1
  []
[]
[Problem]
  kernel_coverage_check = off
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  exodus = true
[]
(test/tests/dgkernels/2d_diffusion_dg/2d_diffusion_dg_test.i)
###########################################################
# This is a test of the Discontinuous Galerkin System.
# Discontinous basis functions are used (Monomials) and
# a the Laplacian DGKernel contributes to the
# internal edges around each element. Jumps are allowed
# by penalized by this method.
#
# @Requirement F3.60
###########################################################
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
#  xmin = -1
#  xmax = 1
#  ymin = -1
#  ymax = 1
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  active = 'u'
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[Functions]
  active = 'forcing_fn exact_fn'
  [./forcing_fn]
    type = ParsedFunction
#    function = -4.0+(x*x)+(y*y)
#    function = x
#    function = (x*x)-2.0
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
#    function = (x*x*x)-6.0*x
  [../]
  [./exact_fn]
    type = ParsedGradFunction
#    function = x
#    grad_x = 1
#    grad_y = 0
#    function = (x*x)+(y*y)
#    grad_x = 2*x
#    grad_y = 2*y
#    function = (x*x)
#    grad_x = 2*x
#    grad_y = 0
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
#    function = (x*x*x)
#    grad_x = 3*x*x
#    grad_y = 0
  [../]
[]
[Kernels]
  active = 'diff abs forcing'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  active = 'dg_diff'
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
[]
[BCs]
  active = 'all'
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
#  petsc_options = '-snes_mf'
#  petsc_options_iname = '-pc_type -pc_hypre_type'
#  petsc_options_value = 'hypre    boomeramg'
#  petsc_options = '-snes_mf'
#  max_r_steps = 2
  [./Adaptivity]
    steps = 2
    refine_fraction = 1.0
    coarsen_fraction = 0
    max_h_level = 8
  [../]
  nl_rel_tol = 1e-10
#  nl_rel_tol = 1e-12
[]
[Postprocessors]
  active = 'h dofs l2_err'
  [./h]
    type = AverageElementSize
  [../]
  [./dofs]
    type = NumDOFs
  [../]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Outputs]
  file_base = out
  exodus = true
  csv = true
[]
(test/tests/dgkernels/ad_dg_diffusion/2d_diffusion_ad_dg_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./abs]          # u * v
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = ADDGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
    diff = diff
  [../]
[]
[Materials]
  [./ad_coupled_mat]
    type = ADCoupledMaterial
    coupled_var = u
    ad_mat_prop = diff
    regular_mat_prop = diff_regular
  [../]
[]
[BCs]
  [./all]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  [./Adaptivity]
    steps = 2
    refine_fraction = 1.0
    coarsen_fraction = 0
    max_h_level = 8
  [../]
  nl_rel_tol = 1e-10
[]
[Postprocessors]
  [./h]
    type = AverageElementSize
  [../]
  [./dofs]
    type = NumDOFs
  [../]
  [./l2_err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Outputs]
  exodus = true
  csv = true
[]
(test/tests/misc/check_error/missing_req_par_mesh_block_test.i)
#
# Tests elemental PPS running on multiple block
#
[Mesh]
  type = StripeMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 3
  ny = 3
  elem_type = QUAD4
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = x
  [../]
[]
[Variables]
  [./u]
   family = MONOMIAL
   order = CONSTANT
  [../]
[]
[Kernels]
  [./uv]
    type = Reaction
    variable = u
  [../]
  [./fv]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[Postprocessors]
  [./avg_1_2]
    type = ElementAverageValue
    variable = u
    block = '0 1'
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
[]
(test/tests/materials/boundary_material/bnd_coupling_vol.i)
#
# Coupling volumetric material property inside boundary restricted material
# Also bringing boundary restricted material inside another boundary restricted
# material
#
# Solving: k \Laplace u + u - f = 0
#
# u = x^2 + y^2
# k = 3, but is decomposed as k3vol = k1vol + k2vol, where k1vol = 1 and k2vol = 2
#
# Boundary material property is computed as k3bnd = k1vol + k2bnd
#
# The material properties with suffix `vol` are volumetric, the ones with suffix `bnd`
# are boundary restricted
#
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 4
  ny = 4
  elem_type = QUAD9
[]
[Functions]
  [./exact_fn]
    type = ParsedFunction
    value = x*x+y*y
  [../]
  [./f_fn]
    type = ParsedFunction
    value = -4*3+x*x+y*y
  [../]
[]
[Variables]
  [./u]
    family = LAGRANGE
    order = SECOND
  [../]
[]
[Kernels]
  [./diff]
    type = DiffMKernel
    variable = u
    offset = 0
    mat_prop = k3vol
  [../]
  [./r]
    type = Reaction
    variable = u
  [../]
  [./ffn]
    type = BodyForce
    variable = u
    function = f_fn
  [../]
[]
[BCs]
  [./all]
    type = MatDivergenceBC
    variable = u
    prop_name = k3bnd
    boundary = 'left right top bottom'
  [../]
[]
[Materials]
  [./k1vol]
    type = GenericConstantMaterial
    prop_names = 'k1vol'
    prop_values = 1
    block = 0
  [../]
  [./k2vol]
    type = GenericConstantMaterial
    prop_names = 'k2vol'
    prop_values = 2
    block = 0
  [../]
  [./k2bnd]
    type = GenericConstantMaterial
    prop_names = 'k2bnd'
    prop_values = 2
    boundary = 'left right top bottom'
  [../]
  [./k3vol]
    type = SumMaterial
    sum_prop_name = k3vol
    mp1 = k1vol
    mp2 = k2vol
    block = 0
    val1 = 1
    val2 = 2
  [../]
  [./k3bnd]
    type = SumMaterial
    sum_prop_name = 'k3bnd'
    mp1 = k1vol
    mp2 = k2bnd
    boundary = 'left right top bottom'
    val1 = 1
    val2 = 2
  [../]
[]
[Postprocessors]
  [./l2err]
    type = ElementL2Error
    variable = u
    function = exact_fn
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
  petsc_options_iname = '-pc_type'
  petsc_options_value = 'lu'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
[]
(test/tests/variables/fe_hier/hier-2-2d.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 5
  ny = 5
  elem_type = QUAD9
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 2*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -2*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -2*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 2*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -4+x*x+y*y
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/meshgenerators/mesh_side_set_generator/mesh_side_set_generator.i)
[Mesh]
  [./gmg]
    type = GeneratedMeshGenerator
    dim = 3
    nx = 4
    ny = 4
    nz = 4
    elem_type = TET4
  []
  [./left_block]
    type = SubdomainBoundingBoxGenerator
    input = gmg
    block_id = 1
    block_name = left_block
    bottom_left = '0 0 0'
    top_right = '0.5 1 1'
  []
  [./right_block]
    type = SubdomainBoundingBoxGenerator
    input = left_block
    block_id = 2
    block_name = right_block
    bottom_left = '0.5 0 0'
    top_right = '1 1 1'
  []
  [./center_side_set]
    type = SideSetsBetweenSubdomainsGenerator
    input = right_block
    primary_block = left_block
    paired_block = right_block
    new_boundary = center_side_set
  []
  [./center_mesh]
    type = MeshSideSetGenerator
    input = center_side_set
    boundaries = center_side_set
    block_id = 10
    block_name = center_mesh
  []
[]
[Variables]
  [./c_volume]
    [./InitialCondition]
      type = FunctionIC
      function = '1-(x-0.5)^2+(y-0.5)^2+(z-0.5)^2'
    [../]
  [../]
  [./c_plane]
    block = 'center_mesh'
  [../]
[]
[Kernels]
  [./volume_diff]
    type = Diffusion
    variable = c_volume
    block = 'left_block right_block'
  [../]
  [./volume_dt]
    type = TimeDerivative
    variable = c_volume
    block = 'left_block right_block'
  [../]
  # couple the lower dimensional variable to the volume variable
  [./plane_reaction]
    type = Reaction
    variable = c_plane
    block = 'center_mesh'
  [../]
  [./plane_coupled]
    type = CoupledForce
    variable = c_plane
    v = c_volume
    block = 'center_mesh'
  [../]
[]
[Executioner]
  type = Transient
  dt = 0.01
  num_steps = 2
[]
[Outputs]
  exodus = true
[]
(test/tests/variables/fe_hier/hier-3-3d.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  zmin = -1
  zmax = 1
  nx = 1
  ny = 1
  nz = 1
  elem_type = HEX27
  # This problem only has 1 element, so using DistributedMesh in parallel
  # isn't really an option, and we don't care that much about DistributedMesh
  # in serial.
  parallel_type = replicated
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 3*y*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -3*y*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./bc_fnk]
    type = ParsedFunction
    value = -3*z*z
  [../]
  [./bc_fnf]
    type = ParsedFunction
    value = 3*z*z
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x-6*y-6*z+(x*x*x)+(y*y*y)+(z*z*z)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (x*x*x)+(y*y*y)+(z*z*z)
    grad_x = 3*x*x
    grad_y = 3*y*y
    grad_z = 3*z*z
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
  [./bc_front]
    type = FunctionNeumannBC
    variable = u
    boundary = 'front'
    function = bc_fnf
  [../]
  [./bc_back]
    type = FunctionNeumannBC
    variable = u
    boundary = 'back'
    function = bc_fnk
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/variables/fe_monomial_const/monomial-const-3d.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  zmin = -1
  zmax = 1
  nx = 21
  ny = 21
  nz = 21
  elem_type = HEX8
[]
[Functions]
  [./bc_fn]
    type=ParsedFunction
    value=0
  [../]
  [./bc_fnt]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = 0
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 0
  [../]
  [./forcing_fn]
#    type = ParsedFunction
#    value = 0
    type = MTPiecewiseConst3D
  [../]
  [./solution]
    type = MTPiecewiseConst3D
  [../]
[]
[Variables]
  [./u]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  # Note: MOOSE's DirichletBCs do not work properly with shape functions that do not
  #       have DOFs at the element edges.  This test works because the solution
  #       has been designed to be zero at the boundary which is satisfied by the IC
  #       Ticket #1352
  active = ''
  [./bc_all]
    type=FunctionDirichletBC
    variable = u
    boundary = 'top bottom left right'
    function = bc_fn
  [../]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1.e-9
  [./Adaptivity]
  [../]
[]
[Outputs]
  execute_on = 'timestep_end'
  csv = true
  [./out]
    type = Exodus
    elemental_as_nodal = true
  [../]
[]
(test/tests/variables/fe_hier/hier-1-2d.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 5
  ny = 5
  elem_type = QUAD9
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 1
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -1
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -1
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 1
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = x+y
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x+y
    grad_x = 1
    grad_y = 1
  [../]
[]
[Variables]
  [./u]
    order = FIRST
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/misc/check_error/dirac_kernel_with_aux_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[DiracKernels]
  [./nope]
    type = CachingPointSource
    variable = v
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/misc/check_error/kernel_with_empty_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = ''
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = u
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/variables/fe_hier/hier-3-2d.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 5
  ny = 5
  elem_type = QUAD9
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 3*y*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -3*y*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x-6*y+(x*x*x)+(y*y*y)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (x*x*x)+(y*y*y)
    grad_x = 3*x*x
    grad_y = 3*y*y
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/mesh_modifiers/mesh_side_set/test.i)
[Mesh]
  [gen]
    type = GeneratedMeshGenerator
    dim = 3
    nx = 4
    ny = 4
    nz = 4
    elem_type = TET4
  []
  [left_block]
    type = SubdomainBoundingBoxGenerator
    input = gen
    block_id = 1
    block_name = left_block
    bottom_left = '0 0 0'
    top_right = '0.5 1 1'
  []
  [right_block]
    type = SubdomainBoundingBoxGenerator
    input = left_block
    block_id = 2
    block_name = right_block
    bottom_left = '0.5 0 0'
    top_right = '1 1 1'
  []
  [center_side_set]
    type = SideSetsBetweenSubdomainsGenerator
    input = right_block
    primary_block = left_block
    paired_block = right_block
    new_boundary = center_side_set
  []
  [center_mesh]
    type = MeshSideSetGenerator
    input = center_side_set
    boundaries = center_side_set
    block_id = 10
    block_name = center_mesh
  []
[]
[Variables]
  [c_volume]
    [InitialCondition]
      type = FunctionIC
      function = '1-(x-0.5)^2+(y-0.5)^2+(z-0.5)^2'
    []
  []
  [c_plane]
    block = 'center_mesh'
  []
[]
[Kernels]
  [volume_diff]
    type = Diffusion
    variable = c_volume
    block = 'left_block right_block'
  []
  [volume_dt]
    type = TimeDerivative
    variable = c_volume
    block = 'left_block right_block'
  []
  # couple the lower dimensional variable to the volume variable
  [plane_reaction]
    type = Reaction
    variable = c_plane
    block = 'center_mesh'
  []
  [plane_coupled]
    type = CoupledForce
    variable = c_plane
    v = c_volume
    block = 'center_mesh'
  []
[]
[Executioner]
  type = Transient
  dt = 0.01
  num_steps = 2
[]
[Outputs]
  exodus = true
[]
(test/tests/variables/fe_hier/hier-2-1d.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 5
  elem_type = EDGE3
[]
[Functions]
  [./bc_fnl]
    type = ParsedFunction
    value = -2*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 2*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -2+x*x
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x
    grad_x = 2*x
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/mortar/convergence-studies/solution-continuity/continuity.i)
[Mesh]
  second_order = true
  [./left_block]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 0
    xmax = 1
    ymin = 0
    ymax = 1
    nx = 2
    ny = 2
    elem_type = QUAD4
  [../]
  [./left_block_sidesets]
    type = RenameBoundaryGenerator
    input = left_block
    old_boundary_id = '0 1 2 3'
    new_boundary_name = 'lb_bottom lb_right lb_top lb_left'
  [../]
  [./left_block_id]
    type = SubdomainIDGenerator
    input = left_block_sidesets
    subdomain_id = 1
  [../]
  [./right_block]
    type = GeneratedMeshGenerator
    dim = 2
    xmin = 1
    xmax = 2
    ymin = 0
    ymax = 1
    nx = 2
    ny = 2
    elem_type = QUAD4
  [../]
  [./right_block_id]
    type = SubdomainIDGenerator
    input = right_block
    subdomain_id = 2
  [../]
  [right_block_change_boundary_id]
    type = RenameBoundaryGenerator
    input = right_block_id
    old_boundary_id = '0 1 2 3'
    new_boundary_id = '100 101 102 103'
  []
  [./combined]
    type = MeshCollectionGenerator
    inputs = 'left_block_id right_block_change_boundary_id'
  [../]
  [./block_rename]
    type = RenameBlockGenerator
    input = combined
    old_block_id = '1 2'
    new_block_name = 'left_block right_block'
  [../]
  [right_right_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = block_rename
    new_boundary = rb_right
    block = right_block
    normal = '1 0 0'
  []
  [right_left_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_right_sideset
    new_boundary = rb_left
    block = right_block
    normal = '-1 0 0'
  []
  [right_top_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_left_sideset
    new_boundary = rb_top
    block = right_block
    normal = '0 1 0'
  []
  [right_bottom_sideset]
    type = SideSetsAroundSubdomainGenerator
    input = right_top_sideset
    new_boundary = rb_bottom
    block = right_block
    normal = '0 -1 0'
  []
  [secondary]
    input = right_bottom_sideset
    type = LowerDBlockFromSidesetGenerator
    sidesets = 'lb_right'
    new_block_id = '10001'
    new_block_name = 'secondary_lower'
  []
  [primary]
    input = secondary
    type = LowerDBlockFromSidesetGenerator
    sidesets = 'rb_left'
    new_block_id = '10000'
    new_block_name = 'primary_lower'
  []
[]
[Variables]
  [./T]
    block = 'left_block right_block'
    order = SECOND
  [../]
  [./lambda]
    block = 'secondary_lower'
  [../]
[]
[BCs]
  [./neumann]
    type = FunctionGradientNeumannBC
    exact_solution = exact_soln_primal
    variable = T
    boundary = 'lb_bottom lb_top lb_left rb_bottom rb_right rb_top'
  [../]
[]
[Kernels]
  [./conduction]
    type = Diffusion
    variable = T
    block = 'left_block right_block'
  [../]
  [./sink]
    type = Reaction
    variable = T
    block = 'left_block right_block'
  [../]
  [./forcing_function]
    type = BodyForce
    variable = T
    function = forcing_function
    block = 'left_block right_block'
  [../]
[]
[Functions]
  [./forcing_function]
    type = ParsedFunction
    value = ''
  [../]
  [./exact_soln_primal]
    type = ParsedFunction
    value = ''
  [../]
  [exact_soln_lambda]
    type = ParsedFunction
    value = ''
  []
[]
[Debug]
  show_var_residual_norms = 1
[]
[Constraints]
  [./mortar]
    type = EqualValueConstraint
    primary_boundary = rb_left
    secondary_boundary = lb_right
    primary_subdomain = primary_lower
    secondary_subdomain = secondary_lower
    secondary_variable = T
    variable = lambda
    delta = 0.4
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  solve_type = NEWTON
  type = Steady
  petsc_options = '-snes_converged_reason -ksp_converged_reason'
  petsc_options_iname = '-pc_type -snes_linesearch_type -pc_factor_mat_solver_type'
  petsc_options_value = 'lu       basic                 mumps'
[]
[Outputs]
  exodus = true
  csv = true
  [dofmap]
    type = DOFMap
    execute_on = 'initial'
  []
[]
[Postprocessors]
  [L2lambda]
    type = ElementL2Error
    variable = lambda
    function = exact_soln_lambda
    execute_on = 'timestep_end'
    block = 'secondary_lower'
  []
  [L2u]
    type = ElementL2Error
    variable = T
    function = exact_soln_primal
    execute_on = 'timestep_end'
    block = 'left_block right_block'
  []
  [h]
    type = AverageElementSize
    block = 'left_block right_block'
  []
[]
(test/tests/variables/fe_monomial_const/monomial-const-1d.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 100
  elem_type = EDGE3
[]
[Functions]
  [./bc_fn]
    type=ParsedFunction
    value=0
  [../]
  [./forcing_fn]
    type = MTPiecewiseConst1D
  [../]
  [./solution]
    type = MTPiecewiseConst1D
  [../]
[]
[Variables]
  [./u]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  # Note: MOOSE's DirichletBCs do not work properly with shape functions that do not
  #       have DOFs at the element edges.  This test works because the solution
  #       has been designed to be zero at the boundary which is satisfied by the IC
  #       Ticket #1352
  active = ''
  [./bc_all]
    type=FunctionDirichletBC
    variable = u
    boundary = 'left right'
    function = bc_fn
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
  nl_rel_tol = 1.e-9
  [./Adaptivity]
  [../]
[]
[Outputs]
  execute_on = 'timestep_end'
  csv = true
  [./out]
    type = Exodus
    elemental_as_nodal = true
  [../]
[]
(test/tests/variables/fe_hier/hier-3-1d.i)
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 5
  elem_type = EDGE3
[]
[Functions]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x+(x*x*x)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x*x
    grad_x = 3*x*x
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/variables/fe_hermite/hermite-3-1d.i)
###########################################################
# This is a simple test demonstrating the use of the
# Hermite variable type.
#
# @Requirement F3.10
###########################################################
[Mesh]
  type = GeneratedMesh
  dim = 1
  xmin = -1
  xmax = 1
  nx = 5
  elem_type = EDGE3
[]
[Functions]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x+(x*x*x)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x*x
    grad_x = 3*x*x
  [../]
[]
# Hermite Variable type
[Variables]
  [./u]
    order = THIRD
    family = HERMITE
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/preconditioners/pbp/pbp_dg_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  elem_type = QUAD4
[]
[Variables]
  [./u]
    order = FIRST
    family = MONOMIAL
  [../]
  [./v]
    order = FIRST
    family = MONOMIAL
  [../]
[]
[Preconditioning]
  [./PBP]
    type = PBP
    solve_order = 'u v'
    preconditioner  = 'AMG AMG'
  [../]
[]
[Kernels]
  [./diff_u]
    type = Diffusion
    variable = u
  [../]
  [./abs_u]
    type = Reaction
    variable = u
  [../]
  [./forcing_u]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
  [./diff_v]
    type = Diffusion
    variable = v
  [../]
  [./abs_v]
    type = Reaction
    variable = v
  [../]
  [./forcing_v]
    type = BodyForce
    variable = v
    function = forcing_fn
  [../]
  [./conv_v]
    type = CoupledForce
    variable = v
    v = u
  [../]
[]
[DGKernels]
  [./dg_diff]
    type = DGDiffusion
    variable = u
    epsilon = -1
    sigma = 6
  [../]
  [./dg_diff_2]
    type = DGDiffusion
    variable = v
    epsilon = -1
    sigma = 6
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = 2*pow(e,-x-(y*y))*(1-2*y*y)
  [../]
  [./exact_fn]
    type = ParsedGradFunction
    value = pow(e,-x-(y*y))
    grad_x = -pow(e,-x-(y*y))
    grad_y = -2*y*pow(e,-x-(y*y))
  [../]
[]
[BCs]
  [./all_u]
    type = DGFunctionDiffusionDirichletBC
    variable = u
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
  [./all_v]
    type = DGFunctionDiffusionDirichletBC
    variable = v
    boundary = '0 1 2 3'
    function = exact_fn
    epsilon = -1
    sigma = 6
  [../]
[]
[Problem]
  type = FEProblem
  error_on_jacobian_nonzero_reallocation = true
[]
[Executioner]
  type = Steady
  l_max_its = 10
  nl_max_its = 10
  solve_type = JFNK
[]
[Outputs]
  exodus = true
[]
(test/tests/outputs/debug/show_var_residual_norms.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fnu]
    type = ParsedFunction
    value = -5.8*(x+y)+x*x*x-x+y*y*y-y
  [../]
  [./forcing_fnv]
    type = ParsedFunction
    value = -4
  [../]
  [./slnu]
    type = ParsedGradFunction
    value = x*x*x-x+y*y*y-y
    grad_x = 3*x*x-1
    grad_y = 3*y*y-1
  [../]
  [./slnv]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
  #NeumannBC functions
  [./bc_fnut]
    type = ParsedFunction
    value = 3*y*y-1
  [../]
  [./bc_fnub]
    type = ParsedFunction
    value = -3*y*y+1
  [../]
  [./bc_fnul]
    type = ParsedFunction
    value = -3*x*x+1
  [../]
  [./bc_fnur]
    type = ParsedFunction
    value = 3*x*x-1
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HIERARCHIC
  [../]
  [./v]
    order = SECOND
    family = LAGRANGE
  [../]
[]
[Kernels]
  active = 'diff1 diff2 test1 forceu forcev react'
  [./diff1]
    type = Diffusion
    variable = u
  [../]
  [./test1]
    type = CoupledConvection
    variable = u
    velocity_vector = v
  [../]
  [./diff2]
    type = Diffusion
    variable = v
  [../]
  [./react]
    type = Reaction
    variable = u
  [../]
  [./forceu]
    type = BodyForce
    variable = u
    function = forcing_fnu
  [../]
  [./forcev]
    type = BodyForce
    variable = v
    function = forcing_fnv
  [../]
[]
[BCs]
  active = 'bc_u_tb bc_v bc_ul bc_ur bc_ut bc_ub'
  [./bc_u]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_v]
    type = FunctionDirichletBC
    variable = v
    function = slnv
    boundary = 'left right top bottom'
  [../]
  [./bc_u_lr]
    type = FunctionPenaltyDirichletBC
    variable = u
    function = slnu
    boundary = 'left right top bottom'
    penalty = 1e6
  [../]
  [./bc_u_tb]
    type = CoupledKernelGradBC
    variable = u
    var2 = v
    vel = '0.1 0.1'
    boundary = 'top bottom left right'
  [../]
  [./bc_ul]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnul
    boundary = 'left'
  [../]
  [./bc_ur]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnur
    boundary = 'right'
  [../]
  [./bc_ut]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnut
    boundary = 'top'
  [../]
  [./bc_ub]
    type = FunctionNeumannBC
    variable = u
    function = bc_fnub
    boundary = 'bottom'
  [../]
[]
[Preconditioning]
  active = ' '
  [./prec]
    type = SMP
    full = true
  [../]
[]
[Postprocessors]
  active='L2u L2v'
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2u]
    type = ElementL2Error
    variable = u
    function = slnu
  [../]
  [./L2v]
    type = ElementL2Error
    variable = v
    function = slnv
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
#  petsc_options = '-snes'
  nl_rel_tol = 1e-15
  nl_abs_tol = 1e-13
[]
[Outputs]
  execute_on = 'timestep_end'
  [./debug] # This is a test, use the [Debug] block to enable this
    type = VariableResidualNormsDebugOutput
  [../]
[]
(test/tests/variables/fe_hermite/hermite-3-2d.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 5
  ny = 5
  elem_type = QUAD9
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 3*y*y
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -3*y*y
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -3*x*x
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 3*x*x
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = -6*x-6*y+(x*x*x)+(y*y*y)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (x*x*x)+(y*y*y)
    grad_x = 3*x*x
    grad_y = 3*y*y
  [../]
[]
[Variables]
  [./u]
    order = THIRD
    family = HERMITE
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/nodalkernels/multiple-subdomains/test.i)
[Mesh]
  [gen]
    type = GeneratedMeshGenerator
    dim = 1
    nx = 2
  []
  [sub]
    type = SubdomainBoundingBoxGenerator
    bottom_left = '0.5 0 0'
    top_right = '1 1 0'
    input = 'gen'
    block_id = '1'
  []
[]
[Variables]
  [u]
    block = '0 1'
  []
[]
[Kernels]
  [diff]
    type = Diffusion
    variable = u
  []
  [rxn]
    type = Reaction
    variable = u
  []
[]
[NodalKernels]
  [source]
    type = UserForcingFunctionNodalKernel
    variable = u
    block = '0 1'
    function = '1'
  []
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
[]
(test/tests/bcs/ad_penalty_dirichlet_bc/function_penalty_dirichlet_bc_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = -4+x*x+y*y
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x*x+y*y
    grad_x = 2*x
    grad_y = 2*y
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = ADDiffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = ADBodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  active = 'bc_all'
  [./bc_all]
    type = ADFunctionPenaltyDirichletBC
    variable = u
    function = solution
    boundary = 'top left right bottom'
    penalty = 1e6
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  nl_rel_tol = 1e-14
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(modules/phase_field/test/tests/Nucleation/force.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  nz = 0
  xmin = 0
  xmax = 20
  ymin = 0
  ymax = 20
  elem_type = QUAD4
[]
[Variables]
  [./c]
  [../]
[]
[Kernels]
  [./c_force]
    type = DiscreteNucleationForce
    variable = c
    map = map
    no_nucleus_value = -1
    nucleus_value = 2
  [../]
  [./c_react]
    type = Reaction
    variable = c
  [../]
[]
[UserObjects]
  [./inserter]
    type = DiscreteNucleationInserter
    hold_time = 0.4
    probability = 0.01
    seed = 12346
    radius = 3.27
  [../]
  [./map]
    type = DiscreteNucleationMap
    int_width = 2
    periodic = c
    inserter = inserter
  [../]
[]
[Executioner]
  type = Transient
  solve_type = 'NEWTON'
  nl_abs_tol = 1e-10
  num_steps = 10
  dt = 0.2
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
[]
(test/tests/bcs/ad_penalty_dirichlet_bc/penalty_dirichlet_bc_test.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  nx = 10
  ny = 10
  elem_type = QUAD9
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = -2*(x*x+y*y-2)+(1-x*x)*(1-y*y)
  [../]
  [./solution]
    type = ParsedGradFunction
    value = (1-x*x)*(1-y*y)
    grad_x = 2*(x*y*y-x)
    grad_y = 2*(x*x*y-y)
  [../]
[]
[Variables]
  [./u]
    order = SECOND
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = ADDiffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = ADBodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  active = 'bc_all'
  [./bc_all]
    type = ADPenaltyDirichletBC
    variable = u
    value = 0
    boundary = 'top left right bottom'
    penalty = 1e5
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
  nl_rel_tol = 1e-14
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/tests/interfacekernels/adaptivity/adaptivity.i)
# This input file is used for two tests:
# 1) Check that InterfaceKernels work with mesh adaptivity
# 2) Error out when InterfaceKernels are used with adaptivity
#    and stateful material prpoerties
[Mesh]
  parallel_type = 'replicated'
  [gen]
    type = GeneratedMeshGenerator
    dim = 2
    nx = 2
    ny = 2
  []
  [./subdomain1]
    input = gen
    type = SubdomainBoundingBoxGenerator
    bottom_left = '0.5 0 0'
    top_right = '1 1 0'
    block_id = 1
  [../]
  [./interface]
    type = SideSetsBetweenSubdomainsGenerator
    input = subdomain1
    primary_block = '0'
    paired_block = '1'
    new_boundary = 'primary0_interface'
  [../]
  [./break_boundary]
    input = interface
    type = BreakBoundaryOnSubdomainGenerator
  [../]
[]
[Variables]
  [./u]
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
    block = 0
  [../]
  [./u_neighbor]
    [./InitialCondition]
      type = ConstantIC
      value = 1
    [../]
    block = 1
  [../]
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = (x*x*x)-6.0*x
  [../]
  [./bc_fn]
    type = ParsedFunction
    value = (x*x*x)
  [../]
[]
[Kernels]
  [./diff]
    type = MatDiffusionTest
    variable = u
    prop_name = diffusivity
    block = 0
  [../]
  [./abs]
    type = Reaction
    variable = u
    block = 0
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
    block = 0
  [../]
  [./diffn]
    type = MatDiffusionTest
    variable = u_neighbor
    prop_name = diffusivity
    block = 1
  [../]
  [./absn]
    type = Reaction
    variable = u_neighbor
    block = 1
  [../]
  [./forcingn]
    type = BodyForce
    variable = u_neighbor
    function = forcing_fn
    block = 1
  [../]
[]
[InterfaceKernels]
  [./flux_match]
    type = PenaltyInterfaceDiffusion
    variable = u
    neighbor_var = u_neighbor
    boundary = primary0_interface
    penalty = 1e6
  [../]
[]
[BCs]
  [./u]
    type = FunctionDirichletBC
    variable = u
    boundary = 'left'
    function = bc_fn
  [../]
  [./u_neighbor]
    type = FunctionDirichletBC
    variable = u_neighbor
    boundary = 'right'
    function = bc_fn
  [../]
[]
[Materials]
  active = 'constant'
  [./stateful]
    type = StatefulTest
    prop_names = 'diffusivity'
    prop_values = '1'
    block = '0 1'
  [../]
  [./constant]
    type = GenericConstantMaterial
    prop_names = 'diffusivity'
    prop_values = '1'
    block = '0 1'
  [../]
[]
[Preconditioning]
  [./smp]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Adaptivity]
  marker = 'marker'
  steps = 1
  [./Markers]
    [./marker]
      type = BoxMarker
      bottom_left = '0 0 0'
      top_right = '1 1 0'
      inside = refine
      outside = coarsen
    [../]
  [../]
[]
[Outputs]
  exodus = true
[]
(test/tests/postprocessors/element_average_value/elem_pps_multi_block_test.i)
#
# Tests elemental PPS running on multiple block
#
[Mesh]
  type = StripeMesh
  dim = 2
  xmin = 0
  xmax = 1
  ymin = 0
  ymax = 1
  nx = 3
  ny = 3
  elem_type = QUAD4
  stripes = 3
  # StripeMesh currently only works correctly with ReplicatedMesh.
  parallel_type = replicated
[]
[Functions]
  [./forcing_fn]
    type = ParsedFunction
    value = x
  [../]
[]
[Variables]
  [./u]
    family = MONOMIAL
    order = CONSTANT
  [../]
[]
[Kernels]
  [./uv]
    type = Reaction
    variable = u
  [../]
  [./fv]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[Postprocessors]
  [./avg_1_2]
    type = ElementAverageValue
    variable = u
    block = '0 1'
  [../]
[]
[Executioner]
  type = Steady
[]
[Outputs]
  execute_on = 'timestep_end'
  [./out]
    type = Exodus
    elemental_as_nodal = true
  [../]
[]
(test/tests/misc/check_error/bc_with_aux_var.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 2
  ny = 2
[]
[Variables]
  [./u]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[AuxVariables]
  [./v]
  [../]
[]
[Kernels]
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./rea]
    type = Reaction
    variable = u
  [../]
[]
[BCs]
  [./left]
    type = DirichletBC
    variable = v
    boundary = 1
    value = 0
  [../]
  [./right]
    type = DirichletBC
    variable = u
    boundary = 2
    value = 1
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'NEWTON'
[]
[Outputs]
  file_base = out
  exodus = true
[]
(test/tests/variables/fe_hier/hier-1-3d.i)
[Mesh]
  type = GeneratedMesh
  dim = 3
  xmin = -1
  xmax = 1
  ymin = -1
  ymax = 1
  zmin = -1
  zmax = 1
  nx = 5
  ny = 5
  elem_type = HEX8
[]
[Functions]
  [./bc_fnt]
    type = ParsedFunction
    value = 1
  [../]
  [./bc_fnb]
    type = ParsedFunction
    value = -1
  [../]
  [./bc_fnl]
    type = ParsedFunction
    value = -1
  [../]
  [./bc_fnr]
    type = ParsedFunction
    value = 1
  [../]
  [./bc_fnf]
    type = ParsedFunction
    value = 1
  [../]
  [./bc_fnk]
    type = ParsedFunction
    value = -1
  [../]
  [./forcing_fn]
    type = ParsedFunction
    value = x+y+z
  [../]
  [./solution]
    type = ParsedGradFunction
    value = x+y+z
    grad_x = 1
    grad_y = 1
    grad_z = 1
  [../]
[]
[Variables]
  [./u]
    order = FIRST
    family = HIERARCHIC
  [../]
[]
[Kernels]
  active = 'diff forcing reaction'
  [./diff]
    type = Diffusion
    variable = u
  [../]
  [./reaction]
    type = Reaction
    variable = u
  [../]
  [./forcing]
    type = BodyForce
    variable = u
    function = forcing_fn
  [../]
[]
[BCs]
  [./bc_top]
    type = FunctionNeumannBC
    variable = u
    boundary = 'top'
    function = bc_fnt
  [../]
  [./bc_bottom]
    type = FunctionNeumannBC
    variable = u
    boundary = 'bottom'
    function = bc_fnb
  [../]
  [./bc_left]
    type = FunctionNeumannBC
    variable = u
    boundary = 'left'
    function = bc_fnl
  [../]
  [./bc_right]
    type = FunctionNeumannBC
    variable = u
    boundary = 'right'
    function = bc_fnr
  [../]
  [./bc_front]
    type = FunctionNeumannBC
    variable = u
    boundary = 'front'
    function = bc_fnf
  [../]
  [./bc_back]
    type = FunctionNeumannBC
    variable = u
    boundary = 'back'
    function = bc_fnk
  [../]
[]
[Postprocessors]
  [./dofs]
    type = NumDOFs
  [../]
  [./h]
    type = AverageElementSize
  [../]
  [./L2error]
    type = ElementL2Error
    variable = u
    function = solution
  [../]
  [./H1error]
    type = ElementH1Error
    variable = u
    function = solution
  [../]
  [./H1Semierror]
    type = ElementH1SemiError
    variable = u
    function = solution
  [../]
[]
[Executioner]
  type = Steady
  solve_type = 'PJFNK'
[]
[Outputs]
  execute_on = 'timestep_end'
  exodus = true
  csv = true
[]
(test/include/kernels/DeprecatedKernel.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class DeprecatedKernel : public Reaction
{
public:
  static InputParameters validParams();
  DeprecatedKernel(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual();
  virtual Real computeQpJacobian();
  Real _coef;
};
(test/include/kernels/RenamedKernel.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class RenamedKernel : public Reaction
{
public:
  static InputParameters validParams();
  RenamedKernel(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual() override;
  virtual Real computeQpJacobian() override;
  Real _coef;
};
(test/include/kernels/DeprecatedParamKernel.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class DeprecatedParamKernel : public Reaction
{
public:
  static InputParameters validParams();
  DeprecatedParamKernel(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual() override;
  virtual Real computeQpJacobian() override;
  Real _coef;
};
(test/include/kernels/ExpiredKernel.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class ExpiredKernel : public Reaction
{
public:
  static InputParameters validParams();
  ExpiredKernel(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual() override;
  virtual Real computeQpJacobian() override;
  Real _coef;
};
(framework/include/kernels/CoefReaction.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class CoefReaction : public Reaction
{
public:
  static InputParameters validParams();
  CoefReaction(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual() override;
  virtual Real computeQpJacobian() override;
  /// input parameter multiplied by the reaction kernel
  const Real _coef;
};
(modules/stochastic_tools/test/include/kernels/MaterialReaction.h)
// This file is part of the MOOSE framework
// https://www.mooseframework.org
//
// All rights reserved, see COPYRIGHT for full restrictions
// https://github.com/idaholab/moose/blob/master/COPYRIGHT
//
// Licensed under LGPL 2.1, please see LICENSE for details
// https://www.gnu.org/licenses/lgpl-2.1.html
#pragma once
#include "Reaction.h"
class MaterialReaction : public Reaction
{
public:
  static InputParameters validParams();
  MaterialReaction(const InputParameters & parameters);
protected:
  virtual Real computeQpResidual();
  virtual Real computeQpJacobian();
  const MaterialProperty<Real> & _coeff;
};