# Complete Syntax

## Adaptivity

### Adaptivity/Markers

• Moose App
• AddElementalFieldActionAdds elemental auxiliary variable for adaptivity system.
• AddMarkerActionAction for adding Marker object to a simulation.
• ArrayMooseVariableUsed for grouping standard field variables with the same finite element family and order
• BoxMarkerMarks the region inside and outside of a 'box' domain for refinement or coarsening.
• ComboMarkerA marker that converts many markers into a single marker by considering the maximum value of the listed markers (i.e., refinement takes precedent).
• ErrorFractionMarkerMarks elements for refinement or coarsening based on the fraction of the min/max error from the supplied indicator.
• ErrorToleranceMarkerCoarsen or refine elements based on an absolute tolerance allowed from the supplied indicator.
• MooseVariableRepresents standard field variables, e.g. Lagrange, Hermite, or non-constant Monomials
• MooseVariableBaseBase class for Moose variables. This should never be the terminal object type
• MooseVariableConstMonomialSpecialization for constant monomials that avoids unnecessary loops
• MooseVariableFVRealBase class for Moose variables. This should never be the terminal object type
• MooseVariableScalarMoose wrapper class around scalar variables
• OrientedBoxMarkerMarks inside and outside a box that can have arbitrary orientation and center point.
• UniformMarkerUniformly mark all elements for refinement or coarsening.
• ValueRangeMarkerMark elements for adaptivity based on the supplied upper and lower bounds and the specified variable.
• ValueThresholdMarkerThe the refinement state based on a threshold value compared to the specified variable.
• VectorMooseVariableRepresents vector field variables, e.g. Vector Lagrange or Nedelec
• Phase Field App
• DiscreteNucleationMarkerMark new nucleation sites for refinement

## AuxVariables

### AuxVariables/MultiAuxVariables

• Moose App
• ArrayMooseVariableUsed for grouping standard field variables with the same finite element family and order
• MooseVariableRepresents standard field variables, e.g. Lagrange, Hermite, or non-constant Monomials
• MooseVariableBaseBase class for Moose variables. This should never be the terminal object type
• MooseVariableConstMonomialSpecialization for constant monomials that avoids unnecessary loops
• MooseVariableFVRealBase class for Moose variables. This should never be the terminal object type
• MooseVariableScalarMoose wrapper class around scalar variables
• VectorMooseVariableRepresents vector field variables, e.g. Vector Lagrange or Nedelec
• Phase Field App
• MultiAuxVariablesActionSet up auxvariables for components of MaterialProperty<std::vector<data_type> > for polycrystal sample.

## BCs

• Moose App
• AddBCAction
• ADDirichletBCImposes the essential boundary condition , where is a constant, controllable value.
• ADFunctionDirichletBCImposes the essential boundary condition , where is calculated by a function.
• ADFunctionNeumannBCImposes the integrated boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• ADFunctionPenaltyDirichletBCEnforces a (possibly) time and space-dependent MOOSE Function Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• ADFunctionPresetBCThe same as ADFunctionDirichletBC except the value is applied before the solve begins
• ADNeumannBCImposes the integrated boundary condition , where is a constant, controllable value.
• ADPenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• ADPresetBCSimilar to ADDirichletBC except the value is applied before the solve begins. Deprecated: use ADDirichletBC with preset = true instead.
• ADVectorFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• ADVectorMatchedValueBCImplements a ADVectorNodalBC which equates two different Variables' values on a specified boundary.
• ArrayDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• ArrayPenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense with , where is the constant scalar penalty; is the test functions and is the differences between the current solution and the Dirichlet data.
• ArrayVacuumBCImposes the Robin boundary condition .
• ConvectiveFluxBCDetermines boundary values via the initial and final values, flux, and exposure duration
• CoupledVarNeumannBCImposes the integrated boundary condition , where is a variable.
• DGFunctionDiffusionDirichletBC
• DiffusionFluxBCComputes a boundary residual contribution consistent with the Diffusion Kernel. Does not impose a boundary condition; instead computes the boundary contribution corresponding to the current value of grad(u) and accumulates it in the residual vector.
• DirichletBCImposes the essential boundary condition , where is a constant, controllable value.
• EigenArrayDirichletBCArray Dirichlet BC for eigenvalue solvers
• EigenDirichletBCDirichlet BC for eigenvalue solvers
• FunctionDirichletBCImposes the essential boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• FunctionGradientNeumannBCImposes the integrated boundary condition arising from integration by parts of a diffusion/heat conduction operator, and where the exact solution can be specified.
• FunctionNeumannBCImposes the integrated boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• FunctionPenaltyDirichletBCEnforces a (possibly) time and space-dependent MOOSE Function Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• FunctionPresetBCThe same as FunctionDirichletBC except the value is applied before the solve begins. Deprecated: use FunctionDirichletBC with preset = true instead.
• LagrangeVecDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• LagrangeVecFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• MatchedValueBCImplements a NodalBC which equates two different Variables' values on a specified boundary.
• NeumannBCImposes the integrated boundary condition , where is a constant, controllable value.
• OneDEqualValueConstraintBC
• PenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• PostprocessorDirichletBC
• PostprocessorNeumannBC
• PresetBCSimilar to DirichletBC except the value is applied before the solve begins. Deprecated: use DirichletBC with preset = true instead.
• SinDirichletBCImposes a time-varying essential boundary condition , where varies from an given initial value at time to a given final value over a specified duration.
• SinNeumannBCImposes a time-varying flux boundary condition , where varies from an given initial value at time to a given final value over a specified duration.
• VacuumBC
• VectorDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• VectorFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• VectorNeumannBCImposes the integrated boundary condition , where is a user-defined, constant vector.
• VectorPenaltyDirichletBCEnforces a Dirichlet boundary condition for vector nonlinear variables in a weak sense by applying a penalty to the difference in the current solution and the Dirichlet data.
• WeakGradientBCComputes a boundary residual contribution consistent with the Diffusion Kernel. Does not impose a boundary condition; instead computes the boundary contribution corresponding to the current value of grad(u) and accumulates it in the residual vector.
• Periodic
• Rdg App
• AEFVBCA boundary condition kernel for the advection equation using a cell-centered finite volume method.
• Heat Conduction App
• ADConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by material properties.
• ConvectiveFluxFunctionDetermines boundary value by fluid heat transfer coefficient and far-field temperature
• ConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by material properties.
• CoupledConvectiveFlux
• CoupledConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by auxiliary variables.
• GapHeatTransferTransfers heat across a gap between two surfaces dependent on the gap geometry specified.
• GrayLambertNeumannBCThis BC imposes a heat flux density that is computed from the GrayLambertSurfaceRadiationBase userobject.
• HeatConductionBC
• InfiniteCylinderRadiativeBCBoundary condition for radiative heat exchange with a cylinderwhere the boundary is approximated as a cylinder as well.
• Porous Flow App
• PorousFlowHalfCubicSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a cubic.
• PorousFlowHalfGaussianSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a Gaussian.
• PorousFlowPiecewiseLinearSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a piecewise linear function.
• PorousFlowSinkApplies a flux sink to a boundary.
• Tensor Mechanics App
• ADPressureApplies a pressure on a given boundary in a given direction
• CoupledPressureBCApplies a pressure from a variable on a given boundary in a given direction
• DashpotBC
• DisplacementAboutAxisImplements a boundary condition that enforces rotationaldisplacement around an axis on a boundary
• InteractionIntegralBenchmarkBCImplements a boundary condition that enforces a displacement field around a crack tip based on applied stress intensity factors.
• PenaltyInclinedNoDisplacementBCPenalty Enforcement of an inclined boundary condition
• PresetAccelerationPrescribe acceleration on a given boundary in a given direction
• PresetDisplacementPrescribe the displacement on a given boundary in a given direction.
• PresetVelocity
• PressureApplies a pressure on a given boundary in a given direction
• StickyBCImposes the boundary condition if exceeds the bounds provided
• CavityPressure
• CoupledPressure
• InclinedNoDisplacementBC
• Pressure
• Functional Expansion Tools App
• FXFluxBCSets a flux boundary condition, evaluated using a FunctionSeries instance. This does not fix the flux, but rather 'strongly encourages' flux agreement by penalizing the differences through contributions to the residual.
• FXValueBCImposes a fixed value boundary condition, evaluated using a FunctionSeries instance.
• FXValuePenaltyBCSets a value boundary condition, evaluated using a FunctionSeries instance. This does not fix the value, but rather 'strongly encourages' value agreement by penalizing the differences through contributions to the residual.
• Navier Stokes App
• AdvectionBCBoundary conditions for outflow/outflow of advected quantities: phi * velocity * normal, where phi is the advected quantitiy
• EnergyFreeBC
• INSADMomentumNoBCBCThis class implements the 'No BC' boundary condition based on the 'Laplace' form of the viscous stress tensor.
• INSMomentumNoBCBCLaplaceFormThis class implements the 'No BC' boundary condition based on the 'Laplace' form of the viscous stress tensor.
• INSMomentumNoBCBCTractionFormThis class implements the 'No BC' boundary condition based on the 'traction' form of the viscous stress tensor.
• INSTemperatureNoBCBCThis class implements the 'No BC' boundary condition discussed by Griffiths, Papanastiou, and others.
• ImplicitNeumannBCThis class implements a form of the Neumann boundary condition in which the boundary term is treated 'implicitly'.
• MassFreeBC
• MomentumFreeBC
• MomentumFreeSlipBC
• NSEnergyInviscidSpecifiedBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedDensityAndVelocityBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedNormalFlowBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedPressureBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidUnspecifiedBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyViscousBCThis class couples together all the variables for the compressible Navier-Stokes equations to allow them to be used in derived IntegratedBC classes.
• NSEnergyWeakStagnationBCThe inviscid energy BC term with specified normal flow.
• NSImposedVelocityBCImpose Velocity BC.
• NSImposedVelocityDirectionBCThis class imposes a velocity direction component as a Dirichlet condition on the appropriate momentum equation.
• NSInflowThermalBCThis class is used on a boundary where the incoming flow values (rho, u, v, T) are all completely specified.
• NSMassSpecifiedNormalFlowBCThis class implements the mass equation boundary term with a specified value of rho*(u.n) imposed weakly.
• NSMassUnspecifiedNormalFlowBCThis class implements the mass equation boundary term with the rho*(u.n) boundary integral computed implicitly.
• NSMassWeakStagnationBCThe inviscid energy BC term with specified normal flow.
• NSMomentumConvectiveWeakStagnationBCThe convective part (sans pressure term) of the momentum equation boundary integral evaluated at specified stagnation temperature, stagnation pressure, and flow direction values.
• NSMomentumInviscidNoPressureImplicitFlowBCMomentum equation boundary condition used when pressure is not integrated by parts.
• NSMomentumInviscidSpecifiedNormalFlowBCMomentum equation boundary condition in which pressure is specified (given) and the value of the convective part is allowed to vary (is computed implicitly).
• NSMomentumInviscidSpecifiedPressureBCMomentum equation boundary condition in which pressure is specified (given) and the value of the convective part is allowed to vary (is computed implicitly).
• NSMomentumPressureWeakStagnationBCThis class implements the pressure term of the momentum equation boundary integral for use in weak stagnation boundary conditions.
• NSMomentumViscousBCThis class corresponds to the viscous part of the 'natural' boundary condition for the momentum equations.
• NSPenalizedNormalFlowBCThis class penalizes the the value of u.n on the boundary so that it matches some desired value.
• NSPressureNeumannBCThis kernel is appropriate for use with a 'zero normal flow' boundary condition in the context of the Euler equations.
• NSStagnationPressureBCThis Dirichlet condition imposes the condition p_0 = p_0_desired.
• NSStagnationTemperatureBCThis Dirichlet condition imposes the condition T_0 = T_0_desired.
• NSThermalBCNS thermal BC.
• Peridynamics App
• RBMPresetOldValuePDClass to apply a preset BC to nodes with rigid body motion (RBM).
• Chemical Reactions App
• ChemicalOutFlowBCChemical flux boundary condition
• XFEMApp
• CrackTipEnrichmentCutOffBCImposes the essential boundary condition , where is a constant, controllable value.

