ScalarKernels System

Scalar kernels are used to define systems of ordinary differential equations (ODEs), which lack spatial derivatives. These are used in initial value problems, with time as the independent variable: where is the dependent variable, is the steady-state residual function, and is the initial value.

Automatic Differentiation

Scalar kernels have the ability to be implemented with automatic differentiation (AD). While AD is not necessary for systems of ordinary differential equations (ODEs) involving only scalar variables (due to the exact Jacobians offered by ParsedODEKernel, for example), ODEs involving contributions from field variables greatly benefit from AD. For example, an elemental user object may compute an ADReal value from field variable(s) on a domain, which then may be used in a scalar equation.

To create an AD scalar kernel, derive from ADScalarKernel and implement the method computeQpResidual().

warningwarning:AD global indexing required

ADScalarKernel only works with MOOSE configured with global AD indexing (the default).

warningwarning:Using values computed by user objects

As a caution, if using user objects to compute ADReal values, be sure to execute those user objects on NONLINEAR to ensure the derivatives in the ADReal value are populated.

Available Objects

  • Moose App
  • ADScalarTimeDerivativeAdds the time derivative contribution to the residual for a scalar variable.
  • AverageValueConstraintThis class is used to enforce integral of phi with a Lagrange multiplier approach.
  • CoupledODETimeDerivativeResidual contribution of ODE from the time derivative of a coupled variable.
  • NodalEqualValueConstraintConstrain two nodes to have identical values.
  • ODETimeDerivativeReturns the time derivative contribution to the residual for a scalar variable.
  • ParsedODEKernelParsed ODE function kernel.
  • Tensor Mechanics App
  • GeneralizedPlaneStrainGeneralized Plane Strain Scalar Kernel
  • GlobalStrainScalar Kernel to solve for the global strain
  • HomogenizationConstraintScalarKernel

Available Actions