Evaluating the sensitivity of a scalar-valued objective function Q(ξ) with respect to the control variables,
ξ, at a specific point,
ξ0, can be rephrased as the problem of calculating the derivative
∂Q/∂ξ at
ξ = ξ0. In the context of a multiphysics model,
Q is usually not an explicit expression in the control variables
ξ alone. Rather,
Q(u(ξ), ξ) is also a function of the solution variables
u, which are in turn implicitly functions of
ξ.
The multiphysics problem is a PDE, which after discretization is represented as a system of equations L(u(ξ), ξ) = 0. If the PDE has a unique solution
u = L-1(ξ), the sensitivity problem can be informally rewritten using the chain rule as that of finding
The first and last factors, ∂Q/∂u and
∂L/∂ξ, can be computed directly using symbolic differentiation. The key to evaluating the complete expression lies in noting that the middle factor can be computed as
∂u/∂L = (∂L/∂u)−1 and that
∂L/∂u is the PDE Jacobian at the solution point:
Actually evaluating the inverse of the N-by-
N Jacobian matrix is too expensive. In order to avoid that step, an auxiliary linear problem can be introduced. This can be done in two different ways, each requiring at least one additional linear solution step (see
Forward Sensitivity Methods and
Adjoint Sensitivity Method below).
Assume that the Jacobian
in Equation 2-4 above is incomplete and denote it by

.
To use the forward sensitivity methods, introduce the
N-by-
n matrix of solution sensitivities
using the same Jacobian ∂L/∂u, evaluated at
u(ξ0). Inserting the result into
Equation 2-4, the desired sensitivities can be easily computed as
To use the adjoint sensitivity method, introduce instead the
N-by-1 adjoint solution
u∗, which is defined as
Multiplying this relation from the right with the PDE Jacobian ∂L/∂u and transposing leads to a single linear system of equations