## Constraints

• Moose App
• AddConstraintAction
• CoupledTiedValueConstraint
• EqualGradientConstraintEqualGradientConstraint enforces continuity of a gradient component between secondary and primary sides of a mortar interface using lagrange multipliers
• EqualValueBoundaryConstraint
• EqualValueConstraintEqualValueConstraint enforces solution continuity between secondary and primary sides of a mortar interface using lagrange multipliers
• EqualValueEmbeddedConstraintThis is a constraint enforcing overlapping portions of two blocks to have the same variable value
• LinearNodalConstraintConstrains secondary node to move as a linear combination of primary nodes.
• NodalFrictionalConstraintFrictional nodal constraint for contact
• NodalStickConstraintSticky nodal constraint for contact
• NormalMortarMechanicalContactThis class is used to apply normal contact forces using lagrange multipliers
• NormalNodalLMMechanicalContactImplements the KKT conditions for normal contact using an NCP function. Requires that either the gap distance or the normal contact pressure (represented by the value of variable) is zero. The LM variable must be of the same order as the mesh
• OldEqualValueConstraintOldEqualValueConstraint enforces solution continuity between secondary and primary sides of a mortar interface using lagrange multipliers
• TangentialMortarLMMechanicalContactEnsures that the Karush-Kuhn-Tucker conditions of Coulomb frictional contact are satisfied
• TangentialMortarMechanicalContactUsed to apply tangential stresses from frictional contact using lagrange multipliers
• TiedValueConstraint
• Heat Conduction App
• GapConductanceConstraintComputes the residual and Jacobian contributions for the 'Lagrange Multiplier' implementation of the thermal contact problem. For more information, see the detailed description here: http://tinyurl.com/gmmhbe9
• Contact App
• MechanicalContactConstraintApply non-penetration constraints on the mechanical deformation using a node on face, primary/secondary algorithm, and multiple options for the physical behavior on the interface and the mathematical formulation for constraint enforcement
• NormalMortarLMMechanicalContactEnforces the normal contact complementarity conditions in a mortar discretization
• NormalNodalMechanicalContactApplies the normal contact force to displacement residuals through a Lagrange Multiplier
• RANFSNormalMechanicalContactApplies the Reduced Active Nonlinear Function Set scheme in which the secondary node's non-linear residual function is replaced by the zero penetration constraint equation when the constraint is active
• TangentialNodalLMMechanicalContactImplements the KKT conditions for frictional Coulomb contact using an NCP function. Requires that either the relative tangential velocity is zero or the tangential stress is equal to the friction coefficient times the normal contact pressure.
• XFEMApp
• XFEMEqualValueAtInterfaceEnforce that the solution have the same value on opposing sides of an XFEM interface.
• XFEMSingleVariableConstraintEnforce constraints on the value or flux associated with a variable at an XFEM interface.

## Contact

• Contact App
• ContactActionSets up all objects needed for mechanical contact enforcement

## DiracKernels

• Moose App
• AddDiracKernelAction
• ConstantPointSource
• FunctionDiracSource
• Heat Conduction App
• GapHeatPointSourceMaster
• Porous Flow App
• PorousFlowPeacemanBoreholeApproximates a borehole in the mesh using the Peaceman approach, ie using a number of point sinks with given radii whose positions are read from a file. NOTE: if you are using PorousFlowPorosity that depends on volumetric strain, you should set strain_at_nearest_qp=true in your GlobalParams, to ensure the nodal Porosity Material uses the volumetric strain at the Dirac quadpoints, and can therefore be computed
• PorousFlowPointSourceFromPostprocessorPoint source (or sink) that adds (or removes) fluid at a mass flux rate specified by a postprocessor.
• PorousFlowPolyLineSinkApproximates a polyline sink by using a number of point sinks with given weighting whose positions are read from a file. NOTE: if you are using PorousFlowPorosity that depends on volumetric strain, you should set strain_at_nearest_qp=true in your GlobalParams, to ensure the nodal Porosity Material uses the volumetric strain at the Dirac quadpoints, and can therefore be computed
• PorousFlowSquarePulsePointSourcePoint source (or sink) that adds (removes) fluid at a constant mass flux rate for times between the specified start and end times.
• XFEMApp
• XFEMPressureApplies a pressure on an interface cut by XFEM.
• Contact App
• ContactPrimary
• SecondaryConstraint

## DomainIntegral

• Tensor Mechanics App
• DomainIntegralActionCreates the MOOSE objects needed to compute fraction domain integrals

## Functions

• Moose App
• AddFunctionAction
• Axisymmetric2D3DSolutionFunctionFunction for reading a 2D axisymmetric solution from file and mapping it to a 3D Cartesian model
• BicubicSplineFunction
• CoarsenedPiecewiseLinearPerform a point reduction of the tabulated data upon initialization, then evaluate using a linear interpolation.
• CompositeFunctionMultiplies an arbitrary set of functions together
• ConstantFunction
• ImageFunctionFunction with values sampled from an image or image stack.
• LinearCombinationFunctionReturns the linear combination of the functions
• ParsedFunctionFunction created by parsing a string
• ParsedGradFunction
• ParsedVectorFunction
• PiecewiseBilinearInterpolates values from a csv file
• PiecewiseConstantDefines data using a set of x-y data pairs
• PiecewiseLinearLinearly interpolates between pairs of x-y data
• PiecewiseMulticonstantPiecewiseMulticonstant performs constant interpolation on 1D, 2D, 3D or 4D data. The data_file specifies the axes directions and the function values. If a point lies outside the data range, the appropriate end value is used.
• PiecewiseMultilinearPiecewiseMultilinear performs linear interpolation on 1D, 2D, 3D or 4D data. The data_file specifies the axes directions and the function values. If a point lies outside the data range, the appropriate end value is used.
• SolutionFunction
• SplineFunction
• TestSetupPostprocessorDataActionFunction
• VectorPostprocessorFunctionProvides piecewise linear interpolation of from two columns of a VectorPostprocessor
• Navier Stokes App
• WedgeFunctionFunction which computes the exact solution for Jeffery-Hamel flow in a wedge.
• Level Set App
• LevelSetOlssonBubbleImplementation of 'bubble' ranging from 0 to 1.
• LevelSetOlssonPlaneImplementation of a level set function to represent a plane.
• LevelSetOlssonVortexA function for creating vortex velocity fields for level set equation benchmark problems.
• Fluid Properties App
• SaturationPressureFunctionComputes saturation pressure from temperature function and 2-phase fluid properties object
• SaturationTemperatureFunctionComputes saturation temperature from pressure function and 2-phase fluid properties object
• Porous Flow App
• MovingPlanarFrontThis function defines the position of a moving front. The front is an infinite plane with normal pointing from start_posn to end_posn. The front's distance from start_posn is defined by 'distance', so if the 'distance' function is time dependent, the front's position will change with time. Roughly speaking, the function returns true_value for points lying in between start_posn and start_posn + distance. Precisely speaking, two planes are constructed, both with normal pointing from start_posn to end_posn. The first plane passes through start_posn; the second plane passes through end_posn. Given a point p and time t, this function returns false_value if ANY of the following are true: (a) t<activation_time; (b) t>=deactivation_time; (c) p is 'behind' start_posn (ie, p lies on one side of the start_posn plane and end_posn lies on the other side); (d) p is 'ahead' of the front (ie, p lies one one side of the front and start_posn lies on the other side); (e) the distance between p and the front is greater than active_length. Otherwise, the point is 'in the active zone' and the function returns true_value.
• Phase Field App
• FourierNoiseGenerate noise from a fourier series
• Functional Expansion Tools App
• FunctionSeriesThis function uses a convolution of functional series (functional expansion or FX) to create a 1D, 2D, or 3D function

