Time for Kernels!
friedmud opened this issue · comments
A Kernel
represents one or more volume integral terms in the weak form of a PDE.
A Kernel
will need to compute residuals... but to help with efficiency there will also be one function that computes residuals and Jacobians at the same time: computeResidualAndJacobian!()
The naive case of this will simply call computeResidual!()
and then call computeJacobian!()
The local, dense, residual/jacobian will be passed into these functions to get filled.
Ultimately: the plan is to use automatic differentiation so that computeResidualAndJacobian()
can simply call computeResidual()
and produce the Jacobian. We'll see!