## GrayDiffuseRadiation

• Heat Conduction App
• RadiationTransferActionThis action sets up the net radiation calculation between specified sidesets.

## ICs

### ICs/PolycrystalICs

#### ICs/PolycrystalICs/BicrystalBoundingBoxIC

• Phase Field App
• BicrystalBoundingBoxICActionConstructs a bicrystal, where one grain is on the inside of the box and the other grain is the outside of the box

## InterfaceKernels

• Moose App
• AddInterfaceKernelAction
• InterfaceReactionImplements a reaction to establish ReactionRate=k_f*u-k_b*v at interface.
• Heat Conduction App
• ConjugateHeatTransferThis InterfaceKernel models conjugate heat transfer. Fluid side must be primary side and solid side must be secondary side. T_fluid is provided in case that variable ( fluid energy variable) is not temperature but e.g. internal energy.
• SideSetHeatTransferKernelModeling conduction, convection, and radiation across internal side set.
• Tensor Mechanics App
• CZMInterfaceKernelInterface kernel for use with cohesive zone models (CZMs) that compute traction as a function of the displacement jump
• Phase Field App
• EqualGradientLagrangeInterfaceEnforce componentwise gradient continuity between two different variables across a subdomain boundary using a Lagrange multiplier
• EqualGradientLagrangeMultiplierLagrange multiplier kernel for EqualGradientLagrangeInterface.
• InterfaceDiffusionBoundaryTermAdd weak form surface terms of the Diffusion equation for two different variables across a subdomain boundary
• InterfaceDiffusionFluxMatchEnforce flux continuity between two different variables across a subdomain boundary

## Kernels

• Moose App
• AddKernelAction
• ADBodyForceDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
• ADCoupledTimeDerivativeTime derivative Kernel that acts on a coupled variable. Weak form: .
• ADDiffusionSame as Diffusion in terms of physics/residual, but the Jacobian is computed using forward automatic differentiation
• ADMatAnisoDiffusionDiffusion equation kernel that takes an anisotropic diffusivity from a material property
• ADMatDiffusionDiffusion equation kernel that takes an isotropic diffusivity from a material property
• ADTimeDerivativeThe time derivative operator with the weak form of .
• ADVectorDiffusionThe Laplacian operator (), with the weak form of . The Jacobian is computed using automatic differentiation
• ADVectorTimeDerivativeThe time derivative operator with the weak form of .
• AnisotropicDiffusionAnisotropic diffusion kernel with weak form given by .
• ArrayDiffusionThe array Laplacian operator (), with the weak form of .
• ArrayReactionThe array reaction operator with the weak form of .
• ArrayTimeDerivativeArray time derivative operator with the weak form of .
• BodyForceDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
• CoefTimeDerivativeThe time derivative operator with the weak form of .
• ConservativeAdvectionConservative form of which in its weak form is given by: .
• CoupledForceImplements a source term proportional to the value of a coupled variable. Weak form: .
• CoupledTimeDerivativeTime derivative Kernel that acts on a coupled variable. Weak form: .
• DiffusionThe Laplacian operator (), with the weak form of .
• MassEigenKernelAn eigenkernel with weak form where is the eigenvalue.
• MassLumpedTimeDerivativeLumped formulation of the time derivative . Its corresponding weak form is where denotes the time derivative of the solution coefficient associated with node .
• MatCoupledForceImplements a forcing term RHS of the form PDE = RHS, where RHS = Sum_j c_j * m_j * v_j. c_j, m_j, and v_j are provided as real coefficients, material properties, and coupled variables, respectively.
• MatDiffusionDiffusion equation Kernel that takes an isotropic Diffusivity from a material property
• MaterialDerivativeRankFourTestKernelClass used for testing derivatives of a rank four tensor material property.
• MaterialDerivativeRankTwoTestKernelClass used for testing derivatives of a rank two tensor material property.
• MaterialDerivativeTestKernelClass used for testing derivatives of a scalar material property.
• MaterialPropertyValueResidual term (u - prop) to set variable u equal to a given material property prop
• NullKernelKernel that sets a zero residual.
• ReactionImplements a simple consuming reaction term with weak form .
• ScalarLagrangeMultiplierThis class is used to enforce integral of phi = V_0 with a Lagrange multiplier approach.
• TimeDerivativeThe time derivative operator with the weak form of .
• UserForcingFunctionDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
• VectorBodyForceDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
• VectorCoupledTimeDerivativeTime derivative Kernel that acts on a coupled vector variable. Weak form: .
• VectorDiffusionThe Laplacian operator (), with the weak form of .
• VectorTimeDerivativeThe time derivative operator with the weak form of .
• Heat Conduction App
• ADHeatConductionSame as Diffusion in terms of physics/residual, but the Jacobian is computed using forward automatic differentiation
• ADHeatConductionTimeDerivativeAD Time derivative term of the heat equation for quasi-constant specific heat and the density .
• ADJouleHeatingSourceCalculates the heat source term corresponding to electrostatic Joule heating, with Jacobian contributions calculated using the automatic differentiation system.
• ADMatHeatSourceForce term in thermal transport to represent a heat source
• AnisoHeatConduction
• HeatCapacityConductionTimeDerivativeTime derivative term of the heat equation with the heat capacity as an argument.
• HeatConductionComputes residual/Jacobian contribution for term.
• HeatConductionTimeDerivativeTime derivative term of the heat equation for quasi-constant specific heat and the density .
• HeatSourceDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
• HomogenizedHeatConductionKernel for asymptotic expansion homogenization for thermal conductivity
• INSADHeatConductionTimeDerivativeAD Time derivative term of the heat equation for quasi-constant specific heat and the density .
• JouleHeatingSourceCalculates the heat source term corresponding to electrostatic Joule heating.
• SpecificHeatConductionTimeDerivativeTime derivative term of the heat equation with the specific heat and the density as arguments.
• Tensor Mechanics App
• ADDynamicStressDivergenceTensorsResidual due to stress related Rayleigh damping and HHT time integration terms
• ADGravityApply gravity. Value is in units of acceleration.
• ADInertialForceShellCalculates the residual for the inertial force/moment and the contribution of mass dependent Rayleigh damping and HHT time integration scheme.
• ADStressDivergenceRSphericalTensorsCalculate stress divergence for a spherically symmetric 1D problem in polar coordinates.
• ADStressDivergenceRZTensorsCalculate stress divergence for an axisymmetric problem in cylindrical coordinates.
• ADStressDivergenceShellQuasi-static stress divergence kernel for Shell element
• ADStressDivergenceTensorsStress divergence kernel with automatic differentiation for the Cartesian coordinate system
• ADWeakPlaneStressPlane stress kernel to provide out-of-plane strain contribution.
• AsymptoticExpansionHomogenizationKernelKernel for asymptotic expansion homogenization for elasticity
• CosseratStressDivergenceTensorsStress divergence kernel for the Cartesian coordinate system
• DynamicStressDivergenceTensorsResidual due to stress related Rayleigh damping and HHT time integration terms
• GeneralizedPlaneStrainOffDiagGeneralized Plane Strain kernel to provide contribution of the out-of-plane strain to other kernels
• GravityApply gravity. Value is in units of acceleration.
• InertialForceCalculates the residual for the inertial force () and the contribution of mass dependent Rayleigh damping and HHT time integration scheme ($\eta \cdot M \cdot ((1+\alpha)velq2-\alpha \cdot vel-old)$)
• InertialForceBeamCalculates the residual for the inertial force/moment and the contribution of mass dependent Rayleigh damping and HHT time integration scheme.
• InertialTorqueKernel for inertial torque: density * displacement x acceleration
• MomentBalancing
• OutOfPlanePressureApply pressure in the out-of-plane direction in 2D plane stress or generalized plane strain models
• PhaseFieldFractureMechanicsOffDiagStress divergence kernel for phase-field fracture: Computes off diagonal damage dependent Jacobian components. To be used with StressDivergenceTensors or DynamicStressDivergenceTensors.
• PlasticHeatEnergyPlastic heat energy density = coeff * stress * plastic_strain_rate
• PoroMechanicsCouplingAdds , where the subscript is the component.
• StressDivergenceBeamQuasi-static and dynamic stress divergence kernel for Beam element
• StressDivergenceRSphericalTensorsCalculate stress divergence for a spherically symmetric 1D problem in polar coordinates.
• StressDivergenceRZTensorsCalculate stress divergence for an axisymmetric problem in cylindrical coordinates.
• StressDivergenceTensorsStress divergence kernel for the Cartesian coordinate system
• StressDivergenceTensorsTrussKernel for truss element
• WeakPlaneStressPlane stress kernel to provide out-of-plane strain contribution.
• DynamicTensorMechanics
• PoroMechanics
• TensorMechanics
• Phase Field App
• ACBarrierFunctionAllen-Cahn kernel used when 'mu' is a function of variables
• ACGBPolyGrain-Boundary model concentration dependent residual
• ACGrGrElasticDrivingForceAdds elastic energy contribution to the Allen-Cahn equation
• ACGrGrMultiMulti-phase poly-crystalline Allen-Cahn Kernel
• ACGrGrPolyGrain-Boundary model poly-crystalline interface Allen-Cahn Kernel
• ACInterfaceGradient energy Allen-Cahn Kernel
• ACInterface2DMultiPhase1Gradient energy Allen-Cahn Kernel where the derivative of interface parameter kappa wrt the gradient of order parameter is considered.
• ACInterface2DMultiPhase2Gradient energy Allen-Cahn Kernel where the interface parameter kappa is considered.
• ACInterfaceCleavageFractureGradient energy Allen-Cahn Kernel where crack propagation along weakcleavage plane is preferred
• ACInterfaceKobayashi1Anisotropic gradient energy Allen-Cahn Kernel Part 1
• ACInterfaceKobayashi2Anisotropic Gradient energy Allen-Cahn Kernel Part 2
• ACInterfaceStressInterface stress driving force Allen-Cahn Kernel
• ACKappaFunctionGradient energy term for when kappa as a function of the variable
• ACMultiInterfaceGradient energy Allen-Cahn Kernel with cross terms
• ACSEDGPolyStored Energy contribution to grain growth
• ACSwitchingKernel for Allen-Cahn equation that adds derivatives of switching functions and energies
• ADACInterfaceGradient energy Allen-Cahn Kernel
• ADAllenCahnAllen-Cahn Kernel that uses a DerivativeMaterial Free Energy
• ADCHSoretMobilityAdds contribution due to thermo-migration to the Cahn-Hilliard equation using a concentration 'u', temperature 'T', and thermal mobility 'mobility' (in units of length squared per time).
• ADCHSplitChemicalPotentialChemical potential kernel in Split Cahn-Hilliard that solves chemical potential in a weak form
• ADCHSplitConcentrationConcentration kernel in Split Cahn-Hilliard that solves chemical potential in a weak form
• ADGrainGrowthGrain-Boundary model poly-crystalline interface Allen-Cahn Kernel
• ADMatReactionKernel to add -L*v, where L=reaction rate, v=variable
• ADSplitCHParsedSplit formulation Cahn-Hilliard Kernel that uses a DerivativeMaterial Free Energy
• ADSplitCHWResSplit formulation Cahn-Hilliard Kernel for the chemical potential variable with a scalar (isotropic) mobility
• ADSplitCHWResAnisoSplit formulation Cahn-Hilliard Kernel for the chemical potential variable with a scalar (isotropic) mobility
• AllenCahnAllen-Cahn Kernel that uses a DerivativeMaterial Free Energy
• AllenCahnElasticEnergyOffDiagThis kernel calculates off-diagonal Jacobian of elastic energy in AllenCahn with respect to displacements
• AntitrappingCurrentKernel that provides antitrapping current at the interface for alloy solidification
• CHBulkPFCTradCahn-Hilliard kernel for a polynomial phase field crystal free energy.
• CHInterfaceGradient energy Cahn-Hilliard Kernel with a scalar (isotropic) mobility
• CHInterfaceAnisoGradient energy Cahn-Hilliard Kernel with a tensor (anisotropic) mobility
• CHMathSimple demonstration Cahn-Hilliard Kernel using an algebraic double-well potential
• CHPFCRFFCahn-Hilliard residual for the RFF form of the phase field crystal model
• CHSplitChemicalPotentialChemical potential kernel in Split Cahn-Hilliard that solves chemical potential in a weak form
• CHSplitConcentrationConcentration kernel in Split Cahn-Hilliard that solves chemical potential in a weak form
• CHSplitFluxComputes flux as nodal variable
• CahnHilliardCahn-Hilliard Kernel that uses a DerivativeMaterial Free Energy and a scalar (isotropic) mobility
• CahnHilliardAnisoCahn-Hilliard Kernel that uses a DerivativeMaterial Free Energy and a tensor (anisotropic) mobility
• CoefCoupledTimeDerivativeScaled time derivative Kernel that acts on a coupled variable
• CoefReactionImplements the residual term (p*u, test)
• ConservedLangevinNoiseSource term for noise from a ConservedNoise userobject
• CoupledAllenCahnCoupled Allen-Cahn Kernel that uses a DerivativeMaterial Free Energy
• CoupledMaterialDerivativeKernel that implements the first derivative of a function material property with respect to a coupled variable.
• CoupledSusceptibilityTimeDerivativeA modified coupled time derivative Kernel that multiplies the time derivative of a coupled variable by a generalized susceptibility
• CoupledSwitchingTimeDerivativeCoupled time derivative Kernel that multiplies the time derivative by \$\frac{dh_\alpha}{d\eta_i} F_\alpha + \frac{dh_\beta}{d\eta_i} F_\beta + \dots)
• DiscreteNucleationForceTerm for inserting grain nuclei or phases in non-conserved order parameter fields
• GradientComponentSet the kernel variable to a specified component of the gradient of a coupled variable.
• HHPFCRFFReaction type kernel for the RFF phase fit crystal model
• KKSACBulkCKKS model kernel (part 2 of 2) for the Bulk Allen-Cahn. This includes all terms dependent on chemical potential.
• KKSACBulkFKKS model kernel (part 1 of 2) for the Bulk Allen-Cahn. This includes all terms NOT dependent on chemical potential.
• KKSCHBulkKKS model kernel for the Bulk Cahn-Hilliard term. This operates on the concentration 'c' as the non-linear variable
• KKSMultiACBulkCMulti-phase KKS model kernel (part 2 of 2) for the Bulk Allen-Cahn. This includes all terms dependent on chemical potential.
• KKSMultiACBulkFKKS model kernel (part 1 of 2) for the Bulk Allen-Cahn. This includes all terms NOT dependent on chemical potential.
• KKSMultiPhaseConcentrationKKS multi-phase model kernel to enforce . The non-linear variable of this kernel is , the final phase concentration in the list.
• KKSPhaseChemicalPotentialKKS model kernel to enforce the pointwise equality of phase chemical potentials dFa/dca = dFb/dcb. The non-linear variable of this kernel is ca.
• KKSPhaseConcentrationKKS model kernel to enforce the decomposition of concentration into phase concentration (1-h(eta))ca + h(eta)cb - c = 0. The non-linear variable of this kernel is cb.
• KKSSplitCHCResKKS model kernel for the split Bulk Cahn-Hilliard term. This kernel operates on the physical concentration 'c' as the non-linear variable
• LangevinNoiseSource term for non-conserved Langevin noise
• LaplacianSplitSplit with a variable that holds the Laplacian of a phase field variable.
• MaskedBodyForceKernel that defines a body force modified by a material mask
• MatAnisoDiffusionDiffusion equation Kernel that takes an anisotropic Diffusivity from a material property
• MatGradSquareCoupledGradient square of a coupled variable.
• MatReactionKernel to add -L*v, where L=reaction rate, v=variable
• MultiGrainRigidBodyMotionAdds rigid body motion to grains
• SimpleACInterfaceGradient energy for Allen-Cahn Kernel with constant Mobility and Interfacial parameter
• SimpleCHInterfaceGradient energy for Cahn-Hilliard equation with constant Mobility and Interfacial parameter
• SimpleCoupledACInterfaceGradient energy for Allen-Cahn Kernel with constant Mobility and Interfacial parameter for a coupled order parameter variable.
• SimpleSplitCHWResGradient energy for split Cahn-Hilliard equation with constant Mobility for a coupled order parameter variable.
• SingleGrainRigidBodyMotionAdds rigid mody motion to a single grain
• SoretDiffusionAdd Soret effect to Split formulation Cahn-Hilliard Kernel
• SplitCHMathSimple demonstration split formulation Cahn-Hilliard Kernel using an algebraic double-well potential
• SplitCHParsedSplit formulation Cahn-Hilliard Kernel that uses a DerivativeMaterial Free Energy
• SplitCHWResSplit formulation Cahn-Hilliard Kernel for the chemical potential variable with a scalar (isotropic) mobility
• SplitCHWResAnisoSplit formulation Cahn-Hilliard Kernel for the chemical potential variable with a tensor (anisotropic) mobility
• SusceptibilityTimeDerivativeA modified time derivative Kernel that multiplies the time derivative of a variable by a generalized susceptibility
• SwitchingFunctionConstraintEtaLagrange multiplier kernel to constrain the sum of all switching functions in a multiphase system. This kernel acts on a non-conserved order parameter eta_i.
• SwitchingFunctionConstraintLagrangeLagrange multiplier kernel to constrain the sum of all switching functions in a multiphase system. This kernel acts on the Lagrange multiplier variable.
• SwitchingFunctionPenaltyPenalty kernel to constrain the sum of all switching functions in a multiphase system.
• CHPFCRFFSplitKernel
• HHPFCRFFSplitKernel
• PFCRFFKernel
• PolycrystalElasticDrivingForce
• PolycrystalKernel
• PolycrystalStoredEnergy
• RigidBodyMultiKernel
• Peridynamics App
• ForceStabilizedSmallStrainMechanicsNOSPDClass for calculating residual and Jacobian for the non-ordinary state-based peridynamic solid mechanics formulation using a fictitious force method for stabilization.
• GeneralizedPlaneStrainOffDiagHNOSPDClass for calculating the off-diagonal Jacobian corresponding to coupling between displacements (or temperature) with scalar out-of-plane strain for the generalized plane strain using the HNOSPD formulation
• GeneralizedPlaneStrainOffDiagOSPDClass for calculating the off-diagonal Jacobian corresponding to coupling between displacements (or temperature) and the scalar out-of-plane strain for the generalized plane strain using the OSPD formulation
• HeatConductionBPDClass for calculating the residual and Jacobian for the bond-based peridynamic heat conduction formulation
• HeatSourceBPDClass for calculating the residual from heat source for the bond-based peridynamic heat conduction formulation
• HorizonStabilizedFiniteStrainMechanicsNOSPDClass for calculating the residual and Jacobian for the horizon-stabilized non-ordinary state-based peridynamic correspondence model under finite strain assumptions
• HorizonStabilizedSmallStrainMechanicsNOSPDClass for calculating the residual and Jacobian for the horizon-stabilized non-ordinary state-based peridynamic correspondence model under small strain assumptions
• MechanicsBPDClass for calculating the residual and Jacobian for the bond-based peridynamic mechanics formulation
• MechanicsOSPDClass for calculating the residual and Jacobian for the ordinary state-based peridynamic mechanics formulation
• WeakPlaneStressHNOSPDClass for calculating the residual and Jacobian for the peridynamic plane stress model using weak formulation
• Chemical Reactions App
• CoupledBEEquilibriumSubDerivative of equilibrium species concentration wrt time
• CoupledBEKineticDerivative of kinetic species concentration wrt time
• CoupledConvectionReactionSubConvection of equilibrium species
• CoupledDiffusionReactionSubDiffusion of equilibrium species
• DarcyFluxPressureDarcy flux: - cond * (Grad P - rho * g) where cond is the hydraulic conductivity, P is fluid pressure, rho is fluid density and g is gravity
• DesorptionFromMatrixMass flow rate from the matrix to the porespace. Add this to TimeDerivative kernel to get complete DE for the fluid adsorbed in the matrix
• DesorptionToPorespaceMass flow rate to the porespace from the matrix. Add this to the other kernels for the porepressure variable to form the complete DE
• PrimaryConvectionConvection of primary species
• PrimaryDiffusionDiffusion of primary species
• PrimaryTimeDerivativeDerivative of primary species concentration wrt time
• XFEMApp
• CrackTipEnrichmentStressDivergenceTensorsEnrich stress divergence kernel for small-strain simulations
• Geochemistry App
• GeochemistryDispersionKernel describing grad(porosity * tensor_coeff * grad(concentration)), where porosity is an AuxVariable (or just a real number), tensor_coeff is the hydrodynamic dispersion tensor and concentration is the 'variable' for this Kernel
• GeochemistryTimeDerivativeKernel describing porosity * d(concentration)/dt, where porosity is an AuxVariable (or just a real number) and concentration is the 'variable' for this Kernel. This Kernel should not be used if porosity is time-dependent. Mass lumping is employed for numerical stability
• Porous Flow App
• FluxLimitedTVDAdvectionConservative form of (advection), using the Flux Limited TVD scheme invented by Kuzmin and Turek
• PorousFlowAdvectiveFluxFully-upwinded advective flux of the component given by fluid_component
• PorousFlowBasicAdvectionAdvective flux of a Variable using the Darcy velocity of the fluid phase
• PorousFlowDesorpedMassTimeDerivativeDesorped component mass derivative wrt time.
• PorousFlowDesorpedMassVolumetricExpansionDesorped_mass * rate_of_solid_volumetric_expansion
• PorousFlowDispersiveFluxDispersive and diffusive flux of the component given by fluid_component in all phases
• PorousFlowEffectiveStressCouplingAdds , where the subscript is the component.
• PorousFlowEnergyTimeDerivativeDerivative of heat-energy-density wrt time
• PorousFlowExponentialDecayResidual = rate * (variable - reference). Useful for modelling exponential decay of a variable
• PorousFlowFluxLimitedTVDAdvectionAdvective flux of fluid species or heat using the Flux Limited TVD scheme invented by Kuzmin and Turek
• PorousFlowFullySaturatedDarcyBaseDarcy flux suitable for models involving a fully-saturated, single phase, single component fluid. No upwinding is used
• PorousFlowFullySaturatedDarcyFlowDarcy flux suitable for models involving a fully-saturated single phase, multi-component fluid. No upwinding is used
• PorousFlowFullySaturatedHeatAdvectionHeat flux that arises from the advection of a fully-saturated single phase fluid. No upwinding is used
• PorousFlowFullySaturatedMassTimeDerivativeFully-saturated version of the single-component, single-phase fluid mass derivative wrt time
• PorousFlowHeatAdvectionFully-upwinded heat flux, advected by the fluid
• PorousFlowHeatConductionHeat conduction in the Porous Flow module
• PorousFlowHeatMassTransferCalculate heat or mass transfer from a coupled variable v to the variable u. No mass lumping is performed here.
• PorousFlowHeatVolumetricExpansionEnergy-density*rate_of_solid_volumetric_expansion
• PorousFlowMassRadioactiveDecayRadioactive decay of a fluid component
• PorousFlowMassTimeDerivativeComponent mass derivative wrt time for component given by fluid_component
• PorousFlowMassVolumetricExpansionComponent_mass*rate_of_solid_volumetric_expansion
• PorousFlowPlasticHeatEnergyPlastic heat energy density source = (1 - porosity) * coeff * stress * plastic_strain_rate
• PorousFlowPreDisPrecipitation-dissolution of chemical species
• Misc App
• ADThermoDiffusionCalculates diffusion due to temperature gradient and Soret Coefficient
• CoefDiffusionKernel for diffusion with diffusivity = coef + function
• ThermoDiffusionKernel for thermo-diffusion (Soret effect, thermophoresis, etc.)
• Navier Stokes App
• DistributedForce
• DistributedPower
• INSADBoussinesqBodyForceComputes a body force for natural convection buoyancy.
• INSADEnergyAdvectionThis class computes the residual and Jacobian contributions for temperature advection for a divergence free velocity field.
• INSADEnergyAmbientConvectionComputes a heat source/sink due to convection from ambient surroundings.
• INSADEnergySUPGAdds the supg stabilization to the INS temperature/energy equation
• INSADEnergySourceComputes an arbitrary volumetric heat source (or sink).
• INSADGravityForceComputes a body force due to gravity.
• INSADMassThis class computes the mass equation residual and Jacobian contributions (the latter using automatic differentiation) for the incompressible Navier-Stokes equations.
• INSADMassPSPGThis class adds PSPG stabilization to the mass equation, enabling use of equal order shape functions for pressure and velocity variables
• INSADMomentumAdvectionAdds the advective term to the INS momentum equation
• INSADMomentumCoupledForceComputes a body force due to a coupled vector variable or a vector function
• INSADMomentumPressureAdds the pressure term to the INS momentum equation
• INSADMomentumSUPGAdds the supg stabilization to the INS momentum equation
• INSADMomentumTimeDerivativeThis class computes the time derivative for the incompressible Navier-Stokes momentum equation.
• INSADMomentumViscousAdds the viscous term to the INS momentum equation
• INSChorinCorrectorThis class computes the 'Chorin' Corrector equation in fully-discrete (both time and space) form.
• INSChorinPredictorThis class computes the 'Chorin' Predictor equation in fully-discrete (both time and space) form.
• INSChorinPressurePoissonThis class computes the pressure Poisson solve which is part of the 'split' scheme used for solving the incompressible Navier-Stokes equations.
• INSCompressibilityPenaltyThe penalty term may be used when Dirichlet boundary condition is applied to the entire boundary.
• INSMassThis class computes the mass equation residual and Jacobian contributions for the incompressible Navier-Stokes momentum equation.
• INSMassRZThis class computes the mass equation residual and Jacobian contributions for the incompressible Navier-Stokes momentum equation in RZ coordinates.
• INSMomentumLaplaceFormThis class computes momentum equation residual and Jacobian viscous contributions for the 'Laplacian' form of the governing equations.
• INSMomentumLaplaceFormRZThis class computes additional momentum equation residual and Jacobian contributions for the incompressible Navier-Stokes momentum equation in RZ (axisymmetric cylindrical) coordinates, using the 'Laplace' form of the governing equations.
• INSMomentumTimeDerivativeThis class computes the time derivative for the incompressible Navier-Stokes momentum equation.
• INSMomentumTractionFormThis class computes momentum equation residual and Jacobian viscous contributions for the 'traction' form of the governing equations.
• INSMomentumTractionFormRZThis class computes additional momentum equation residual and Jacobian contributions for the incompressible Navier-Stokes momentum equation in RZ (axisymmetric cylindrical) coordinates.
• INSPressurePoissonThis class computes the pressure Poisson solve which is part of the 'split' scheme used for solving the incompressible Navier-Stokes equations.
• INSProjectionThis class computes the 'projection' part of the 'split' method for solving incompressible Navier-Stokes.
• INSSplitMomentumThis class computes the 'split' momentum equation residual.
• INSTemperatureThis class computes the residual and Jacobian contributions for the incompressible Navier-Stokes temperature (energy) equation.
• INSTemperatureTimeDerivativeThis class computes the time derivative for the incompressible Navier-Stokes momentum equation.
• MassConvectiveFlux
• MomentumConvectiveFlux
• NSEnergyInviscidFluxThis class computes the inviscid part of the energy flux.
• NSEnergyThermalFluxThis class is responsible for computing residuals and Jacobian terms for the k * grad(T) * grad(phi) term in the Navier-Stokes energy equation.
• NSEnergyViscousFluxViscous flux terms in energy equation.
• NSGravityForceThis class computes the gravity force contribution.
• NSGravityPowerThis class computes the momentum contributed by gravity.
• NSMassInviscidFluxThis class computes the inviscid flux in the mass equation.
• NSMomentumInviscidFluxThe inviscid flux (convective + pressure terms) for the momentum conservation equations.
• NSMomentumInviscidFluxWithGradPThis class computes the inviscid flux with pressure gradient in the momentum equation.
• NSMomentumViscousFluxDerived instance of the NSViscousFluxBase class for the momentum equations.
• NSSUPGEnergyCompute residual and Jacobian terms form the SUPG terms in the energy equation.
• NSSUPGMassCompute residual and Jacobian terms form the SUPG terms in the mass equation.
• NSSUPGMomentumCompute residual and Jacobian terms form the SUPG terms in the momentum equation.
• NSTemperatureL2This class was originally used to solve for the temperature using an L2-projection.
• PressureGradient
• TotalEnergyConvectiveFlux
• Level Set App
• LevelSetAdvectionImplements the level set advection equation: , where the weak form is .
• LevelSetAdvectionSUPGSUPG stablization term for the advection portion of the level set equation.
• LevelSetForcingFunctionSUPGThe SUPG stablization term for a forcing function.
• LevelSetOlssonReinitializationThe re-initialization equation defined by Olsson et. al. (2007).
• LevelSetTimeDerivativeSUPGSUPG stablization terms for the time derivative of the level set equation.

### Kernels/PFCRFFKernel

• Phase Field App
• PFCRFFKernelActionSet up kernels for the rational function fit (RFF) phase field crystal model

### Kernels/PolycrystalStoredEnergy

• Phase Field App
• PolycrystalStoredEnergyActionAction that adds the contribution of stored energy associated with dislocations to grain growth models

### Kernels/PoroMechanics

• Tensor Mechanics App
• PoroMechanicsActionSet up stress divergence kernels with coordinate system aware logic

## Mesh

• Moose App
• CreateDisplacedProblemAction
• DisplayGhostingActionAction to setup AuxVariables and AuxKernels to display ghosting when running in parallel
• SetupMeshAction
• SetupMeshCompleteAction
• AddMeshGeneratorActionAction for adding mesh generator objects
• AllSideSetsByNormalsGeneratorAdds sidesets to the entire mesh based on unique normals.
• AnnularMeshGeneratorFor rmin>0: creates an annular mesh of QUAD4 elements. For rmin=0: creates a disc mesh of QUAD4 and TRI3 elements. Boundary sidesets are created at rmax and rmin, and given these names. If dmin!0 and dmax!360, a sector of an annulus or disc is created. In this case boundary sidesets are also created a dmin and dmax, and given these names
• BlockDeletionGeneratorMesh generator which removes elements with the specified subdomain ID
• BoundingBoxNodeSetGeneratorAssigns all of the nodes either inside or outside of a bounding box to a new nodeset.
• BreakBoundaryOnSubdomainGeneratorBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name
• BreakMeshByBlockGeneratorBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name. At the momentthis only works on REPLICATED mesh
• CartesianMeshGeneratorThis CartesianMeshGenerator creates a non-uniform Cartesian mesh.
• CombinerGeneratorCombine multiple meshes (or copies of one mesh) together into one (disjoint) mesh. Can optionally translate those meshes before combining them.
• ConcentricCircleMeshGeneratorThis ConcentricCircleMeshGenerator source code is to generate concentric circle meshes.
• DistributedRectilinearMeshGeneratorCreate a line, square, or cube mesh with uniformly spaced or biased elements.
• ElementGeneratorGenerates individual elements given a list of nodal positions.
• ElementSubdomainIDGeneratorAllows the user to assign each element the subdomain ID of their choice
• ExtraNodesetGeneratorCreates a new node set and a new boundary made with the nodes the user provides.
• FancyExtruderGeneratorExtrudes a 2D mesh into 3D, can have variable a variable height for each elevation, variable number of layers within each elevation and remap subdomain_ids within each elevation
• FileMeshGeneratorRead a mesh from a file.
• GeneratedMeshGeneratorCreate a line, square, or cube mesh with uniformly spaced or biased elements.
• ImageMeshGeneratorGenerated mesh with the aspect ratio of a given image stack.
• ImageSubdomainGeneratorSamples an image at the coordinates of each element centroid, using the resulting pixel color value as each element's subdomain ID
• LowerDBlockFromSidesetGeneratorAdds lower dimensional elements on the specified sidesets.
• MeshCollectionGeneratorCollects multiple meshes into a single (unconnected) mesh.
• MeshExtruderGeneratorTakes a 1D or 2D mesh and extrudes the entire structure along the specified axis increasing the dimensionality of the mesh.
• MeshSideSetGeneratorAdd lower dimensional elements along the faces contained in a side set to set up mixed dimensional problems
• OrientedSubdomainBoundingBoxGeneratorDefines a subdomain inside or outside of a bounding box with arbitrary orientation.
• ParsedGenerateSidesetA MeshModifier that adds element sides to a sideset if the centroid satisfies the combinatorial_geometry expression. Optionally, element sides are also added if they are included in included_subdomain_ids and if they feature the designated normal.
• ParsedSubdomainMeshGeneratorUses a parsed expression (combinatorial_geometry) to determine if an element (via its centroid) is inside the region defined by the expression and assigns a new block ID.
• PatchMeshGeneratorCreates 2D or 3D patch meshes.
• PatternedMeshGeneratorCreates a 2D mesh from a specified set of unique 'tiles' meshes and a two-dimensional pattern.
• PlaneDeletionGeneratorRemoves elements lying 'above' the plane (in the direction of the normal).
• RenameBlockGeneratorRenameBlockGenerator re-numbers or re-names an old_block_id or old_block_name with a new_block_id or new_block_name. If using RenameBlockGenerator to merge blocks (by giving them the same name, for instance) it is advisable to specify all your blocks in old_blocks to avoid inconsistencies
• RenameBoundaryGeneratorRenameBoundaryGenerator re-numbers or re-names an old_boundary_id or old_boundary_name with a new_boundary_id or new_boundary_name. If using RenameBoundaryGenerator to merge boundaries (by giving them the same name, for instance) it is advisable to specify all your boundaries in old_boundaries to avoid inconsistencies
• RinglebMeshGeneratorCreates a mesh for the Ringleb problem.
• SideSetsAroundSubdomainGeneratorAdds element faces that are on the exterior of the given block to the sidesets specified
• SideSetsBetweenSubdomainsGeneratorMeshGenerator that creates a sideset composed of the nodes located between two or more subdomains.
• SideSetsFromBoundingBoxGeneratorDefines new sidesets using currently-defined sideset IDs inside or outside of a bounding box.
• SideSetsFromNormalsGeneratorAdds a new named sideset to the mesh for all faces matching the specified normal.
• SideSetsFromPointsGeneratorAdds a new sideset starting at the specified point containing all connected element faces with the same normal.
• SmoothMeshGeneratorUtilizes a simple Laplacian based smoother to attempt to improve mesh quality. Will not move boundary nodes or nodes along block/subdomain boundaries
• SpiralAnnularMeshGeneratorCreates an annular mesh based on TRI3 or TRI6 elements on several rings.
• StackGeneratorUse the supplied meshes and stitch them on top of each other
• StitchedMeshGeneratorAllows multiple mesh files to be stiched together to form a single mesh.
• SubdomainBoundingBoxGeneratorChanges the subdomain ID of elements either (XOR) inside or outside the specified box to the specified ID.
• SubdomainIDGeneratorSets all the elements of the input mesh to a unique subdomain ID.
• TiledMeshGeneratorUse the supplied mesh and create a tiled grid by repeating this mesh in the x, y, and z directions.
• TransformGeneratorApplies a linear transform to the entire mesh.
• AnnularMeshFor rmin>0: creates an annular mesh of QUAD4 elements. For rmin=0: creates a disc mesh of QUAD4 and TRI3 elements. Boundary sidesets are created at rmax and rmin, and given these names. If dmin!0 and dmax!360, a sector of an annulus or disc is created. In this case boundary sidesets are also created a dmin and dmax, and given these names
• ConcentricCircleMeshThis ConcentricCircleMesh source code is to generate concentric circle meshes.
• FileMeshRead a mesh from a file.
• GeneratedMeshCreate a line, square, or cube mesh with uniformly spaced or biased elements.
• ImageMeshGenerated mesh with the aspect ratio of a given image stack.
• MeshGeneratorMeshMesh generated from parameters
• PatternedMeshCreates a 2D mesh from a specified set of unique 'tiles' meshes and a two-dimensional pattern.
• RinglebMeshCreates a mesh for the Ringleb problem.
• SpiralAnnularMeshCreates an annual mesh based on TRI3 elements (it can also be TRI6 elements) on several rings.
• StitchedMeshReads in all of the given meshes and stitches them all together into one mesh.
• TiledMeshUse the supplied mesh and create a tiled grid by repeating this mesh in the x,y, and z directions.
• Partitioner
• Peridynamics App
• MeshGeneratorPDMesh generator class to convert FE mesh to Peridynamics mesh
• PeridynamicsMeshMesh class to store and return peridynamics specific mesh data
• Heat Conduction App
• PatchSidesetGeneratorDivides the given sideset into smaller patches of roughly equal size.
• Phase Field App
• SphereSurfaceMeshGeneratorGenerated sphere mesh - a two dimensional manifold embedded in three dimensional space
• EBSDMeshMesh generated from a specified DREAM.3D EBSD data file.
• External Petsc Solver App
• PETScDMDAMeshCreate a square mesh from PETSc DMDA.

## MeshGenerators

• Moose App
• AddMeshGeneratorActionAction for adding mesh generator objects
• AllSideSetsByNormalsGeneratorAdds sidesets to the entire mesh based on unique normals.
• AnnularMeshGeneratorFor rmin>0: creates an annular mesh of QUAD4 elements. For rmin=0: creates a disc mesh of QUAD4 and TRI3 elements. Boundary sidesets are created at rmax and rmin, and given these names. If dmin!0 and dmax!360, a sector of an annulus or disc is created. In this case boundary sidesets are also created a dmin and dmax, and given these names
• BlockDeletionGeneratorMesh generator which removes elements with the specified subdomain ID
• BoundingBoxNodeSetGeneratorAssigns all of the nodes either inside or outside of a bounding box to a new nodeset.
• BreakBoundaryOnSubdomainGeneratorBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name
• BreakMeshByBlockGeneratorBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name. At the momentthis only works on REPLICATED mesh
• CartesianMeshGeneratorThis CartesianMeshGenerator creates a non-uniform Cartesian mesh.
• CombinerGeneratorCombine multiple meshes (or copies of one mesh) together into one (disjoint) mesh. Can optionally translate those meshes before combining them.
• ConcentricCircleMeshGeneratorThis ConcentricCircleMeshGenerator source code is to generate concentric circle meshes.
• DistributedRectilinearMeshGeneratorCreate a line, square, or cube mesh with uniformly spaced or biased elements.
• ElementGeneratorGenerates individual elements given a list of nodal positions.
• ElementSubdomainIDGeneratorAllows the user to assign each element the subdomain ID of their choice
• ExtraNodesetGeneratorCreates a new node set and a new boundary made with the nodes the user provides.
• FancyExtruderGeneratorExtrudes a 2D mesh into 3D, can have variable a variable height for each elevation, variable number of layers within each elevation and remap subdomain_ids within each elevation
• FileMeshGeneratorRead a mesh from a file.
• GeneratedMeshGeneratorCreate a line, square, or cube mesh with uniformly spaced or biased elements.
• ImageMeshGeneratorGenerated mesh with the aspect ratio of a given image stack.
• ImageSubdomainGeneratorSamples an image at the coordinates of each element centroid, using the resulting pixel color value as each element's subdomain ID
• LowerDBlockFromSidesetGeneratorAdds lower dimensional elements on the specified sidesets.
• MeshCollectionGeneratorCollects multiple meshes into a single (unconnected) mesh.
• MeshExtruderGeneratorTakes a 1D or 2D mesh and extrudes the entire structure along the specified axis increasing the dimensionality of the mesh.
• MeshSideSetGeneratorAdd lower dimensional elements along the faces contained in a side set to set up mixed dimensional problems
• OrientedSubdomainBoundingBoxGeneratorDefines a subdomain inside or outside of a bounding box with arbitrary orientation.
• ParsedGenerateSidesetA MeshModifier that adds element sides to a sideset if the centroid satisfies the combinatorial_geometry expression. Optionally, element sides are also added if they are included in included_subdomain_ids and if they feature the designated normal.
• ParsedSubdomainMeshGeneratorUses a parsed expression (combinatorial_geometry) to determine if an element (via its centroid) is inside the region defined by the expression and assigns a new block ID.
• PatchMeshGeneratorCreates 2D or 3D patch meshes.
• PatternedMeshGeneratorCreates a 2D mesh from a specified set of unique 'tiles' meshes and a two-dimensional pattern.
• PlaneDeletionGeneratorRemoves elements lying 'above' the plane (in the direction of the normal).
• RenameBlockGeneratorRenameBlockGenerator re-numbers or re-names an old_block_id or old_block_name with a new_block_id or new_block_name. If using RenameBlockGenerator to merge blocks (by giving them the same name, for instance) it is advisable to specify all your blocks in old_blocks to avoid inconsistencies
• RenameBoundaryGeneratorRenameBoundaryGenerator re-numbers or re-names an old_boundary_id or old_boundary_name with a new_boundary_id or new_boundary_name. If using RenameBoundaryGenerator to merge boundaries (by giving them the same name, for instance) it is advisable to specify all your boundaries in old_boundaries to avoid inconsistencies
• RinglebMeshGeneratorCreates a mesh for the Ringleb problem.
• SideSetsAroundSubdomainGeneratorAdds element faces that are on the exterior of the given block to the sidesets specified
• SideSetsBetweenSubdomainsGeneratorMeshGenerator that creates a sideset composed of the nodes located between two or more subdomains.
• SideSetsFromBoundingBoxGeneratorDefines new sidesets using currently-defined sideset IDs inside or outside of a bounding box.
• SideSetsFromNormalsGeneratorAdds a new named sideset to the mesh for all faces matching the specified normal.
• SideSetsFromPointsGeneratorAdds a new sideset starting at the specified point containing all connected element faces with the same normal.
• SmoothMeshGeneratorUtilizes a simple Laplacian based smoother to attempt to improve mesh quality. Will not move boundary nodes or nodes along block/subdomain boundaries
• SpiralAnnularMeshGeneratorCreates an annular mesh based on TRI3 or TRI6 elements on several rings.
• StackGeneratorUse the supplied meshes and stitch them on top of each other
• StitchedMeshGeneratorAllows multiple mesh files to be stiched together to form a single mesh.
• SubdomainBoundingBoxGeneratorChanges the subdomain ID of elements either (XOR) inside or outside the specified box to the specified ID.
• SubdomainIDGeneratorSets all the elements of the input mesh to a unique subdomain ID.
• TiledMeshGeneratorUse the supplied mesh and create a tiled grid by repeating this mesh in the x, y, and z directions.
• TransformGeneratorApplies a linear transform to the entire mesh.
• Peridynamics App
• MeshGeneratorPDMesh generator class to convert FE mesh to Peridynamics mesh
• Heat Conduction App
• PatchSidesetGeneratorDivides the given sideset into smaller patches of roughly equal size.
• Phase Field App
• SphereSurfaceMeshGeneratorGenerated sphere mesh - a two dimensional manifold embedded in three dimensional space

## MeshModifiers

• Moose App
• AddMeshModifierAction
• AddAllSideSetsByNormalsAdds sidesets to the entire mesh based on unique normals
• AddExtraNodeset
• AddSideSetsFromBoundingBoxFind sidesets with given boundary ids in bounding box and add new boundary id. This can be done by finding all required boundary and adding the new boundary id to those sidesets. Alternatively, a number of boundary ids can be provided and all nodes within the bounding box that have all the required boundary ids will have a newboundary id added.
• AssignElementSubdomainID
• AssignSubdomainID
• BlockDeleterMesh modifier which removes elements with the specified subdomain ID
• BoundingBoxNodeSetAssigns all of the nodes either inside or outside of a bounding box to a new nodeset.
• BreakBoundaryOnSubdomainBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name
• BreakMeshByBlockBreak boundaries based on the subdomains to which their sides are attached. Naming convention for the new boundaries will be the old boundary name plus "_to_" plus the subdomain name. At the momentthis only works on REPLICATED mesh
• ImageSubdomainSamples an image at the coordinates of each element centroid using the resulting value as each element's subdomain ID
• LowerDBlockFromSidesetAdds lower dimensional elements on the specified sidesets.
• MeshExtruderTakes a 1D or 2D mesh and extrudes the entire structure along the specified axis increasing the dimensionality of the mesh.
• MeshSideSetAdd lower dimensional elements along the faces contained in a side set to set up mixed dimensional problems
• OrientedSubdomainBoundingBox
• ParsedAddSidesetA MeshModifier that adds element's sides to a sideset if the centroid satisfies the combinatorial_geometry expression, (and optionally) if one of the side's elements is in included_subdomain_ids and if it features the correct normal.
• ParsedSubdomainMeshModifierMeshModifier that uses a parsed expression (combinatorial_geometry) to determine if an element (aka its centroid) is inside the combinatorial geometry and assigns a new block id.
• RenameBlockRenameBlock re-numbers or re-names an old_block_id or old_block_name with a new_block_id or new_block_name. If using RenameBlock to merge blocks (by giving them the same name, for instance) it is advisable to specify all your blocks in old_blocks to avoid inconsistencies
• SideSetsAroundSubdomainAdds element faces that are on the exterior of the given block to the sidesets specified
• SideSetsBetweenSubdomains
• SideSetsFromNormalsAdds a new named sideset to the mesh for all faces matching the specified normal.
• SideSetsFromPointsAdds a new sideset starting at the specified point containing all connected element faces with the same normal.
• SmoothMeshUtilizes a simple Laplacian based smoother to attempt to improve mesh quality. Will not move boundary nodes or nodes along block/subdomain boundaries
• SubdomainBoundingBoxChanges the subdomain ID of elements either (XOR) inside or outside the specified box to the specified ID.
• TransformApplies a linear transform to the entire mesh.

## Modules

### Modules/CompressibleNavierStokes

• Navier Stokes App
• CNSActionThis class allows us to have a section of the input file like the following which automatically adds Kernels and AuxKernels for all the required nonlinear and auxiliary variables.

### Modules/IncompressibleNavierStokes

• Navier Stokes App
• INSActionThis class allows us to have a section of the input file for setting up incompressible Navier-Stokes equations.

### Modules/Peridynamics

#### Modules/Peridynamics/Mechanics

##### Modules/Peridynamics/Mechanics/GeneralizedPlaneStrain
• Peridynamics App
• GeneralizedPlaneStrainActionPDClass for setting up the Kernel, ScalarKernel, and UserObject for peridynamic generalized plane strain model

### Modules/PhaseField

#### Modules/PhaseField/Conserved

• Phase Field App
• ConservedActionSet up the variable(s) and the kernels needed for a conserved phase field variable. Note that for a direct solve, the element family and order are overwritten with hermite and third.

#### Modules/PhaseField/DisplacementGradients

• Phase Field App
• DisplacementGradientsActionSet up variables, kernels, and materials for a the displacement gradients and their elastic free energy derivatives for non-split Cahn-Hilliard problems.

#### Modules/PhaseField/EulerAngles2RGB

• Phase Field App
• EulerAngle2RGBActionSet up auxvariables and auxkernels to output Euler angles as RGB values interpolated across inverse pole figure

#### Modules/PhaseField/GrainGrowth

• Phase Field App
• GrainGrowthActionSet up the variable and the kernels needed for a grain growth simulation

#### Modules/PhaseField/MortarPeriodicity

• Phase Field App
• MortarPeriodicActionAdd mortar interfaces, Lagrange multiplier variables, and constraints to implement mortar based periodicity of values or gradients on a MortarPeriodicMesh

#### Modules/PhaseField/Nonconserved

• Phase Field App
• NonconservedActionSet up the variable and the kernels needed for a non-conserved phase field variable

### Modules/TensorMechanics

#### Modules/TensorMechanics/CohesiveZoneMaster

• Tensor Mechanics App
• CohesiveZoneMasterActionAction to create an instance of the cohesive zone model kernel for each displacement component

#### Modules/TensorMechanics/LineElementMaster

• Tensor Mechanics App
• CommonLineElementActionSets up variables, stress divergence kernels and materials required for a static analysis with beam or truss elements. Also sets up aux variables, aux kernels, and consistent or nodal inertia kernels for dynamic analysis with beam elements.
• LineElementActionSets up variables, stress divergence kernels and materials required for a static analysis with beam or truss elements. Also sets up aux variables, aux kernels, and consistent or nodal inertia kernels for dynamic analysis with beam elements.

## MultiApps

• Moose App
• AddMultiAppActionMooseObjectAction for creating objects from sub-blocks within the MultiApps block.
• CentroidMultiAppAutomatically generates Sub-App positions from centroids of elements in the master mesh.
• FullSolveMultiAppPerforms a complete simulation during each execution.
• TransientMultiAppMultiApp for performing coupled simulations with the master and sub-application both progressing in time.
• Stochastic Tools App
• SamplerFullSolveMultiAppCreates a full-solve type sub-application for each row of each Sampler matrix.
• SamplerTransientMultiAppCreates a sub-application for each row of each Sampler matrix.
• Level Set App
• LevelSetReinitializationMultiAppMultiApp capable of performing repeated complete solves for level set reinitialization.

## Outputs

• Moose App
• CommonOutputActionAdds short-cut syntax and common parameters to the Outputs block.
• AddOutputActionAction responsible for creating Output objects.
• CSVOutput for postprocessors, vector postprocessors, and scalar variables using comma seperated values (CSV).
• CheckpointOutput for MOOSE recovery checkpoint files.
• ConsoleObject for screen output.
• ControlOutputOutput for displaying objects and parameters associated with the Control system.
• DOFMapOutput degree-of-freedom (DOF) map.
• ExodusObject for output data in the Exodus II format
• GMVObject for outputting data in the GMV format
• GnuplotOutput for postprocessors and scalar variables in GNU plot format.
• MaterialPropertyDebugOutputDebug output object for displaying material property information.
• NemesisObject for output data in the Nemesis (parallel ExodusII) format.
• PerfGraphOutputControls output of the PerfGraph: the performance log for MOOSE
• SolutionHistoryOutputs the non-linear and linear iteration solve history.
• TecplotObject for outputting data in the Tecplot format
• TopResidualDebugOutputDebug output object for displaying the top contributing residuals.
• VTKOutput data using the Visualization Toolkit (VTK).
• VariableResidualNormsDebugOutputReports the residual norm for each variable.
• XDAObject for outputting data in the XDA/XDR format.
• XDRObject for outputting data in the XDA/XDR format.
• XMLOutputOutput for VectorPostprocessor using XML format.
• Stochastic Tools App
• SurrogateTrainerOutputOutput for trained surrogate model data.
• Geochemistry App
• GeochemicalModelInterrogatorPerforming simple manipulations of and querying a geochemical model
• GeochemistryConsoleOutputOutputs results from a GeochemistryReactor at a particular point

## PorousFlowBasicTHM

• Porous Flow App
• PorousFlowBasicTHMAdds Kernels and fluid-property Materials necessary to simulate a single-phase, single-component fully-saturated flow problem. No upwinding and no mass lumping of the fluid mass are used. The fluid-mass time derivative is close to linear, and is perfectly linear if multiply_by_density=false. These features mean the results may differ slightly from the Unsaturated Action case. To run a simulation you will also need to provide various other Materials for each mesh block, depending on your simulation type, viz: permeability, constant Biot modulus, constant thermal expansion coefficient, porosity, elasticity tensor, strain calculator, stress calculator, matrix internal energy, thermal conductivity, diffusivity

## PorousFlowFullySaturated

• Porous Flow App
• PorousFlowFullySaturatedAdds Kernels and fluid-property Materials necessary to simulate a single-phase fully-saturated flow problem. Full-upwinding of fluid flow is not available in this Action, so the results may differ slightly from the Unsaturated Action. However KT stabilization may be employed for both the fluid and any heat flow. No Kernels for diffusion and dispersion of fluid components are added. To run a simulation you will also need to provide various other Materials for each mesh block, depending on your simulation type, viz: permeability, porosity, elasticity tensor, strain calculator, stress calculator, matrix internal energy, thermal conductivity, diffusivity

## PorousFlowUnsaturated

• Porous Flow App
• PorousFlowUnsaturatedAdds Kernels and fluid-property Materials necessary to simulate a single-phase saturated-unsaturated flow problem. The saturation is computed using van Genuchten's expression. No Kernels for diffusion and dispersion of fluid components are added. To run a simulation you will also need to provide various other Materials for each mesh block, depending on your simulation type, viz: permeability, porosity, elasticity tensor, strain calculator, stress calculator, matrix internal energy, thermal conductivity, diffusivity

## Preconditioning

• Moose App
• SetupPreconditionerAction
• AddFieldSplitAction
• Split
• FDPFinite difference preconditioner (FDP) builds a numerical Jacobian for preconditioning, only use for testing and verification.
• FSP
• PBPPhysics-based preconditioner (PBP) allows individual physics to have their own preconditioner.
• SMPSingle matrix preconditioner (SMP) builds a preconditioner using user defined off-diagonal parts of the Jacobian.
• Contact App
• ContactSplitSplit-based preconditioner that partitions the domain into DOFs directly involved in contact (on contact surfaces) and those that are not

## StochasticTools

• Stochastic Tools App
• StochasticToolsActionAction for performing some common functions for running stochastic simulations.

## ThermalContact

• Heat Conduction App
• ThermalContactActionAction that controls the creation of all of the necessary objects for calculation of Thermal Contact

## TimeDependentReactionSolver

• Geochemistry App
• AddTimeDependentReactionSolverActionAction that sets up a time-dependent equilibrium reaction solver. This creates creates a time-dependent geochemistry solver, and adds AuxVariables corresonding to the molalities, etc

## TimeIndependentReactionSolver

• Geochemistry App
• AddTimeIndependentReactionSolverActionAction that sets up a time-dependent equilibrium reaction solver. This creates creates a time-dependent geochemistry solver, and adds AuxVariables corresonding to the molalities, etc

## XFEM

• XFEMApp
• XFEMActionAction to input general parameters and simulation options for use in XFEM.